Podrobné informace o zabezpečení předávacího ověřování Microsoft Entra

Tento článek obsahuje podrobnější popis fungování předávacího ověřování Microsoft Entra. Zaměřuje se na aspekty zabezpečení funkce. Tento článek je určený pro správce zabezpečení a IT, vedoucí pracovníky pro dodržování předpisů a zabezpečení a další odborníky v oblasti IT, kteří zodpovídají za zabezpečení a dodržování předpisů v organizacích nebo podnicích libovolné velikosti.

Mezi témata, která jsou určená, patří:

  • Podrobné technické informace o instalaci a registraci ověřovacích agentů
  • Podrobné technické informace o šifrování hesel při přihlašování uživatele
  • Zabezpečení kanálů mezi místními agenty ověřování a ID Microsoft Entra.
  • Podrobné technické informace o tom, jak udržovat agenty ověřování v provozu.

Možnosti zabezpečení předávacího ověřovacího klíče

Předávací ověřování má tyto klíčové možnosti zabezpečení:

  • Je založená na zabezpečené víceklientské architektuře, která poskytuje izolaci žádostí o přihlášení mezi tenanty.
  • Místní hesla se nikdy neukládají v cloudu v žádné podobě.
  • Místní agenti ověřování, kteří naslouchají požadavkům na ověření hesla a reagují na ně, provádějí odchozí připojení jenom z vaší sítě. Tyto ověřovací agenty není nutné instalovat do hraniční sítě (označované také jako DMZ, demilitarizovaná zóna a monitorovaná podsíť). Osvědčeným postupem je považovat všechny servery se spuštěnými agenty ověřování jako systémy vrstvy 0 (viz referenční informace).
  • Pro odchozí komunikaci z ověřovacích agentů do Microsoft Entra ID se používají jenom standardní porty (port 80 a port 443). V bráně firewall nemusíte otevírat příchozí porty.
  • Port 443 se používá pro veškerou ověřenou odchozí komunikaci.
  • Port 80 se používá jenom ke stahování seznamů odvolaných certifikátů (CRL), aby se zajistilo, že nebyla odvolána žádná z certifikátů, které tato funkce používá.
  • Úplný seznam požadavků na síť najdete v rychlém startu předávacího ověřování Microsoft Entra.
  • Hesla, která uživatelé zadají během přihlašování, se šifrují v cloudu předtím, než je místní ověřovací agenti přijmou k ověření ve službě Windows Server Active Directory (Windows Server AD).
  • Kanál HTTPS mezi Microsoft Entra ID a místním ověřovacím agentem je zabezpečený pomocí vzájemného ověřování.
  • Předávací ověřování chrání vaše uživatelské účty bezproblémovou prací se zásadami podmíněného přístupu Microsoft Entra, včetně vícefaktorového ověřování (MFA), blokováním starší verze ověřování a filtrováním útoků hrubou silou hesla.

Komponenty zapojené do předávacího ověřování

Obecné podrobnosti o provozním zabezpečení, službě a zabezpečení dat pro ID Microsoft Entra najdete v Centru zabezpečení. Při použití předávacího ověřování pro přihlašování uživatele se používají následující komponenty:

  • Služba tokenů zabezpečení Microsoft Entra (Microsoft Entra STS):: Bezstavová služba tokenů zabezpečení, která zpracovává žádosti o přihlášení a vydává tokeny zabezpečení pro uživatelské prohlížeče, klienty nebo služby podle potřeby.
  • Azure Service Bus: Poskytuje cloudovou komunikaci s podnikovým zasíláním zpráv a předáváním, která pomáhá propojit místní řešení s cloudem.
  • Microsoft Entra Connect Authentication Agent: Místní komponenta, která naslouchá žádostem o ověření hesla a odpovídá na ně.
  • Azure SQL Database: Obsahuje informace o agentech ověřování vašeho tenanta, včetně jejich metadat a šifrovacích klíčů.
  • Windows Server AD: Místní služba Active Directory, kde jsou uložené uživatelské účty a jejich hesla.

Instalace a registrace agentů ověřování

Agenti ověřování se instalují a registrují s ID Microsoft Entra, když provedete jednu z následujících akcí:

Provoz ověřovacího agenta zahrnuje tři hlavní fáze:

  • Instalace
  • Registrace
  • Inicializace

Tyto fáze jsou podrobně popsány v následujících částech.

Instalace ověřovacího agenta

Na místní server může nainstalovat ověřovacího agenta (pomocí služby Microsoft Entra Connect nebo samostatné instance) pouze účet správce hybridní identity.

Instalace přidá do seznamu v nástroji Ovládací panely> Programs>Programs and Features dvě nové položky:

  • Samotná aplikace ověřovacího agenta. Tato aplikace běží s oprávněními NetworkService .
  • Aplikace Updater, která se používá k automatické aktualizaci ověřovacího agenta. Tato aplikace běží s oprávněními LocalSystem .

Důležitý

Z hlediska zabezpečení by správci měli se serverem, na kterém běží předávací ověřovací agent, považovat za řadič domény. Servery agenta předávacího ověřování by měly být posíleny, jak je uvedeno v části Zabezpečené řadiče domény proti útoku.

Registrace agenta ověřování

Po instalaci ověřovacího agenta se zaregistruje v Microsoft Entra ID. Microsoft Entra ID přiřadí každému ověřovacímu agentu jedinečný certifikát digitální identity, který může použít pro zabezpečenou komunikaci s Microsoft Entra ID.

Postup registrace také vytvoří vazbu ověřovacího agenta s vaším tenantem. Pak Microsoft Entra ID ví, že tento konkrétní ověřovací agent je jediný, který má oprávnění zpracovávat žádosti o ověření hesla pro vašeho tenanta. Tento postup se opakuje pro každého nového ověřovacího agenta, kterého zaregistrujete.

Agenti ověřování se zaregistrují pomocí následujícího postupu s ID Microsoft Entra:

Diagram znázorňující registraci agenta ověřování ve službě Azure AD

  1. Microsoft Entra nejprve požádá, aby se správce hybridní identity přihlásil k ID Microsoft Entra pomocí svých přihlašovacích údajů. Během přihlašování získá ověřovací agent přístupový token, který může používat jménem uživatele.

  2. Ověřovací agent pak vygeneruje pár klíčů: veřejný klíč a privátní klíč.

    • Pár klíčů se generuje prostřednictvím standardního 2 048bitového šifrování RSA.
    • Privátní klíč zůstane na místním serveru, kde se nachází ověřovací agent.
  3. Ověřovací agent odešle žádost o registraci na ID Microsoft Entra přes HTTPS s následujícími komponentami zahrnutými v požadavku:

    • Přístupový token, který agent získal.
    • Veřejný klíč, který byl vygenerován.
    • Žádost o podepsání certifikátu (CSR nebo žádost o certifikát). Tato žádost se vztahuje na certifikát digitální identity s ID Microsoft Entra jako jeho certifikační autoritou.
  4. Id Microsoft Entra ověří přístupový token v žádosti o registraci a ověří, že žádost pochází od správce hybridní identity.

  5. Microsoft Entra ID pak podepíše certifikát digitální identity a odešle ho zpět ověřovacímu agentu.

    • Kořenová certifikační autorita v MICROSOFT Entra ID se používá k podepsání certifikátu.

    Poznámka

    Tato certifikační autorita není v úložišti důvěryhodných kořenových certifikačních autorit systému Windows.

    • Certifikační autoritu používá jenom funkce předávacího ověřování. Certifikační autorita se používá pouze k podepisování certifikačních autorit během registrace ověřovacího agenta.
    • Tuto certifikační autoritu nepoužívá žádná jiná služba Microsoft Entra.
    • Předmět certifikátu (označovaný také jako Rozlišující název nebo DN) je nastavený na ID vašeho tenanta. Jedná se o identifikátor GUID, který jednoznačně identifikuje vašeho tenanta. Tento obor názvů názvů určuje certifikát pro použití pouze s vaším tenantem.
  6. ID Microsoft Entra ukládá veřejný klíč ověřovacího agenta do databáze ve službě Azure SQL Database. K databázi má přístup pouze ID Microsoft Entra.

  7. Vystavený certifikát je uložený na místním serveru v úložišti certifikátů Windows (konkrétně v CERT_SYSTEM_STORE_LOCAL_MACHINE). Certifikát používá ověřovací agent i aplikace Updater.

Inicializace agenta ověřování

Při prvním spuštění ověřovacího agenta po registraci nebo po restartování serveru potřebuje způsob, jak bezpečně komunikovat se službou Microsoft Entra, aby mohl začít přijímat žádosti o ověření hesla.

Diagram znázorňující inicializaci agenta ověřování

Tady je postup inicializace agentů ověřování:

  1. Ověřovací agent vytvoří odchozí požadavek bootstrap na ID Microsoft Entra. Tento požadavek se provádí přes port 443 a přes vzájemně ověřený kanál HTTPS. Požadavek používá stejný certifikát, který byl vydán během registrace agenta ověřování.
  2. Microsoft Entra ID odpoví na požadavek poskytnutím přístupového klíče do fronty služby Service Bus, která je jedinečná pro vašeho tenanta a která je identifikována ID vašeho tenanta.
  3. Ověřovací agent vytvoří trvalé odchozí připojení HTTPS (přes port 443) do fronty.

Ověřovací agent je teď připravený načíst a zpracovat žádosti o ověření hesla.

Pokud máte ve svém tenantovi zaregistrovaných více agentů ověřování, inicializační postup zajistí, že se každý agent připojí ke stejné frontě služby Service Bus.

Jak předávací ověřování zpracovává žádosti o přihlášení

Následující diagram znázorňuje, jak předávací ověřování zpracovává žádosti uživatelů o přihlášení:

Diagram znázorňující, jak předávací ověřování zpracovává žádosti uživatelů o přihlášení

Jak předávací ověřování zpracovává žádost o přihlášení uživatele:

  1. Uživatel se pokusí o přístup k aplikaci, například k Outlook Web Appu.
  2. Pokud uživatel ještě není přihlášený, aplikace přesměruje prohlížeč na přihlašovací stránku Microsoft Entra.
  3. Služba Microsoft Entra STS odpoví zpět přihlašovací stránkou uživatele.
  4. Uživatel zadá své uživatelské jméno na přihlašovací stránce Uživatele a pak vybere tlačítko Další .
  5. Uživatel zadá heslo na přihlašovací stránce uživatele a pak vybere tlačítko Přihlásit se.
  6. Uživatelské jméno a heslo se odešle do služby Microsoft Entra STS v požadavku HTTPS POST.
  7. Microsoft Entra STS načte veřejné klíče pro všechny ověřovací agenty zaregistrované ve vašem tenantovi ze služby Azure SQL Database a zašifruje heslo pomocí klíčů. Vytvoří jednu zašifrovanou hodnotu hesla pro každého ověřovacího agenta zaregistrovaného ve vašem tenantovi.
  8. Služba Microsoft Entra STS umístí žádost o ověření hesla, která se skládá z uživatelského jména a šifrovaných hodnot hesel, do fronty služby Service Bus, která je specifická pro vašeho tenanta.
  9. Vzhledem k tomu, že agenti inicializovaného ověřování jsou trvale připojeni k frontě služby Service Bus, jeden z dostupných agentů ověřování načte žádost o ověření hesla.
  10. Ověřovací agent používá identifikátor k vyhledání šifrované hodnoty hesla, která je specifická pro jeho veřejný klíč. Dešifruje veřejný klíč pomocí svého privátního klíče.
  11. Ověřovací agent se pokusí ověřit uživatelské jméno a heslo vůči službě Windows Server AD pomocí rozhraní WIN32 LogonUser API s parametrem nastaveným dwLogonType na LOGON32_LOGON_NETWORK.
    • Toto rozhraní API je stejné rozhraní API, které používá Active Directory Federation Services (AD FS) (AD FS) k přihlášení uživatelů ve scénáři federovaného přihlašování.
    • Toto rozhraní API spoléhá na standardní proces překladu ve Windows Serveru k vyhledání řadiče domény.
  12. Ověřovací agent obdrží výsledek ze služby Windows Server AD, jako je úspěch, uživatelské jméno nebo heslo je nesprávné nebo vypršela platnost hesla.

Poznámka

Pokud ověřovací agent během procesu přihlášení selže, celý požadavek na přihlášení se zahodí. Žádosti o přihlášení se neudělují z jednoho místního ověřovacího agenta do jiného místního ověřovacího agenta. Tito agenti komunikují jenom s cloudem, a ne s ostatními.

  1. Ověřovací agent předá výsledek zpět službě Microsoft Entra STS přes odchozí vzájemně ověřený kanál HTTPS přes port 443. Vzájemné ověřování používá certifikát vydaný ověřovacímu agentu během registrace.
  2. Microsoft Entra STS ověří, že tento výsledek koreluje s konkrétní žádostí o přihlášení ve vašem tenantovi.
  3. Microsoft Entra STS pokračuje v postupu přihlašování podle konfigurace. Pokud bylo například ověření hesla úspěšné, může být uživatel vyzván pro vícefaktorové ověřování nebo přesměrován zpět do aplikace.

Provozní zabezpečení agenta ověřování

Aby předávací ověřování zůstalo zprovozně zabezpečené, microsoft Entra ID pravidelně obnovuje certifikáty ověřovacího agenta. Id Microsoft Entra aktivuje prodloužení platnosti. Prodloužení se neřídí samotnými ověřovacími agenty.

Diagram znázorňující, jak funguje provozní zabezpečení s předávacím ověřováním

Obnovení vztahu důvěryhodnosti ověřovacího agenta s ID Microsoft Entra:

  1. Ověřovací agent každých několik hodin testuje Microsoft Entra a kontroluje, jestli je čas obnovit certifikát. Platnost certifikátu se prodloužila 30 dní před vypršením jeho platnosti. Tato kontrola se provádí přes vzájemně ověřený kanál HTTPS a používá stejný certifikát, který byl vydán během registrace.
  2. Pokud služba indikuje, že je čas prodloužit platnost, agent ověřování vygeneruje nový pár klíčů: veřejný klíč a privátní klíč.
    • Tyto klíče se generují prostřednictvím standardního 2 048bitového šifrování RSA.
    • Privátní klíč nikdy neopustí místní server.
  3. Ověřovací agent pak odešle žádost o prodloužení platnosti certifikátu na ID Microsoft Entra přes HTTPS. V požadavku jsou zahrnuty následující komponenty:
    • Existující certifikát načtený z umístění CERT_SYSTEM_STORE_LOCAL_MACHINE v úložišti certifikátů Systému Windows.
    • Veřejný klíč vygenerovaný v kroku 2.
    • A CSR. Tato žádost se vztahuje na nový certifikát digitální identity s ID Microsoft Entra jako jeho certifikační autoritou.
  4. ID Microsoft Entra ověří existující certifikát v žádosti o prodloužení platnosti certifikátu. Pak ověří, že požadavek pochází z ověřovacího agenta zaregistrovaného ve vašem tenantovi.
  5. Pokud je stávající certifikát stále platný, Microsoft Entra ID podepíše nový certifikát digitální identity a vydá nový certifikát zpět ověřovacímu agentu.
  6. Pokud platnost existujícího certifikátu vypršela, Microsoft Entra ID odstraní ověřovacího agenta ze seznamu registrovaných ověřovacích agentů vašeho tenanta. Správce hybridní identity pak musí ručně nainstalovat a zaregistrovat nového ověřovacího agenta.
    • K podepsání certifikátu použijte kořenovou certifikační autoritu Microsoft Entra ID.
    • Nastavte NÁZEV certifikátu na ID vašeho tenanta, identifikátor GUID, který jednoznačně identifikuje vašeho tenanta. Obor názvů názvů certifikátu se vztahuje pouze na vašeho tenanta.
  7. Id Microsoft Entra ukládá nový veřejný klíč ověřovacího agenta do databáze v Azure SQL Database, ke které má přístup jenom on. Také zneplatní starý veřejný klíč přidružený k ověřovacímu agentovi.
  8. Nový certifikát (vydaný v kroku 5) se pak uloží na server v úložišti certifikátů Systému Windows (konkrétně v umístění CERT_SYSTEM_STORE_CURRENT_USER ).

Vzhledem k tomu, že k postupu obnovení důvěryhodnosti dochází neinteraktivně (bez přítomnosti správce hybridní identity), ověřovací agent už nemá přístup k aktualizaci existujícího certifikátu v CERT_SYSTEM_STORE_LOCAL_MACHINE umístění.

Poznámka

Tento postup neodebere samotný certifikát z CERT_SYSTEM_STORE_LOCAL_MACHINE umístění. 9. Od tohoto okamžiku se nový certifikát používá k ověřování. Každé následné obnovení certifikátu nahradí certifikát v umístění CERT_SYSTEM_STORE_LOCAL_MACHINE.

Automatická aktualizace ověřovacího agenta

Aplikace Updater automaticky aktualizuje ověřovacího agenta při vydání nové verze (s opravami chyb nebo vylepšeními výkonu). Aplikace Updater nezpracuje žádné žádosti o ověření hesla pro vašeho tenanta.

Microsoft Entra ID hostuje novou verzi softwaru jako podepsaný balíček Instalační služby systému Windows (MSI). MSI je podepsána pomocí microsoft Authenticode s SHA-256 jako algoritmus digest.

Diagram znázorňující automatickou aktualizaci ověřovacího agenta

Automatická aktualizace ověřovacího agenta:

  1. Aplikace Updater ping Microsoft Entra každou hodinu kontroluje, zda je k dispozici nová verze ověřovacího agenta. Tato kontrola se provádí přes vzájemně ověřený kanál HTTPS pomocí stejného certifikátu, který byl vydán během registrace. Ověřovací agent a aktualizátor sdílejí certifikát uložený na serveru.
  2. Pokud je k dispozici nová verze, vrátí MICROSOFT Entra ID podepsané MSI zpět do aktualizátoru.
  3. Aktualizátor ověří, že msi je podepsána Společností Microsoft.
  4. Aktualizátor spouští MSI. V tomto procesu aplikace Updater:

Poznámka

Aktualizátor běží s oprávněními místního systému .

  1. Zastaví službu ověřovacího agenta.
  2. Nainstaluje novou verzi ověřovacího agenta na server.
  3. Restartuje službu ověřovacího agenta.

Poznámka

Pokud máte ve svém tenantovi zaregistrovaných více ověřovacích agentů, id Microsoft Entra neprodlouží platnost certifikátů ani je neaktualizuje současně. Místo toho Microsoft Entra ID prodlouží certifikáty po jednom, aby se zajistila vysoká dostupnost pro žádosti o přihlášení.

Další kroky