Ingående information om säkerhet vid autentisering via direktströmning i Microsoft Entra

Den här artikeln innehåller en mer detaljerad beskrivning av hur Direktautentisering i Microsoft Entra fungerar. Den fokuserar på säkerhetsaspekterna av funktionen. Den här artikeln gäller för säkerhets- och IT-administratörer, chefsefterlevnads- och säkerhetsansvariga samt andra IT-proffs som ansvarar för IT-säkerhet och efterlevnad hos organisationer eller företag av valfri storlek.

De ämnen som tas upp är:

  • Detaljerad teknisk information om hur du installerar och registrerar autentiseringsagenter.
  • Detaljerad teknisk information om lösenordskryptering under användarinloggning.
  • Säkerheten för kanalerna mellan lokala autentiseringsagenter och Microsoft Entra-ID.
  • Detaljerad teknisk information om hur du skyddar autentiseringsagenterna.

Säkerhetsfunktioner för direktautentiseringsnycklar

Direktautentisering har följande viktiga säkerhetsfunktioner:

  • Den bygger på en säker arkitektur med flera klientorganisationer som ger isolering av inloggningsbegäranden mellan klientorganisationer.
  • Lokala lösenord lagras aldrig i molnet i någon form.
  • Lokala autentiseringsagenter som lyssnar efter och svarar på begäranden om lösenordsvalidering gör endast utgående anslutningar inifrån nätverket. Det finns inget krav på att installera dessa autentiseringsagenter i ett perimeternätverk (även kallat DMZ, demilitariserad zon och skärmat undernät). Bästa praxis är att behandla alla servrar som kör autentiseringsagenter som nivå 0-system (se referens).
  • Endast standardportar (port 80 och port 443) används för utgående kommunikation från autentiseringsagenterna till Microsoft Entra-ID. Du behöver inte öppna inkommande portar i brandväggen.
    • Port 443 används för all autentiserad utgående kommunikation.
    • Port 80 används endast för att ladda ned listor över återkallade certifikat (CRL) för att säkerställa att inget av de certifikat som den här funktionen använder har återkallats.
    • En fullständig lista över nätverkskraven finns i snabbstarten för Microsoft Entra-direktautentisering.
  • Lösenord som användarna anger under inloggningen krypteras i molnet innan de lokala autentiseringsagenterna accepterar dem för validering mot Windows Server Active Directory (Windows Server AD).
  • HTTPS-kanalen mellan Microsoft Entra-ID och den lokala autentiseringsagenten skyddas med hjälp av ömsesidig autentisering.
  • Direktautentisering skyddar dina användarkonton genom att arbeta sömlöst med Microsoft Entras principer för villkorsstyrd åtkomst, inklusive multifaktorautentisering (MFA), blockera äldre autentisering och genom att filtrera bort brute force-lösenordsattacker.

Komponenter som ingår i direktautentisering

Allmän information om drifts-, tjänst- och datasäkerhet för Microsoft Entra-ID finns i Säkerhetscenter. Följande komponenter ingår när du använder direktautentisering för användarinloggning:

  • Microsoft Entra Security Token Service (Microsoft Entra STS): En tillståndslös STS som bearbetar inloggningsbegäranden och utfärdar säkerhetstoken till användarwebbläsare, klienter eller tjänster efter behov.
  • Azure Service Bus: Tillhandahåller molnaktiverad kommunikation med meddelande- och reläkommunikation för företag som hjälper dig att ansluta lokala lösningar till molnet.
  • Microsoft Entra Anslut Authentication Agent: En lokal komponent som lyssnar efter och svarar på begäranden om lösenordsverifiering.
  • Azure SQL Database: Innehåller information om klientorganisationens autentiseringsagenter, inklusive deras metadata och krypteringsnycklar.
  • Windows Server AD: Lokal Active Directory, där användarkonton och deras lösenord lagras.

Installation och registrering av autentiseringsagenter

Autentiseringsagenter installeras och registreras med Microsoft Entra-ID när du utför någon av följande åtgärder:

Att få igång en autentiseringsagent omfattar tre huvudfaser:

  • Installation
  • Registrering
  • Initiering

I följande avsnitt beskrivs dessa faser i detalj.

Installation av autentiseringsagent

Endast ett hybrididentitetsadministratörskonto kan installera en autentiseringsagent (med hjälp av Microsoft Entra Anslut eller en fristående instans) på en lokal server.

Installationen lägger till två nya poster i listan i Kontrollpanelen> Programprogram>och funktioner:

Viktigt!

Från säkerhetssynpunkt bör administratörer behandla servern som kör direktautentiseringsagenten som om den vore en domänkontrollant. Agentservrarna för direktautentiseringsagenten bör härdas enligt beskrivningen i Skydda domänkontrollanter mot angrepp.

Registrering av autentiseringsagent

När du har installerat autentiseringsagenten registreras den med Microsoft Entra-ID. Microsoft Entra-ID tilldelar varje autentiseringsagent ett unikt, digitalt identitetscertifikat som det kan använda för säker kommunikation med Microsoft Entra-ID.

Registreringsproceduren binder även autentiseringsagenten till din klientorganisation. Sedan vet Microsoft Entra-ID:t att den här specifika autentiseringsagenten är den enda som har behörighet att hantera begäranden om lösenordsverifiering för din klientorganisation. Den här proceduren upprepas för varje ny autentiseringsagent som du registrerar.

Autentiseringsagenterna använder följande steg för att registrera sig med Microsoft Entra-ID:

Diagram that depicts authentication agent registration with Azure AD.

  1. Microsoft Entra begär först att en hybrididentitetsadministratör loggar in på Microsoft Entra-ID med sina autentiseringsuppgifter. Under inloggningen hämtar autentiseringsagenten en åtkomsttoken som den kan använda för användarens räkning.
  2. Autentiseringsagenten genererar sedan ett nyckelpar: en offentlig nyckel och en privat nyckel.
    • Nyckelparet genereras via standard-RSA 2 048-bitarskryptering.
    • Den privata nyckeln finns kvar på den lokala servern där autentiseringsagenten finns.
  3. Autentiseringsagenten gör en registreringsbegäran till Microsoft Entra-ID via HTTPS, med följande komponenter som ingår i begäran:
    • Den åtkomsttoken som agenten hämtade.
    • Den offentliga nyckeln som genererades.
    • En certifikatsigneringsbegäran (CSR eller certifikatbegäran). Den här begäran gäller för ett digitalt identitetscertifikat, med Microsoft Entra-ID som certifikatutfärdare (CA).
  4. Microsoft Entra-ID verifierar åtkomsttoken i registreringsbegäran och verifierar att begäran kom från en hybrididentitetsadministratör.
  5. Microsoft Entra-ID signerar sedan ett digitalt identitetscertifikat och skickar tillbaka det till autentiseringsagenten.
    • Rotcertifikatutfärdaren i Microsoft Entra-ID används för att signera certifikatet.

      Kommentar

      Den här certifikatutfärdare finns inte i arkivet Betrodda rotcertifikatutfärdare i Windows.

    • Ca:en används endast av direktautentiseringsfunktionen. Ca:en används endast för att signera csr:er under registreringen av autentiseringsagenten.

    • Ingen annan Microsoft Entra-tjänst använder den här ca:n.

    • Certifikatets ämne (även kallat Unikt namn eller DN) är inställt på ditt klientorganisations-ID. Detta DN är ett GUID som unikt identifierar din klientorganisation. Det här DN:t omfattar endast certifikatet för användning med din klientorganisation.

  6. Microsoft Entra-ID lagrar den offentliga nyckeln för autentiseringsagenten i en databas i Azure SQL Database. Endast Microsoft Entra-ID kan komma åt databasen.
  7. Certifikatet som utfärdas lagras på den lokala servern i Windows-certifikatarkivet (särskilt i CERT_SYSTEM_STORE_LOCAL_MACHINE). Certifikatet används av både autentiseringsagenten och Updater-programmet.

Initiering av autentiseringsagent

När autentiseringsagenten startar, antingen för första gången efter registreringen eller efter en omstart av servern, behöver den ett sätt att kommunicera säkert med Microsoft Entra-tjänsten så att den kan börja acceptera begäranden om lösenordsverifiering.

Diagram that depicts authentication agent initialization.

Så här initieras autentiseringsagenter:

  1. Autentiseringsagenten gör en utgående bootstrap-begäran till Microsoft Entra-ID.

    Den här begäran görs via port 443 och är över en ömsesidigt autentiserad HTTPS-kanal. Begäran använder samma certifikat som utfärdades under registreringen av autentiseringsagenten.

  2. Microsoft Entra-ID svarar på begäran genom att tillhandahålla en åtkomstnyckel till en Service Bus-kö som är unik för din klientorganisation och som identifieras av ditt klient-ID.

  3. Autentiseringsagenten gör en beständig utgående HTTPS-anslutning (via port 443) till kön.

Autentiseringsagenten är nu redo att hämta och hantera begäranden om lösenordsverifiering.

Om du har flera autentiseringsagenter registrerade i klientorganisationen ser initieringsproceduren till att varje agent ansluter till samma Service Bus-kö.

Så här bearbetar direktautentisering inloggningsbegäranden

Följande diagram visar hur direktautentisering bearbetar användarinloggningsbegäranden:

Diagram that depicts how pass-through authentication processes user sign-in requests.

Så här hanterar direktautentisering en begäran om användarinloggning:

  1. En användare försöker komma åt ett program, till exempel Outlook Web App.

  2. Om användaren inte redan är inloggad omdirigerar programmet webbläsaren till microsoft Entra-inloggningssidan.

  3. Microsoft Entra STS-tjänsten svarar tillbaka med inloggningssidan för användaren.

  4. Användaren anger sitt användarnamn på inloggningssidanför användaren och väljer sedan knappen Nästa .

  5. Användaren anger sitt lösenord på inloggningssidan för användaren och väljer sedan inloggningsknappen.

  6. Användarnamnet och lösenordet skickas till Microsoft Entra STS i en HTTPS POST-begäran.

  7. Microsoft Entra STS hämtar offentliga nycklar för alla autentiseringsagenter som är registrerade i din klientorganisation från Azure SQL Database och krypterar lösenordet med hjälp av nycklarna.

    Det genererar ett krypterat lösenordsvärde för varje autentiseringsagent som är registrerad i din klientorganisation.

  8. Microsoft Entra STS placerar begäran om lösenordsverifiering, som består av användarnamnet och de krypterade lösenordsvärdena, i Service Bus-kön som är specifik för din klientorganisation.

  9. Eftersom de initierade autentiseringsagenterna är beständigt anslutna till Service Bus-kön hämtar en av de tillgängliga autentiseringsagenterna begäran om lösenordsverifiering.

  10. Autentiseringsagenten använder en identifierare för att hitta det krypterade lösenordsvärdet som är specifikt för dess offentliga nyckel. Den dekrypterar den offentliga nyckeln med hjälp av dess privata nyckel.

  11. Autentiseringsagenten försöker verifiera användarnamnet och lösenordet mot Windows Server AD med hjälp av API:et Win32 LogonUser med parametern dwLogonType inställd på LOGON32_LOGON_NETWORK.

    • Det här API:et är samma API som används av Active Directory Federation Services (AD FS) (AD FS) för att logga in användare i ett federerat inloggningsscenario.
    • Det här API:et förlitar sig på standardmatchningsprocessen i Windows Server för att hitta domänkontrollanten.
  12. Autentiseringsagenten tar emot resultatet från Windows Server AD, till exempel att framgång, användarnamn eller lösenord är felaktigt eller att lösenordet har upphört att gälla.

    Kommentar

    Om autentiseringsagenten misslyckas under inloggningsprocessen tas hela inloggningsbegäran bort. Inloggningsbegäranden lämnas inte från en lokal autentiseringsagent till en annan lokal autentiseringsagent. Dessa agenter kommunicerar endast med molnet och inte med varandra.

  13. Autentiseringsagenten vidarebefordrar resultatet tillbaka till Microsoft Entra STS över en utgående ömsesidigt autentiserad HTTPS-kanal via port 443. Ömsesidig autentisering använder certifikatet som utfärdades till autentiseringsagenten under registreringen.

  14. Microsoft Entra STS verifierar att det här resultatet korrelerar med den specifika inloggningsbegäran för din klientorganisation.

  15. Microsoft Entra STS fortsätter med inloggningsproceduren enligt konfigurationen. Om lösenordsverifieringen till exempel lyckades kan användaren bli utmanad för MFA eller omdirigeras tillbaka till programmet.

Driftsäkerhet för autentiseringsagent

För att säkerställa att direktautentiseringen förblir driftsäker förnyar Microsoft Entra-ID autentiseringsagentcertifikat regelbundet. Microsoft Entra ID utlöser förnyelserna. Förnyelserna styrs inte av autentiseringsagenterna själva.

Diagram that depicts how operational security works with pass-through authentication.

Så här förnyar du en autentiseringsagents förtroende med Microsoft Entra-ID:

  1. Autentiseringsagenten pingar Microsoft Entra med några timmars mellanrum för att kontrollera om det är dags att förnya certifikatet. Certifikatet förnyas 30 dagar innan det upphör att gälla.

    Den här kontrollen görs via en ömsesidigt autentiserad HTTPS-kanal och använder samma certifikat som utfärdades under registreringen.

  2. Om tjänsten anger att det är dags att förnya genererar autentiseringsagenten ett nytt nyckelpar: en offentlig nyckel och en privat nyckel.

    • Dessa nycklar genereras via standard-RSA 2 048-bitarskryptering.
    • Den privata nyckeln lämnar aldrig den lokala servern.
  3. Autentiseringsagenten skickar sedan en begäran om certifikatförnyelse till Microsoft Entra-ID via HTTPS. Följande komponenter ingår i begäran:

    • Det befintliga certifikatet som hämtas från CERT_SYSTEM_STORE_LOCAL_MACHINE plats i Windows-certifikatarkivet. Ingen global administratör ingår i den här proceduren, så ingen åtkomsttoken krävs för en global administratör.
    • Den offentliga nyckeln som genererades i steg 2.
    • En CSR. Den här begäran gäller för ett nytt digitalt identitetscertifikat med Microsoft Entra-ID som certifikatutfärdare.
  4. Microsoft Entra-ID verifierar det befintliga certifikatet i begäran om certifikatförnyelse. Sedan verifieras att begäran kom från en autentiseringsagent som är registrerad i din klientorganisation.

  5. Om det befintliga certifikatet fortfarande är giltigt signerar Microsoft Entra-ID ett nytt digitalt identitetscertifikat och utfärdar det nya certifikatet tillbaka till autentiseringsagenten.

  6. Om det befintliga certifikatet har upphört att gälla tar Microsoft Entra-ID bort autentiseringsagenten från klientorganisationens lista över registrerade autentiseringsagenter. Sedan måste en global administratör eller en hybrididentitetsadministratör installera och registrera en ny autentiseringsagent manuellt.

    • Använd Rotcertifikatutfärdaren för Microsoft Entra-ID för att signera certifikatet.
    • Ange certifikatets DN till ditt klient-ID, ett GUID som unikt identifierar din klientorganisation. DN omfattar endast certifikatet till din klientorganisation.
  7. Microsoft Entra-ID lagrar den nya offentliga nyckeln för autentiseringsagenten i en databas i Azure SQL Database som bara den har åtkomst till. Den ogiltigförklarar också den gamla offentliga nyckeln som är associerad med autentiseringsagenten.

  8. Det nya certifikatet (utfärdat i steg 5) lagras sedan på servern i Windows-certifikatarkivet (särskilt på CERT_SYSTEM_STORE_CURRENT_USER plats).

    Eftersom proceduren för förnyelse av förtroende sker icke-interaktivt (utan närvaro av den globala administratören eller hybrididentitetsadministratören) har autentiseringsagenten inte längre åtkomst till att uppdatera det befintliga certifikatet på den CERT_SYSTEM_STORE_LOCAL_MACHINE platsen.

    Kommentar

    Den här proceduren tar inte bort själva certifikatet från den CERT_SYSTEM_STORE_LOCAL_MACHINE platsen.

  9. Från och med nu används det nya certifikatet för autentisering. Varje efterföljande förnyelse av certifikatet ersätter certifikatet på den CERT_SYSTEM_STORE_LOCAL_MACHINE platsen.

Automatisk uppdatering av autentiseringsagent

Updater-programmet uppdaterar automatiskt autentiseringsagenten när en ny version (med felkorrigeringar eller prestandaförbättringar) släpps. Updater-programmet hanterar inga begäranden om lösenordsvalidering för din klientorganisation.

Microsoft Entra ID är värd för den nya versionen av programvaran som ett signerat Windows Installer-paket (MSI). MSI signeras med hjälp av Microsoft Authenticode med SHA-256 som sammanfattande algoritm.

Diagram that shows how an authentication agent is auto updated.

Så här uppdaterar du en autentiseringsagent automatiskt:

  1. Updater-programmet pingar Microsoft Entra varje timme för att kontrollera om en ny version av autentiseringsagenten är tillgänglig.

    Den här kontrollen görs via en ömsesidigt autentiserad HTTPS-kanal med hjälp av samma certifikat som utfärdades under registreringen. Autentiseringsagenten och Updater delar certifikatet som lagras på servern.

  2. Om en ny version är tillgänglig returnerar Microsoft Entra-ID:t den signerade MSI:n tillbaka till Updater.

  3. Updater verifierar att MSI är signerat av Microsoft.

  4. Updater kör MSI. I den här processen uppdaterar programmet:

    Kommentar

    Updatern körs med lokal systembehörighet .

    1. Stoppar autentiseringsagenttjänsten.
    2. Installerar den nya versionen av autentiseringsagenten på servern.
    3. Startar om autentiseringsagenttjänsten.

Kommentar

Om du har flera autentiseringsagenter registrerade i din klientorganisation förnyar inte Microsoft Entra-ID:t sina certifikat eller uppdaterar dem samtidigt. I stället förnyar Microsoft Entra-ID certifikaten en i taget för att säkerställa hög tillgänglighet för inloggningsbegäranden.

Nästa steg