Razmislite o značilnostih dodelitve pravic oddaljenega dostopa do seznama storitev, ki se izvajajo na strežniku s strani uporabnika domene, ki nima lokalnih skrbniških pravic. V bistvu je naloga zagotoviti dostop do oddaljene povezave do vmesnika upravitelja storitvenega nadzora - Vodja nadzora storitev (SCmanager).
Kakšen je problem? Recimo, da želimo, da bi oddaljeni uporabnik / sistem spremljanja lahko poizvedoval o stanju storitev na strežniku. Iz očitnih razlogov ta oddaljeni uporabnik nima skrbniških pravic in lokalnih pravic za prijavo na strežnik.
Ko se poskušate povezati in dobiti seznam storitev na oddaljenem računalniku s konzolo services.msc, uporabnik prejme napako:
Windows ni mogel odpreti podatkovne zbirke upravitelja storitve za ime računalnika
Napaka 5: dostop je zavrnjen.
Če poskusite seznam storitev na oddaljenem strežniku uporabiti s pripomočkom sc.exe, je napaka ta:
C: \ Windows \ system32> sc \\ obts-01 poizvedba
Dostop je zavrnjen.
Možnost dostopa do seznama storitev nadzoruje varnostni deskriptor baze podatkov Service Control Manager, oddaljeni dostop do katerega je bil za uporabnike "Potrjenih uporabnikov" v Windows 2003 SP1 omejen (kar je na splošno logično). Samo člani skupine lokalnih skrbnikov imajo pravice do oddaljenega dostopa do te storitve.
Razmislimo, kako zagotoviti oddaljeni dostop do upravitelja storitev nadzora, da dobite seznam strežniških storitev in možnost pridobitve njihovega statusa za običajne uporabnike (brez skrbniških pravic) na primeru Windows Server 2012 R2.
Trenutna dovoljenja za upravitelja storitev (SCM) lahko pridobite s pomočjo pripomočka sc.exe, z izvajanjem v ukazni vrstici, ki se začne kot skrbnik:
sc sdshow scmanager
Ukaz vrne nekaj takega kot vrstica SDDL:
D: (A;; CC;;; AU) (A; CCLCRPRC;;; IU) (A;; CCLCRPRC;;; SU) (A;; CCLCRPWPRC;;; SY) (A;; KA ;;; BA) (A;; CC;; AC) S: (AU; FA; KA;;; WD) (AU; OIIOFA; GA;;; WD)
V tem primeru je razvidno, da je skupina privzeto pooblaščenih uporabnikov (AU) privzeto dovoljena le za povezavo s SCM, ne pa tudi za anketiranje (LC) storitev. Kopirajte vrstico v okno katerega koli urejevalnika preizkusov.
Naslednji korak je pridobiti SID uporabnika ali skupine, do katere želimo zagotoviti oddaljeni dostop do SCM (Kako pridobiti SID uporabnika po imenu). Na primer dobimo SID AD skupine msk-hd, kot je ta:
Get-ADgroup -Identity 'msk-hd' | izberite SID
SID
---
S-1-5-21-2470146451-3958456388-2988885117-23703978
V urejevalniku besedil v vrstici SDDL morate kopirati blok (A ;;CCLCRPRC ;;;IU) - (IU - pomeni Interaktivni uporabniki)), v kopiranem bloku IU nadomestite s SID uporabnika / skupine in prilepite vrstico pred S:.
V našem primeru imamo naslednjo vrstico:
D: (A;; CC;;; AU) (A; CCLCRPRC;;; IU) (A;; CCLCRPRC;;; SU) (A;; CCLCRPWPRC;;; SY) (A;; KA ;;; BA) (A;; CC;;; AC) (A ;; CCLCRPRC ;;;S-1-5-21-2470146451-3958456388-2988885117-23703978)S: (AU; FA; KA;;; WD) (AU; OIIOFA; GA;;; WD)
Zdaj s pomočjo sc.exe spreminjamo parametre varnostnega deskriptorja Service Control Manager:
sc sdset scmanager „D: (A;; CC;;; AU) (A;; CCLCRPRC;;; IU) (A;; CCLCRPRC;;; SU) (A;; CCLCRPWPRC;;; SY) (A ;; KA;;; BA) (A;; CC;; AC) (A; CCLCRPRC;;; S-1-5-21-2470146451-3958456388-2988885117-23703978) S: (AU; FA; KA ;; ; WD) (AU; OIIOFA; GA;;; WD) "
String [SC] SetServiceObjectSecurity USPEH pravi, da so bile nove varnostne nastavitve uspešno uporabljene, uporabnikom pa smo dali pravice, podobne pravicam lokalno overjenih uporabnikov: SC_MANAGER_CONNECT, SC_MANAGER_ENUMERATE_SERVICE, SC_MANAGER_QUERY_LOCK_STATUS in STANDARD_RIGHTS_READ.
Preverite, ali zdaj oddaljeni uporabnik lahko dobi seznam storitev in njihov status s pomočjo konzole za upravljanje storitev (services.msc) in s poizvedbo sc \\ poizvedba server-name1
Seveda ni pravic za upravljanje tekočih storitev, ker Dostop do vsake storitve nadzoruje posamezen ACL. Za dodelitev uporabniških pravic za zagon / zaustavitev strežniških storitev uporabite navodila iz članka Podeljevanje pravic uporabniku za nadzor (zagon, zaustavitev, ponovni zagon) storitev Windows.
Namig. Pri dodeljevanju pravic SCManagerju, ki ni standarden, se shranijo v vejo HKLM \ SYSTEM \ CurrentControlSet \ Control \ ServiceGroupOrder \ Security. Če je pri generiranju vrstice SDDL prišlo do napake, lahko ponastavite trenutna privzeta dovoljenja, tako da preprosto izbrišete to vejo in znova zaženete.