Erweitern von Authentifizierungsflows mit Ihrer eigenen Geschäftslogik
Gilt für: Mitarbeitermandanten Externe Mandanten (weitere Informationen)
Benutzerflows in Microsoft Entra External ID sind auf Flexibilität ausgelegt. Innerhalb eines Registrierungs- und Anmeldebenutzerflows gibt es integrierte Authentifizierungsereignisse. Sie können auch benutzerdefinierte Authentifizierungserweiterungen an bestimmten Punkten im Authentifizierungsflow hinzufügen: Eine benutzerdefinierte Authentifizierungserweiterung ist im Wesentlichen ein Ereignis-Listener, der bei Aktivierung einen HTTP-Aufruf an einen REST-API-Endpunkt ausführt, an dem Sie eine Workflowaktion definiert haben. Sie könnten beispielsweise einen Workflow zur Attributesammlung hinzufügen, um die Attribute zu überprüfen, die ein Benutzer während der Registrierung eingibt, oder Sie können einen benutzerdefinierten Anspruchsanbieter verwenden, um dem Token vor der Ausstellung externe Benutzerdaten hinzuzufügen.
Es gibt zwei Komponenten, die Sie konfigurieren müssen: eine benutzerdefinierte Authentifizierungserweiterung und eine REST-API. Die benutzerdefinierte Authentifizierungserweiterung gibt Ihren REST-API-Endpunkt an, wenn die REST-API aufgerufen werden soll, und die Anmeldeinformationen zum Aufrufen der REST-API. Sie können benutzerdefinierte Authentifizierungserweiterungen an den folgenden Punkten im Authentifizierungsfluss erstellen:
- Während der Registrierung, vor oder nach der Attributauflistung:
- Das OnAttributeCollectionStart-Ereignis tritt am Anfang des Attributauflistungsschritts auf, bevor die Attributauflistungsseite gerendert wird.
- Das OnAttributeCollectionSubmit-Ereignis tritt auf, nachdem der Benutzer Attribute eingegeben und übermittelt hat.
- Bei der Tokenausstellung mithilfe des OnTokenIssuanceStart-Ereignisses, das unmittelbar vor der Ausstellung eines Tokens an die Anwendung ausgelöst wird.
Wenn Sie eine benutzerdefinierte Authentifizierungserweiterung an einem dieser Punkte konfiguriert haben, ruft Microsoft Entra ID die REST-API auf, die Sie definiert haben. Die Anforderung an die REST-API enthält Informationen über das Ereignis, das Benutzerprofil, Authentifizierungsanforderungsdaten und andere Kontextinformationen. Die REST-API führt wiederum die Workflowaktionen aus.
Dieser Artikel bietet eine Übersicht über benutzerdefinierte Authentifizierungserweiterungen in Microsoft Entra External ID.
Start- und Sendeereignisse der Attributauflistung
Sie können benutzerdefinierte Authentifizierungserweiterungen verwenden, um Workflows zur Attributsammlung in Ihren Self-Service-Registrierungsbenutzerflüssen hinzuzufügen. Beispielsweise können Sie Attributfelder mit benutzerdefinierten Werten vorab ausfüllen, die Einträge eines Benutzers überprüfen und Attribute ändern und Fehler anzeigen. Zwei Ereignisse sind aktiviert:
OnAttributeCollectionStart – Das OnAttributeCollectionStart-Ereignis tritt am Anfang des Attributauflistungsprozesses auf, bevor die Attributsammlungsseite gerendert wird. Dieses Ereignis kann für Szenarien verwendet werden, z. B. verhindern, dass sich der Benutzer basierend auf seiner Domäne anmeldet oder Attribute hinzufügt, die erfasst werden sollen. Die folgenden Szenarien können für das OnAttributeCollectionStart-Ereignis konfiguriert werden:
- continueWithDefaultBehavior – Rendern Sie die Attributsammlungsseite wie gewohnt.
- setPreFillValues – Vorfüllattribute im Registrierungsformular.
- showBlockPage – Zeigen Sie eine Fehlermeldung an, und blockieren Sie die Registrierung des Benutzers.
OnAttributeCollectionSubmit – Das OnAttributeCollectionSubmit-Ereignis tritt ein, nachdem der Benutzer Attribute eingegeben und übermittelt hat. Dieses Ereignis kann für Szenarien wie das Überprüfen oder Ändern der vom Benutzer bereitgestellten Informationen verwendet werden. Sie können z. B. einen Einladungscode oder eine Partnernummer überprüfen, ein Adressformat ändern oder einen Fehler zurückgeben.
- continueWithDefaultBehavior – Fahren Sie mit dem Registrierungsablauf fort.
- modifyAttributeValues – Überschreiben Sie die Werte, die der Benutzer im Registrierungsformular übermittelt hat.
- showValidationError – Gibt einen Fehler basierend auf den übermittelten Werten zurück.
- showBlockPage – Zeigen Sie eine Fehlermeldung an, und blockieren Sie die Registrierung des Benutzers.
Um die Start- und Sendeereignisse der Attributsammlung zu konfigurieren, erstellen Sie eine benutzerdefinierte REST-API für die Authentifizierungserweiterung. Wenn ein Ereignis ausgelöst wird, sendet Microsoft Entra ID eine HTTP-Anforderung an Ihren REST-API-Endpunkt. Die REST-API kann eine Azure Function, eine Azure Logic App oder ein anderer öffentlich verfügbarer API-Endpunkt sein. Ihr REST-API-Endpunkt ist für die Definition der auszuführenden Workflowaktionen verantwortlich.
Ausführliche Informationen finden Sie unter Hinzufügen von benutzerdefinierten Attribut-Sammlungserweiterungen zu Ihrem Benutzerablauf.
Startereignis für die Tokenausstellung
Das Startereignis für die Tokenausstellung wird ausgelöst, sobald ein Benutzer alle seine Authentifizierungsanforderungen abgeschlossen hat und die Ausgabe eines Sicherheitstokens bevorsteht.
Wenn sich Benutzer*innen bei Ihrer Anwendung mit Microsoft Entra ID authentifizieren, wird ein Sicherheitstoken an Ihre Anwendung zurückgegeben. Das Sicherheitstoken enthält Ansprüche, die Aussagen über die Benutzerin bzw. den Benutzer treffen, z. B. Name, eindeutiger Bezeichner oder Anwendungsrollen. Neben den Standardansprüchen, die im Sicherheitstoken enthalten sind, können Sie über eine von Ihnen entwickelte REST-API eigene Ansprüche aus externen Systemen definieren.
In einigen Fällen können Schlüsseldaten in Systemen außerhalb Microsoft Entra gespeichert werden, z. B. in einer sekundären E-Mail, einer Abrechnungsebene oder vertraulichen Informationen. Es ist nicht immer möglich, die Informationen im externen System im Microsoft Entra-Verzeichnis zu speichern. Für diese Szenarien können Sie eine benutzerdefinierte Authentifizierungserweiterung und einen Anbieter von benutzerdefinierten Ansprüchen verwenden, um diese externen Daten zu Token hinzuzufügen, die an Ihre Anwendung zurückgegeben werden.
Eine Erweiterung für Tokenausstellungsereignisse umfasst die folgenden Komponenten:
Anbieter von benutzerdefinierten Ansprüchen. Ein benutzerdefinierter Anspruchsanbieter ist eine Art benutzerdefinierte Authentifizierungserweiterung, die Daten aus externen Systemen abruft. Der benutzerdefinierte Anspruchsanbieter gibt die Attribute an, die dem Sicherheitstoken hinzugefügt werden sollen, das an Ihre Anwendung zurückgegeben wird. Mehrere Anspruchsanbieter können dieselbe benutzerdefinierte Erweiterung gemeinsam nutzen, sodass dem Sicherheitstoken für jede Anwendung ein anderer Satz von Attributen hinzugefügt werden kann.
REST-API-Endpunkt. Wenn ein Ereignis ausgelöst wird, sendet Microsoft Entra ID eine HTTP-Anforderung an Ihren REST-API-Endpunkt. Bei der REST-API kann es sich um eine Azure-Funktion, eine Azure-Logik-Anwendung oder einen anderen öffentlich verfügbaren API-Endpunkt handeln. Ihr REST-API-Endpunkt bildet eine Schnittstelle zu verschiedenen Datenspeichern, einschließlich nachgeschalteter Datenbanken, vorhandenen APIs, LDAP-Verzeichnissen (Lightweight Directory Access Protocol) oder anderen Speichern, die die Attribute enthalten, die Sie der Tokenkonfiguration hinzufügen möchten.
Die REST-API gibt eine HTTP-Antwort oder eine Aktion mit den Attributen an Microsoft Entra ID zurück. Diese Attribute werden nicht automatisch einem Token hinzugefügt. Stattdessen muss die Anspruchszuordnungsrichtlinie einer Anwendung konfiguriert werden, damit jedes Attribut in das Token aufgenommen werden kann.
Einzelheiten dazu finden Sie unter:
- Benutzerdefinierte Authentifizierungserweiterungen
- Konfigurieren eines Anbieters von benutzerdefinierten Ansprüchen für ein Tokenausstellungsereignis mithilfe eines Anbieters von benutzerdefinierten Ansprüchen
Weitere Informationen
- Weitere Informationen zur Funktionsweise benutzerdefinierter Erweiterungen finden Sie unter Benutzerdefinierte Authentifizierungserweiterungen.
- Erstellen einer REST-API mit einem Startereignis für die Tokenausstellung
- Konfigurieren eines Anbieters von benutzerdefinierten Ansprüchen für ein Tokenausstellungsereignis
- Konfigurieren von benutzerdefinierten Authentifizierungserweiterungen für Start- und Sendeereignisse der Attributesammlung mit einer OpenID Connect-Beispielanwendung
- Im Developer Center für Microsoft Entra External ID finden Sie die neuesten Entwicklerinhalte und -ressourcen.