Delen via


Overzicht van aangepaste verificatie-extensies

Dit artikel bevat een technisch overzicht op hoog niveau van aangepaste verificatie-extensies voor Microsoft Entra ID. Met aangepaste verificatie-extensies kunt u de Microsoft Entra-verificatie-ervaring aanpassen door te integreren met externe systemen.

In het volgende diagram ziet u de aanmeldingsstroom die is geïntegreerd met een aangepaste verificatie-extensie.

Diagram met een token dat wordt uitgebreid met claims van een externe bron.

  1. Een gebruiker probeert zich aan te melden bij een app en wordt omgeleid naar de aanmeldingspagina van Microsoft Entra.
  2. Zodra een gebruiker een bepaalde stap in de verificatie heeft voltooid, wordt een gebeurtenislistener geactiveerd.
  3. Uw aangepaste verificatie-extensie verzendt een HTTP-aanvraag naar uw REST API-eindpunt. De aanvraag bevat informatie over de gebeurtenis, het gebruikersprofiel, sessiegegevens en andere contextinformatie.
  4. De REST API voert een aangepaste werkstroom uit.
  5. De REST API retourneert een HTTP-antwoord op Microsoft Entra-id.
  6. De aangepaste verificatie-extensie van Microsoft Entra verwerkt het antwoord en past de verificatie aan op basis van het gebeurtenistype en de nettolading van het HTTP-antwoord.
  7. Er wordt een token geretourneerd naar de app.

REST API-eindpunt voor aangepaste verificatie-extensie

Wanneer een gebeurtenis wordt geactiveerd, roept Microsoft Entra ID een REST API-eindpunt aan dat u bezit. De aanvraag voor de REST API bevat informatie over de gebeurtenis, het gebruikersprofiel, verificatieaanvraaggegevens en andere contextinformatie.

U kunt elke programmeertaal, framework en hostingomgeving gebruiken om de REST API voor aangepaste verificatie-extensies te maken en te hosten. Gebruik een C#-azure-functie om snel aan de slag te gaan. Met Azure Functions kunt u uw code uitvoeren in een serverloze omgeving zonder dat u eerst een virtuele machine (VM) hoeft te maken of een webtoepassing hoeft te publiceren.

Uw REST API moet het volgende verwerken:

  • Tokenvalidatie voor het beveiligen van de REST API-aanroepen.
  • Bedrijfslogica
  • Binnenkomende en uitgaande validatie van HTTP-aanvraag- en antwoordschema's.
  • Controle en logboekregistratie.
  • Beschikbaarheids-, prestatie- en beveiligingscontroles.

Voor ontwikkelaars die de REST API in Azure Functions uitvoeren, kunt u overwegen de NuGet-bibliotheek Microsoft.Azure.WebJobs.Extensions.AuthenticationEvents te gebruiken. Dit helpt bij de implementatie van tokensvalidatie met behulp van de ingebouwde verificatiemogelijkheden van Microsoft Azure. Het biedt een gegevensmodel voor verschillende gebeurtenistypen, initieert binnenkomende en uitgaande aanvraag- en antwoordverwerking, zodat er meer aandacht kan worden besteed aan de bedrijfslogica.

Uw REST API beveiligen

Om ervoor te zorgen dat de communicatie tussen de aangepaste verificatie-extensie en uw REST API op de juiste wijze wordt beveiligd, moeten er meerdere beveiligingsmaatregelen worden toegepast.

  1. Wanneer de aangepaste verificatie-extensie uw REST API aanroept, wordt er een HTTP-header met een Bearer-token Authorization verzonden dat is uitgegeven door Microsoft Entra ID.
  2. Het bearer-token bevat een appid of azp claim. Controleer of de respectieve claim de 99045fe1-7639-4a75-9d4a-577b6ca3810f waarde bevat. Deze waarde zorgt ervoor dat de Microsoft Entra-id degene is die de REST API aanroept.
    1. Valideer de appid claim voor V1-toepassingen.
    2. Valideer de azp claim voor V2-toepassingen.
  3. De bearer-tokendoelclaim aud bevat de id van de bijbehorende toepassingsregistratie. Uw REST API-eindpunt moet valideren dat het Bearer-token is uitgegeven voor die specifieke doelgroep.
  4. De bearer-tokenverlenerclaim iss bevat de URL van de Microsoft Entra-verlener. Afhankelijk van uw tenantconfiguratie is de URL van de verlener een van de volgende;
    • Personeel: https://login.microsoftonline.com/{tenantId}/v2.0.
    • Klant: https://{domainName}.ciamlogin.com/{tenantId}/v2.0.

Aangepaste claimprovider

Een aangepaste claimprovider is een type aangepaste verificatie-extensie waarmee een REST API wordt aangeroepen voor het ophalen van claims van externe systemen. Een aangepaste claimprovider wijst claims van externe systemen toe aan tokens en kan worden toegewezen aan een of meer toepassingen in uw directory.

Meer informatie over aangepaste claimproviders.

Begin van de kenmerkverzameling en verzend gebeurtenissen

Gebeurtenissen voor het verzamelen van kenmerken kunnen worden gebruikt met aangepaste verificatie-extensies om logica toe te voegen voor en nadat kenmerken van een gebruiker worden verzameld. U kunt bijvoorbeeld een werkstroom toevoegen om de kenmerken te valideren die een gebruiker invoert tijdens de registratie. De gebeurtenis OnAttributeCollectionStart vindt plaats aan het begin van de stap voor het verzamelen van kenmerken, voordat de pagina voor het verzamelen van kenmerken wordt weergegeven. Hiermee kunt u acties toevoegen, zoals het vooraf doorvoeren van waarden en het weergeven van een blokkeringsfout. De gebeurtenistriggers OnAttributeCollectionSubmit nadat de gebruiker kenmerken invoert en verzendt, zodat u acties kunt toevoegen, zoals het valideren van vermeldingen of het wijzigen van kenmerken.

Notitie

Gebeurtenissen voor het starten en verzenden van kenmerkenverzamelingen zijn momenteel alleen beschikbaar voor gebruikersstromen in Microsoft Entra Externe ID in externe tenants. Zie Uw eigen bedrijfslogica toevoegen voor meer informatie.

Zie ook