Sdílet prostřednictvím


Autorizační pravidla a bezpečnostní funkce Windows PowerShell Web Access

Aktualizováno: 24. června 2013

Platí na: Windows Server 2012 R2, Windows Server 2012

Windows PowerShell Web Access ve Windows Server 2012 R2 a Windows Server 2012 má restriktivní bezpečnostní model. Uživatelé musí mít explicitně povolený přístup, než se mohou přihlásit do brány Windows PowerShell Web Access a používat webovou konzoli Windows PowerShell.

Konfigurace autorizačních pravidel a bezpečnosti lokality

Po instalaci Windows PowerShell Web Access a nastavení brány mohou uživatelé otevřít přihlašovací stránku v prohlížeči, ale nemohou se přihlásit, dokud administrátor Windows PowerShell Web Access uživatelům výslovně neudělí přístup. Řízení přístupu 'Windows PowerShell Web Access' je spravováno pomocí sady CMDLETS Windows PowerShell popsaných v následující tabulce. Neexistuje srovnatelné GUI pro přidávání nebo správu autorizačních pravidel. Viz Windows PowerShell Web Access Cmdlets.

Administrátoři mohou definovat {0-n} autentizační pravidla pro Windows PowerShell Web Access. Výchozí cenný papír je omezující, nikoli povolující; Nulová autentizační pravidla znamenají, že žádní uživatelé nemají přístup k ničemu.

Add-PswaAuthorizationRule a Test-PswaAuthorizationRule ve Windows Server 2012 R2 obsahují parametr Credential, který umožňuje přidávat a testovat autorizační pravidla Windows PowerShell Web Access z vzdáleného počítače nebo z aktivní Windows PowerShell Web Access relace. Stejně jako u jiných Windows PowerShell cmdletů, které mají parametr Credential, můžete jako hodnotu parametru zadat objekt PSCredential. Pro vytvoření objektu PSCredential obsahujícího přihlašovací údaje, které chcete předat vzdálenému počítači, spusťte cmdlet Get-Credential .

Autentizační pravidla Windows PowerShell Web Access jsou povolit . Každé pravidlo definuje povolené spojení mezi uživateli, cílovými počítači a konkrétními konfiguracemi relací Windows PowerShell (také označovanými jako endpointy nebo runspaces) na specifikovaných cílových počítačích. Vysvětlení o runspaces najdete v článku Beginning Use of PowerShell Runspaces

Důležité

Uživatel potřebuje k získání přístupu pouze jedno pravidlo. Pokud má uživatel přístup k jednomu počítači buď s plným jazykovým přístupem, nebo pouze k vzdáleným správcovým příkazům Windows PowerShell, může se z webové konzole přihlásit (nebo přeskočit) na jiné počítače připojené k prvnímu cílovému počítači. Nejbezpečnější způsob konfigurace Windows PowerShell Web Access je povolit uživatelům přístup pouze k omezeným konfiguracím relací, které jim umožňují vykonávat konkrétní úkoly, jež obvykle potřebují vykonávat na dálku.

Cmdlety, na které se odkazuje v Windows PowerShell Web Access Cmdletech , umožňují vytvořit sadu přístupových pravidel, která slouží k autorizaci uživatele na Windows PowerShell Web Access bráně. Pravidla se liší od seznamů řízení přístupu (ACL) na cílovém počítači a poskytují další vrstvu zabezpečení pro přístup na web. Podrobnosti o bezpečnosti jsou popsány v následující části.

Pokud uživatelé nemohou projít žádnou z předchozích bezpečnostních vrstev, obdrží obecnou zprávu "přístup zamítnut" v oknech prohlížeče. Ačkoli bezpečnostní detaily jsou na serveru brány zaznamenávány, koncovým uživatelům nejsou zobrazovány informace o tom, kolik bezpečnostních vrstev prošli, ani na které vrstvě došlo k selhání přihlášení či autentizace.

Pro více informací o konfiguraci autorizačních pravidel viz Konfigurace autorizačních pravidel v tomto tématu.

Zabezpečení

Bezpečnostní model Windows PowerShell Web Access má čtyři vrstvy mezi koncovým uživatelem webové konzole a cílovým počítačem. Správci Windows PowerShell Web Access mohou přidávat bezpečnostní vrstvy prostřednictvím další konfigurace v konzoli IIS Manager. Pro více informací o zabezpečení webových stránek v konzoli IIS Manager viz Configure Web Server Security (IIS7).

Pro více informací o nejlepších postupech IIS a prevenci útoků typu denial-of-service viz Nejlepší postupy pro prevenci útoků DoS/Denial of Service. Administrátor si také může zakoupit a nainstalovat další maloobchodní autentizační software.

Následující tabulka popisuje čtyři vrstvy zabezpečení mezi koncovými uživateli a cílovými počítači.

Úroveň Vrstva
1 Bezpečnostní funkce webového serveru IIS.
2 Windows Powershell Web Access Forms Gateway autentizace založená
3 Pravidla autorizace webového přístupu Windows Powershell
4 Pravidla pro autentizaci a autorizaci cíle

Podrobné informace o každé vrstvě lze nalézt pod následujícími nadpisy:

Bezpečnostní funkce webového serveru IIS

Uživatelé Windows PowerShell Web Access musí vždy zadat uživatelské jméno a heslo pro ověření svých účtů na bráně. Správci Windows PowerShell Web Access však mohou také zapnout nebo vypnout volitelnou autentizaci klientských certifikátů, viz instalace a použít Windows PowerShell Web Access k povolení testovacího certifikátu a později také návod, jak nastavit originální certifikát).

Volitelné funkce klientského certifikátu vyžaduje, aby koncoví uživatelé měli platný klientský certifikát kromě uživatelských jmen a hesel, a je součástí konfigurace webového serveru (IIS). Když je generační vrstva klientských certifikátů povolena, přihlašovací stránka Windows PowerShell Web Access vyzývá uživatele, aby před vyhodnocením přihlašovacích údajů poskytli platné certifikáty. Ověření klientského certifikátu automaticky kontroluje klientský certifikát. Pokud není nalezen platný certifikát, Windows PowerShell Web Access informuje uživatele, aby mohli certifikát poskytnout. Pokud je nalezen platný klientský certifikát, Windows PowerShell Web Access otevře přihlašovací stránku, kde uživatelé mohou zadat svá uživatelská jména a hesla.

Toto je jeden příklad dalších bezpečnostních nastavení, která IIS Web Server nabízí. Pro více informací o dalších bezpečnostních funkcích IIS viz Configure Web Server Security (IIS 7).

Autentizace brány založená na formulářích Windows PowerShell Web Access

Přihlašovací stránka Windows PowerShell Web Access vyžaduje sadu přihlašovacích údajů (uživatelské jméno a heslo) a nabízí uživatelům možnost zadat různé přihlašovací údaje pro cílový počítač. Pokud uživatel neposkytne alternativní přihlašovací údaje, primární uživatelské jméno a heslo, které se používají k připojení k bráně, se také použijí k připojení k cílovému počítači.

Požadované přihlašovací údaje jsou autentizovány na Windows PowerShell Web Access bráně. Tyto přihlašovací údaje musí být platné uživatelské účty buď na lokálním Windows PowerShell Web Access gateway serveru, nebo v Active Directory.

Autorizační pravidla Windows PowerShell Web Access

Po autentizaci uživatele na bráně kontroluje Windows PowerShell Web Access autorizační pravidla, aby ověřil, zda má uživatel přístup k požadovanému cílovému počítači. Po úspěšném autorizování jsou uživatelské přihlašovací údaje předány cílovému počítači.

Tato pravidla jsou vyhodnocována pouze poté, co je uživatel autentizován branou a před tím, než může být uživatel autentizován na cílovém počítači.

Pravidla pro autentizaci a autorizaci cíle

Poslední vrstvou zabezpečení pro Windows PowerShell Web Access je bezpečnostní konfigurace cílového počítače. Uživatelé musí mít na cílovém počítači nastavená příslušná přístupová práva a také v autorizačních pravidlech Windows PowerShell Web Access, aby mohli provozovat webovou konzoli Windows PowerShell, která ovlivňuje cílový počítač prostřednictvím Windows PowerShell Web Access.

Tato vrstva nabízí stejné bezpečnostní mechanismy, které by vyhodnocovaly pokusy o připojení, pokud by se uživatelé pokusili vytvořit vzdálenou relaci Windows PowerShell na cílový počítač přímo v rámci Windows PowerShell spuštěním cmdletů Enter-PSSession nebo New-PSSession .

Ve výchozím nastavení používá Windows PowerShell Web Access primární uživatelské jméno a heslo pro autentizaci jak na bráně, tak na cílovém počítači. Webová přihlašovací stránka v sekci s názvem Volitelné nastavení připojení nabízí uživatelům možnost zadat různé přihlašovací údaje pro cílový počítač, pokud jsou vyžadovány. Pokud uživatel neposkytne alternativní přihlašovací údaje, primární uživatelské jméno a heslo, které se používají k připojení k bráně, se také použijí k připojení k cílovému počítači.

Autorizační pravidla lze použít k umožnění přístupu uživatelům ke konkrétní konfiguraci relace. Můžete vytvářet omezené runspaces nebo konfigurace relací pro Windows PowerShell Web Access a povolit konkrétním uživatelům připojit se pouze ke specifickým konfiguracím relací, když se přihlásí do Windows PowerShell Web Access. Můžete použít seznamy řízení přístupu (ACL) k určení, kteří uživatelé mají přístup ke konkrétním endpointům, a dále omezit přístup k tomuto bodu pro konkrétní skupinu uživatelů pomocí autorizačních pravidel popsaných v této části. Pro více informací o omezených runspaces viz Vytvoření omezeného runspace.

Konfigurace autorizačních pravidel

Administrátoři pravděpodobně chtějí stejné autorizační pravidlo pro uživatele Windows PowerShell Web Access, které je již definováno v jejich prostředí pro vzdálenou správu Windows PowerShell. První postup v této části popisuje, jak přidat bezpečné autorizační pravidlo, které uděluje přístup jednomu uživateli, přihlášení pro správu jednoho počítače a v rámci jedné relace konfigurace. Druhý postup popisuje, jak odstranit autorizační pravidlo, které již není potřeba.

Pokud plánujete použít vlastní konfigurace relací, které umožní konkrétním uživatelům pracovat pouze v omezených runspaces ve Windows PowerShell Web Access, vytvořte si vlastní konfigurace relace ještě před přidáním autorizačních pravidel, která se na ně vztahují. Nemůžete použít CMDLETS Windows PowerShell Web Access k vytváření vlastních konfigurací relací. Pro více informací o vytváření vlastních konfigurací relace viz about_Session_Configuration_Files.

Windows PowerShell Web Access cmdlety podporují jeden zástupný znak, hvězdičku ( * ). Znaky s divokými kartami v řetězcích nejsou podporovány; Používejte jednu hvězdičku na každou vlastnost (uživatelé, počítače nebo konfigurace relací).

Poznámka:

Pro více způsobů, jak můžete použít autorizační pravidla k udělení přístupu uživatelům a pomoci s ochranou prostředí Windows PowerShell Web Access, viz další příklady scénářů autorizačních pravidel v tomto tématu.

Přidání omezujícího pravidla autorizace

  1. Pokud chcete otevřít relaci Windows PowerShellu se zvýšenými uživatelskými právy, udělejte jednu z následujících věcí.

    • Na ploše Windows klikněte pravým tlačítkem na Windows PowerShell na hlavním panelu a potom klikněte na Spustit jako správce.

    • Na startovací obrazovce Windows klikněte pravým tlačítkem na Windows PowerShell a poté klikněte na Spustit jako správce.

  2. Volitelný krok Pro omezení přístupu uživatelů pomocí relačních konfigurací:

    Ověřte, že konfigurace relací, které chcete použít, už existují ve vašich pravidlech.

    Pokud ještě nebyly vytvořeny, použijte instrukce pro vytvoření konfigurací relace v about_Session_Configuration_Files.

  3. Toto autorizační pravidlo umožňuje konkrétnímu uživateli přístup k jednomu počítači v síti, ke kterému má obvykle přístup, s přístupem ke specifické konfiguraci relace přizpůsobené typickým potřebám uživatele v oblasti skriptování a cmdletů. Zadejte následující příkaz a stiskněte Enter.

    Add-PswaAuthorizationRule -UserName <domain\user | computer\user> `
       -ComputerName <computer_name> -ConfigurationName <session_configuration_name>
    
    • V následujícím příkladu má uživatel jménem JSmith v doméně Contoso přístup ke správě počítačové Contoso_214 a používá konfiguraci relace nazvanou NewAdminsOnly.
    Add-PswaAuthorizationRule -UserName 'Contoso\JSmith' `
       -ComputerName Contoso_214 -ConfigurationName NewAdminsOnly
    
  4. Ověřte, že pravidlo bylo vytvořeno, spuštěním buď cmdletu Get-PswaAuthorizationRule , nebo Test-PswaAuthorizationRule -UserName <domain\user | computer\user> -ComputerName** <computer_name>. Například: Test-PswaAuthorizationRule -UserName Contoso\\JSmith -ComputerName Contoso_214.

Odstranění autorizačního pravidla

  1. Pokud není Windows PowerShell relace již otevřená, viz krok 1 pro přidání omezujícího autorizačního pravidla v této sekci.

  2. Zadejte následující a stiskněte Enter, kde ID pravidla představuje jedinečné ID pravidla, které chcete odstranit.

    Remove-PswaAuthorizationRule -ID <rule ID>
    

    Alternativně, pokud neznáte ID číslo, ale znáte přátelský název pravidla, které chcete odstranit, můžete získat název pravidla a poslat ho do cmdletu Remove-PswaAuthorizationRule , abyste pravidlo odstranili, jak je ukázáno v následujícím příkladu:

    Get-PswaAuthorizationRule `
       -RuleName <rule-name> | Remove-PswaAuthorizationRule
    

Poznámka:

Nejste vyzváni k potvrzení, zda chcete smazat specifikované autorizační pravidlo; pravidlo se smaže, když stisknete Enter. Ujistěte se, že chcete před spuštěním Remove-PswaAuthorizationRule cmdletu odstranit pravidlo autorizace.

Další příklady scénářů autorizačních pravidel

Každá relace Windows PowerShell používá konfiguraci relace; pokud není pro relaci specifikována, Windows PowerShell používá výchozí, vestavěnou konfiguraci relace Windows PowerShell, nazývanou Microsoft.PowerShell. Výchozí konfigurace relace zahrnuje všechny cmdlety dostupné na počítači. Administrátoři mohou omezit přístup ke všem počítačům definováním konfigurace relace s omezeným runspace (omezený rozsah cmdletů a úkolů, které mohou jejich koncoví uživatelé vykonávat). Uživatel, kterému je povolen přístup k jednomu počítači s plným jazykovým přístupem, nebo pouze s vzdálenými správcovskými příkazy Windows PowerShell, se může připojit k dalším počítačům, které jsou připojeny k prvnímu počítači. Definování omezeného runspace může zabránit uživatelům v přístupu k jiným počítačům z povoleného Windows PowerShell runspace a zároveň zlepšit bezpečnost vašeho prostředí Windows PowerShell Web Access. Konfigurace relace může být distribuována (pomocí skupinové politiky) na všechny počítače, které chtějí správci zpřístupnit prostřednictvím Windows PowerShell Web Access. Další informace o konfiguracích relací najdete v tématu about_Session_Configurations. Následují některé příklady tohoto scénáře.

  • Administrátor vytvoří koncový bod nazvaný PswaEndpoint s omezeným runspace. Poté správce vytvoří pravidlo *,*,PswaEndpoint, a distribuuje koncový bod dalším počítačům. Pravidlo umožňuje všem uživatelům přistupovat ke všem počítačům s koncovým PswaEndpointem. Pokud je toto jediné autorizační pravidlo definované v pravidlové sadě, počítače bez tohoto koncového bodu by nebyly přístupné.

  • Administrátor vytvořil koncový bod s omezeným runspace nazvaným PswaEndpoint a chce omezit přístup na konkrétní uživatele. Správce vytvoří skupinu uživatelů nazvanou Level1Support a definuje následující pravidlo: Level1Support,*,PswaEndpoint. Pravidlo umožňuje všem uživatelům ve skupině Level1Support přístup ke všem počítačům s konfigurací PswaEndpoint . Podobně může být přístup omezen na konkrétní skupinu počítačů.

  • Někteří správci poskytují určitým uživatelům více přístupu než jiní. Například administrátor vytváří dvě uživatelské skupiny, Admins a BasicSupport. Správce také vytváří koncový bod s omezeným runspace nazvaným PswaEndpoint a definuje následující dvě pravidla: Admins,*,* a BasicSupport,*,PswaEndpoint. První pravidlo poskytuje všem uživatelům ve skupině Admin přístup ke všem počítačům a druhé pravidlo poskytuje všem uživatelům ve skupině BasicSupport přístup pouze k těm počítačům s PswaEndpoint.

  • Správce nastavil soukromé testovací prostředí a chce umožnit všem autorizovaným uživatelům sítě přístup ke všem počítačům v síti, ke kterým obvykle mají přístup, s přístupem ke všem konfiguracím relací, ke kterým obvykle mají přístup. Protože se jedná o soukromé testovací prostředí, správce vytváří autorizační pravidlo, které není bezpečné. - Administrátor spouští cmdlet Add-PswaAuthorizationRule * * *, který používá zástupný znak * k reprezentaci všech uživatelů, všech počítačů a všech konfigurací. - Toto pravidlo je ekvivalentní následujícímu: Add-PswaAuthorizationRule -UserName * -ComputerName * -ConfigurationName *.

    Poznámka:

    Toto pravidlo se nedoporučuje v bezpečném prostředí a obchází vrstvu autorizačních pravidel zabezpečení, kterou poskytuje Windows PowerShell Web Access.

  • Správce musí uživatelům umožnit připojení k cílovým počítačům v prostředí, které zahrnuje jak pracovní skupiny, tak domény, kde se pracovní skupinové počítače občas používají k připojení k cílovým počítačům v doménách a počítače v doménách se občas používají k připojení k cílovým počítačům v pracovních skupinách. Správce má v pracovní skupině bránový server PswaServer; a cílový počítačový srv1.contoso.com je v doméně. Uživatel Chris je autorizovaný lokální uživatel jak na serveru brány pracovní skupiny, tak na cílovém počítači. Jeho uživatelské jméno na serveru pracovní skupiny je chrisLocal; A jeho uživatelské jméno na cílovém počítači je Contoso\Chris. Pro autorizaci přístupu k srv1.contoso.com pro Chrise administrátor přidává následující pravidlo.

Add-PswaAuthorizationRule -userName PswaServer\chrisLocal `
   -computerName srv1.contoso.com -configurationName Microsoft.PowerShell

Předchozí příklad pravidla autentizuje Chrise na gateway serveru a poté autorizuje jeho přístup k srv1. Na přihlašovací stránce musí Chris zadat druhou sadu přihlašovacích údajů v oblasti Optional connection settings (contoso\chris). Gateway server používá dodatečnou sadu přihlašovacích údajů k autentizaci na cílovém počítači, srv1.contoso.com.

V předchozím scénáři Windows PowerShell Web Access navazuje úspěšné spojení s cílovým počítačem až poté, co bylo následující úspěšné a povoleno alespoň jedním autorizačním pravidlem.

  1. Autentizace na serveru brány pracovní skupiny přidáním uživatelského jména ve formátu server_name\user_name k autorizačnímu pravidlu

  2. Autentizace na cílovém počítači pomocí alternativních přihlašovacích údajů uvedených na přihlašovací stránce v oblasti volitelných nastavení připojení

    Poznámka:

    Pokud jsou brány a cílové počítače v různých pracovních skupinách nebo doménách, musí být navázána důvěra mezi dvěma počítači pracovní skupiny, oběma doménami nebo mezi pracovní skupinou a doménou. Tento vztah nelze nastavit pomocí autorizačních pravidel Windows PowerShell Web Access. Autorizační pravidla nedefinují důvěrný vztah mezi počítači; Mohou uživatelům povolit pouze připojení ke konkrétním cílovým počítačům a konfiguracím relací. Pro více informací o tom, jak nastavit vztah důvěry mezi různými doménami, viz Vytváření doménových a lesních trustů. Pro více informací o tom, jak přidat pracovní skupinové počítače do seznamu důvěryhodných hostitelů, viz Vzdálená správa se Správcem serverů.

Použití jedné sady autorizačních pravidel pro více lokalit

Autorizační pravidla jsou uložena v XML souboru. Ve výchozím nastavení je název cesty XML souboru .$env:windir\Web\PowershellWebAccess\data\AuthorizationRules.xml

Cesta k XML souboru autorizačních pravidel je uložena v souboru powwa.config, který se nachází v .$env:windir\Web\PowershellWebAccess\data Správce má flexibilitu změnit odkaz na výchozí cestu powwa.config podle svých preferencí nebo požadavků. Umožnění administrátorovi změnit umístění souboru umožňuje více Windows PowerShell Web Access bran používat stejná autorizační pravidla, pokud je taková konfigurace žádoucí.

Správa relací

Ve výchozím nastavení omezuje Windows PowerShell Web Access uživatele na tři relace najednou. V IIS Manageru můžete upravit web.config soubor webové aplikace tak, aby podporoval různý počet relací na uživatele. Cesta k souboru web.config je .$env:windir\Web\PowerShellWebAccess\wwwroot\Web.config

Ve výchozím nastavení je IIS Web Server nastaven tak, aby restartoval aplikační pool, pokud jsou jakékoliv úpravy nastavena. Například aplikační pool se restartuje, pokud dojde ke změnám v souboru web.config . >Protože Windows PowerShell Web Access používá stavy relací v paměti, >uživatelé přihlášení do relací Windows PowerShell Web Access ztrácejí své relace při restartu aplikačního poolu.

Nastavení výchozích parametrů na přihlašovací stránce

Pokud vaše Windows PowerShell Web Access brána běží na Windows Server 2012 R2, můžete nastavit výchozí hodnoty pro nastavení zobrazená na přihlašovací stránce Windows PowerShell Web Access. Hodnoty můžete nastavit v web.config souboru, který je popsán v předchozím odstavci. Výchozí hodnoty nastavení přihlašovací stránky najdete v sekci appSettings v souboru web.config; Následuje příklad sekce appSettings . Platné hodnoty pro mnoho těchto nastavení jsou stejné jako hodnoty odpovídajících parametrů v New-PSSession cmdletu ve Windows PowerShell.

Například klíč, defaultApplicationName jak je ukázáno v následujícím kódovém bloku, je hodnota $PSSessionApplicationName preferenční proměnné na cílovém počítači.

  <appSettings>
      <add key="maxSessionsAllowedPerUser" value="3"/>
      <add key="defaultPortNumber" value="5985"/>
      <add key="defaultSSLPortNumber" value="5986"/>
      <add key="defaultApplicationName" value="WSMAN"/>
      <add key="defaultUseSslSelection" value="0"/>
      <add key="defaultAuthenticationType" value="0"/>
      <add key="defaultAllowRedirection" value="0"/>
      <add key="defaultConfigurationName" value="Microsoft.PowerShell"/>
  </appSettings>

Časové limity a neplánované odpojení

Windows PowerShell Web Access vyprší čas. V Windows PowerShell Web Access běžícím na Windows Server 2012 se po 15 minutách neaktivity relace zobrazí přihlášeným uživatelům zpráva o vypršení času. Pokud uživatel neodpoví do pěti minut po zobrazení zprávy o vypršení času, relace je ukončena a uživatel je odhlášen. Časové limity sezení můžete změnit v nastavení webu v IIS Manageru.

V Windows PowerShell Web Access běžícím na Windows Server 2012 R2 se relace ve výchozím nastavení vypíná po 20 minutách nečinnosti. Pokud jsou uživatelé odpojeni od relací v webové konzoli kvůli chybám sítě nebo jiným neplánovaným vypnutím či selháním, a ne proto, že by sami relace uzavřeli, relace Windows PowerShell Web Access pokračují v provozu připojené k cílovým počítačům, dokud časová doba na straně klienta nevyprší. Reze je ukončena buď po výchozích 20 minutách, nebo po uplynutí časové lhůty stanovené správcem brány, podle toho, co je kratší.

Pokud server brány běží na Windows Server 2012 R2, Windows PowerShell Web Access umožňuje uživatelům připojit se k uloženým relacím později, ale pokud síťové chyby, neplánované vypnutí nebo jiné selhání odpojí relace, uživatelé nemohou vidět ani se znovu připojit k uloženým relacím až po uplynutí časové lhůty stanovené správcem brány.

Viz také

Instalace a používání Windows PowerShell Web Access

o_konfiguraci_relací

Windows PowerShell Web Access Cmdlets