Osvědčené postupy pro PowerShell Microsoft Entra

V tomto článku se dozvíte, jak implementovat Microsoft Entra osvědčené postupy PowerShellu, mezi které patří registrace aplikací, vylepšení zabezpečení, optimalizace výkonu a strategie údržby.

Pochopení těchto postupů je zásadní pro minimalizaci bezpečnostních rizik, optimalizaci výkonu a udržování systémů v aktuálním stavu. Je nezbytné chránit citlivá data a zajistit hladký provoz v jakékoli organizaci.

Registrace aplikace místo použití podnikové aplikace

Můžete zaregistrovat vlastní aplikace přizpůsobené různým případům použití s konkrétními oprávněními, například pro marketingové týmy nebo týmy helpdesku. Tento přístup umožňuje podrobnější správu oprávnění a minimalizuje dopad na zabezpečení v případě ohrožení aplikace. Pokud chcete vytvořit zaregistrovanou aplikaci, přečtěte si téma Vytvoření vlastní aplikace.

Přihlaste se pomocí aplikace, kterou zaregistrujete, spuštěním následujícího příkazu:

Connect-Entra -ClientId <your-custom-app-id> -TenantId <your-tenant-id>

Můžete také použít aliasy AppId nebo ApplicationId místo ClientId.

Zabezpečení

Pokud chcete zvýšit zabezpečení, použijte ve své aplikaci následující osvědčené postupy pro vyjádření souhlasu a autorizace:

  • Použít nejnižší oprávnění: Udělte uživatelům a aplikacím pouze nejnižší privilegované oprávnění, které vyžadují k volání Microsoft Entra prostředku. Zvolte nejméně privilegovaná oprávnění. Pokud například aplikace čte pouze profil aktuálně přihlášeného uživatele, udělte oprávnění User.Read místo User.ReadBasic.All. Úplný seznam oprávnění najdete v referenčních informacích k oprávněním.

  • Použít Disconnect-Entra: Vždy spusťte Disconnect-Entra a odeberte všechny přihlašovací údaje a kontexty přidružené k účtu. Tento cmdlet správně vyčistí a uzavře připojení, jakmile již nejsou potřeba. Snižuje riziko neoprávněného přístupu, pokud je relace otevřená nebo někdo jiný přistupuje k prostředí PowerShellu.

  • Použijte správný typ oprávnění na základě scénářů: Vyhněte se použití aplikací i delegovaných oprávnění ve stejné aplikaci. Pokud vytváříte interaktivní aplikaci, ve které je přihlášený uživatel, měla by vaše aplikace používat delegovaná oprávnění. Pokud se ale vaše aplikace spustí bez přihlášeného uživatele, například služby na pozadí nebo démona, měla by vaše aplikace používat oprávnění aplikace.

  • Pečlivě zvažte oprávnění aplikací: Vyhněte se používání oprávnění aplikací v interaktivních scénářích, abyste předešli bezpečnostním rizikům a rizikům v oblasti dodržování předpisů, protože jejich použití může neúmyslně rozšířit oprávnění uživatele a obejít zásady správce.

  • Při konfiguraci aplikace buďte promyšlení: Konfigurace ovlivňuje prostředí koncových uživatelů a správců spolu s přechodem na aplikace a zabezpečením. Příklad:

    • Název, logo vaší aplikace, doména, stav ověření vydavatele, prohlášení o zásadách ochrany osobních údajů a podmínky použití se zobrazí v souhlasu a dalších prostředích. Nakonfigurujte tato nastavení pečlivě, aby je koncoví uživatelé pochopili.
    • Zvažte, kdo souhlasí s vaší aplikací – koncovými uživateli nebo správci – a nakonfigurujte aplikaci tak, aby příslušně požadovala oprávnění.
    • Ujistěte se, že rozumíte rozdílu mezi statickým, dynamickým a přírůstkovým souhlasem.
  • Dávejte pozor na postupné rozšiřování oprávnění – sledujte oprávnění, která se u registrované aplikace v průběhu času postupně hromadí.

  • Využívejte výchozí nastavení zabezpečení a podmíněný přístup – chraňte uživatele pomocí vícefaktorového ověřování Microsoft Entra prostřednictvím podmíněného přístupu (pro licencované organizace) a výchozího nastavení zabezpečení (pro nelicencované organizace).

  • Využijte doporučení Microsoft Entra - Funkce doporučení Microsoft Entra pečlivě sleduje stav vašeho tenantu a zajišťuje, aby zůstal zabezpečený a v dobrém stavu. Máte přehled o používaných aplikacích, vypršení platnosti přihlašovacích údajů, více privilegovaných aplikacích mimo jiné.

  • Omezit přihlášení aplikace jenom na přiřazené identityAssignment Required Tato vlastnost pomáhá spravovat přístup k aplikacím tím, že zajišťuje, aby se mohli přihlásit jenom přiřazení uživatelé.

Connect-Entra -Scopes 'Application.ReadWrite.All'
Get-EntraServicePrincipal -Filter "DisplayName eq 'Contoso Demo App'" | Set-EntraServicePrincipal -AppRoleAssignmentRequired $true

Optimalizace výkonu

Následující postupy vám pomůžou optimalizovat výkon při práci s Microsoft Entra PowerShellu:

Použití filtru

Filtrování se provádí na serveru tak, že omezíte výběr tak, aby se načetla podmnožina kolekce, což pomáhá snížit nepotřebný síťový provoz a zpracování dat.

Get-EntraUser -Filter "startsWith(DisplayName,'Ada')"

Výběr pouze požadovaných vlastností

Výběrem požadovaných vlastností pomocí parametru -Property získáte pouze požadované vlastnosti.

Definování velikosti stránky

U požadavků, které vracejí mnoho objektů, zvyšte velikost stránky na maximální hodnotu 999 pomocí -top parametru.

Get-EntraUser -All -Top 999

Maintenance

Použijte následující osvědčené postupy údržby, abyste zajistili, že modul a skripty PowerShellu Microsoft Entra budou aktuální a fungují optimálně:

Udržujte modul Microsoft Entra PowerShell aktuální

Udržování modulu v aktualizovaném stavu je zásadní z několika důvodů. Za prvé vám umožní využívat nejnovější funkce a vylepšení a zajistit tak přístup k nejaktuálnějším rutinám a funkcím. Důležitější je, že pravidelné aktualizace zlepšují stav zabezpečení. Náš tým konzistentně implementuje opravy zabezpečení a opravy, které pomáhají chránit vaše systémy před ohroženími zabezpečení.

Tip

Pokud používáte Microsoft Entra PowerShell s Azure Automation, aktualizujte moduly PowerShellu i v účtech Azure Automation.

Update-Module -Name Microsoft.Entra

Po aktualizaci modulu odeberte starší verze.

Použití Get-Help

Get-Help poskytuje komplexní dokumentaci přímo na příkazovém řádku. Nabízí podrobné informace o Microsoft Entra rutinách, funkcích, skriptech a konceptech PowerShellu, včetně příkladů použití, akceptovaných parametrů a výstupu. Get-Help podporuje efektivní skriptování a pomáhá vyhnout se běžným chybám.

Get-Help Get-EntraUser -Detailed

Použijte možnost ladění.

-Debugpomáhá při řešení potíží tím, že poskytuje podrobné diagnostické informace při práci s Microsoft Entra PowerShellem. Může vám pomoct přesně pochopit, jak vaše skripty fungují a kde můžou během fáze vývoje a testování nastat případné problémy.

Get-EntraUser -Top 1 -Debug

Pro odeslání ladicího výstupního proudu do souboru protokolu použijte:

Get-EntraUser -Top 1 -Debug 5>> <your-log-filepath>
  • 5- představuje číslo datového proudu . Debug Stream Další informace o datových proudech najdete v tématu Výstupní streamy.
  • >> - představuje operátor přesměrování. Další informace o operátorech přesměrování naleznete v tématu Operátory přesměrování.