Oddaljen dostop do WinRM brez skrbniških pravic

Privzeto morate imeti skrbniške pravice za daljinsko povezavo z računalnikom s programom PowerShell (PowerShell Remoting). V tem članku bomo pokazali, kako s pomočjo varnostne skupine, skupinskih pravilnikov in spreminjanja deskriptorja seje PoSh zagotavljati pravice povezave prek PowerShell Remoting (WinRM) za običajne uporabnike brez skrbniških pravic.

Ko poskušate ustvariti sejo PowerShell z oddaljenim računalnikom pod rednim uporabnikom (Enter-PSSession msk-server1), se prikaže napaka pri dostopu:

Enter-PSSession: Povezava z oddaljenim strežnikom msk-server1 ni uspela z naslednjim sporočilom o napaki: Dostop je zavrnjen.

Vsebina:

  • Oddaljeni dostop do WinRM in skupine uporabnikov oddaljenega upravljanja
  • Deskriptor varnostne seje PowerShell
  • Hyper-V Remote Management zahteva tudi pravice WinRM

Oddaljeni dostop do WinRM in skupine uporabnikov oddaljenega upravljanja

Preverite standardna dovoljenja za sejo PoSh:

(Get-PSSessionConfiguration -Name Microsoft.PowerShell) .Dopustitev

Kot vidimo, je dovoljen dostop za naslednje vgrajene skupine:

  • BUILTIN \ Administratorji - AccessAllowed,
  • BUILTIN \ Uporabniki oddaljenega upravljanja - AccessAllowed

Tako, da se lahko uporabnik na daljavo poveže prek WinRM, je dovolj, da je član vgrajene lokalne varnostne skupine skrbnikov oz. Oddaljeni Upravljanje Uporabniki (skupina je ustvarjena v sistemu, začenši s programom PowerShell 4.0, ki je privzeto na voljo v operacijskem sistemu Windows 8 / Windows Server 2012 in novejših). Ta skupina omogoča tudi dostop do virov WMI prek nadzornih protokolov (na primer WS-Management)

Potrebnega uporabnika lahko vključite v skupino s pripenjanjem za upravljanje računalnika:

ali z ukazom:

net localgroup "Uporabniki na daljavo za upravljanje" / dodaj aapetrov2

V primeru, da je treba tak dostop odobriti v mnogih računalnikih, lahko uporabite skupinsko politiko. Če želite to narediti, dodelite GPO potrebnim računalnikom in pravilnik Konfiguracija računalnika -> Nastavitve sistema Windows -> Varnostne nastavitve -> Omejene skupine dodajte nove skupinepri uporabnikih na daljavo vanj vključite račune ali skupine, ki jim je treba omogočiti dostop do WinRM.

Ko je uporabnik vključen v skupino Uporabniki oddaljenega upravljanja, bo lahko ustvaril oddaljeno sejo PowerShell z uporabo Enter-PSSession ali zagnal ukaze z uporabo Invoke-Command. Pravice uporabnikov v tej seji bodo omejene s pravicami na računalniku.

Preverite, ali oddaljena povezava deluje.

Deskriptor varnostne seje PowerShell

Drug način, kako uporabniku hitro dati pravico do uporabe programa PowerShell Remoting, ne da bi ga vključili v lokalno varnostno skupino uporabnikov Remote Management, je spremeniti varnostni deskriptor trenutne seje Microsoft.PowerShell v lokalnem računalniku. Ta metoda vam bo omogočila hitro začasno (do naslednjega ponovnega zagona) posameznim uporabnikom podeliti pravico do daljinske povezave prek PowerShell-a.

Naslednji ukaz odpre seznam trenutnih dovoljenj:

Set-PSSessionConfiguration -Name Microsoft.PowerShell -showSecurityDescriptorUI

V tem pogovornem oknu morate dodati uporabnika ali skupino in mu dodeliti pravice Izvedi (Pokliči).

Po shranjevanju sprememb bo sistem zahteval potrditev za ponovni zagon storitve WinRM.

V primeru, da boste morali samodejno spremeniti varnostni deskriptor (brez GUI), boste najprej morali narediti spremembe ročno in nato pridobiti trenutni deskriptor dostopa v SDDL formatu.

(Get-PSSessionConfiguration -Name "Microsoft.PowerShell"). SecurityDescriptorSDDL

V našem primeru je ukaz vrnil ročaj

O: NSG: BAD: P (A;; GA;;; BA) (A;; GXGR;;; S-1-5-21-2373142251-3438396318-2932294317-23761992) (A;; GA ;;; RM ) S: P (AU; FA; GA;;; WD) (AU; SA; GXGW;;; WD)

Nato lahko uporabite to linijo SDDL za dostop do PowerShell-a na katerem koli drugem strežniku..

$ SDDL = „O: NSG: BAD: P (A;; GA;; BA) (A;; GXGR;; S-1-5-21-2373142251-3438396318-2932294317-23761992) (A ;; GA ;;; RM) S: P (AU; FA; GA;;; WD) (AU; SA; GXGW;;; WD) "
Set-PSSessionConfiguration -Name Microsoft.PowerShell -SecurityDescriptorSddl $ SDDL

Hyper-V Remote Management zahteva tudi pravice WinRM

V sistemu Windows 10 / Windows Server 2016 je bil za oddaljeno povezavo s strežnikom Hyper-V s pomočjo Hyper-V Manager uporabljen protokol PowerShell Remoting. Tako oddaljeni uporabniki, ki niso skrbniki, privzeto ne bodo mogli upravljati strežnika Hyper-V, tudi če imajo dovoljenja v Hyper-V.

Ko se poskušate povezati s strežnikom Hyper-V iz računalnika z operacijskim sistemom Windows 10 pri običajnem uporabniku, se prikaže napaka.

Pri poskusu vzpostavitve povezave s strežnikom »server1« je prišlo do napake. Preverite, ali se izvaja storitev upravljanja navideznega stroja in ali ste pooblaščeni za povezavo s strežnikom.

Če želite omogočiti daljinsko povezavo s konzolo, na enak način dodajte uporabnika Hyper-V v lokalno skupino uporabnikov oddaljenega upravljanja..