Ö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.
- En användare försöker logga in på en app och omdirigeras till Microsoft Entra-inloggningssidan.
- När en användare har slutfört ett visst steg i autentiseringen utlöses en händelselyssnare .
- 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.
- REST-API:et utför ett anpassat arbetsflöde.
- REST-API:et returnerar ett HTTP-svar till Microsoft Entra-ID.
- Microsoft Entra-tillägget för anpassad autentisering bearbetar svaret och anpassar autentiseringen baserat på händelsetypen och HTTP-svarsnyttolasten.
- 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.
- 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. - Ägartoken innehåller ett eller
azp
ettappid
anspråk. Kontrollera att respektive anspråk innehåller99045fe1-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.- Verifiera anspråket för
appid
V1-program. - Verifiera anspråket för
azp
V2-program.
- Verifiera anspråket för
- 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. - 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
.
- Personalstyrka:
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
- Lär dig hur du skapar anpassade autentiseringstillägg för att starta och skicka händelser med ett OpenID-exempelprogram för Anslut.