Översikt över anpassade autentiseringstillägg

Den här artikeln innehåller en teknisk översikt på hög nivå över anpassade autentiseringstillägg för Microsoft Entra-ID. Med anpassade autentiseringstillägg kan du anpassa autentiseringsupplevelsen för Microsoft Entra genom att integrera med externa system.

Följande diagram visar inloggningsflödet som är integrerat med ett anpassat autentiseringstillägg.

Diagram som visar en token som utökas med anspråk från en extern källa.

  1. En användare försöker logga in på en app och omdirigeras till Microsoft Entra-inloggningssidan.
  2. När en användare har slutfört ett visst steg i autentiseringen utlöses en händelselyssnare .
  3. Ditt anpassade autentiseringstillägg skickar en HTTP-begäran till REST API-slutpunkten. Begäran innehåller information om händelsen, användarprofilen, sessionsdata och annan kontextinformation.
  4. REST-API:et utför ett anpassat arbetsflöde.
  5. REST-API:et returnerar ett HTTP-svar till Microsoft Entra-ID.
  6. Microsoft Entra-tillägget för anpassad autentisering bearbetar svaret och anpassar autentiseringen baserat på händelsetypen och HTTP-svarsnyttolasten.
  7. En token returneras till appen.

REST API-slutpunkt för anpassat autentiseringstillägg

När en händelse utlöses anropar Microsoft Entra-ID en REST API-slutpunkt som du äger. Begäran till REST-API:et innehåller information om händelsen, användarprofilen, autentiseringsbegärandedata och annan kontextinformation.

Du kan använda valfritt programmeringsspråk, ramverk och värdmiljö för att skapa och vara värd för rest-API:et för anpassade autentiseringstillägg. Om du vill ha ett snabbt sätt att komma igång använder du en C#-Azure-funktion. Med Azure Functions kan du köra koden i en serverlös miljö utan att först behöva skapa en virtuell dator (VM) eller publicera ett webbprogram.

Rest-API:et måste hantera:

  • Tokenverifiering för att skydda REST API-anrop.
  • Affärslogik
  • Inkommande och utgående validering av HTTP-begärande- och svarsscheman.
  • Granskning och loggning.
  • Tillgänglighet, prestanda och säkerhetskontroller.

För utvecklare som kör REST-API:et på Azure Functions kan du överväga att använda NuGet-biblioteket Microsoft.Azure.WebJobs.Extensions.AuthenticationEvents , som hjälper till med implementering av tokenverifiering med hjälp av Microsoft Azures inbyggda autentiseringsfunktioner. Den tillhandahåller en datamodell för olika händelsetyper, initierar inkommande och utgående bearbetning av begäranden och svar, så att du kan fokusera mer på affärslogik.

Skydda rest-API:et

För att säkerställa att kommunikationen mellan det anpassade autentiseringstillägget och rest-API:et skyddas på rätt sätt måste flera säkerhetskontroller tillämpas.

  1. När det anpassade autentiseringstillägget anropar rest-API:et skickar det ett HTTP-huvud Authorization med en ägartoken som utfärdats av Microsoft Entra-ID.
  2. Ägartoken innehåller ett eller azp ett appid anspråk. Kontrollera att respektive anspråk innehåller 99045fe1-7639-4a75-9d4a-577b6ca3810f värdet. Det här värdet säkerställer att Microsoft Entra-ID:t är det som anropar REST-API:et.
    1. Verifiera anspråket för appid V1-program.
    2. Verifiera anspråket för azp V2-program.
  3. Anspråket för ägartokens aud målgrupp innehåller ID:t för den associerade programregistreringen. REST API-slutpunkten måste verifiera att ägartoken utfärdas för den specifika målgruppen.
  4. Utfärdaranspråket för ägartoken iss innehåller URL:en för Microsoft Entra-utfärdaren. Beroende på klientkonfigurationen är utfärdarens URL något av följande.
    • Personalstyrka: https://login.microsoftonline.com/{tenantId}/v2.0.
    • Kund: https://{domainName}.ciamlogin.com/{tenantId}/v2.0.

Anpassad anspråksprovider

En anpassad anspråksprovider är en typ av anpassat autentiseringstillägg som anropar ett REST API för att hämta anspråk från externa system. En anpassad anspråksprovider mappar anspråk från externa system till token och kan tilldelas till ett eller flera program i din katalog.

Läs mer om anpassade anspråksproviders.

Starta och skicka händelser för attributsamling

Attributsamlingens start- och sändningshändelser kan användas med anpassade autentiseringstillägg för att lägga till logik före och efter att attribut samlas in från en användare. Du kan till exempel lägga till ett arbetsflöde för att verifiera de attribut som en användare anger under registreringen. Händelsen OnAttributeCollectionStart inträffar i början av attributsamlingssteget innan sidan för attributsamling återges. Du kan lägga till åtgärder som att förfylla värden och visa ett blockeringsfel. Händelsen OnAttributeCollectionSubmit utlöses när användaren har angett och skickat attribut, så att du kan lägga till åtgärder som att validera poster eller ändra attribut.

Kommentar

Attributsamlingens start- och sändningshändelser är för närvarande endast tillgängliga för användarflöden i Microsoft Entra Externt ID i externa klientorganisationer. Mer information finns i Lägga till din egen affärslogik.

Se även