Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel wird erläutert, wie Sie Azure App Service oder Azure Functions so konfigurieren, dass ein benutzerdefinierter Authentifizierungsanbieter verwendet wird, der der OpenID Connect (OIDC)-Spezifikation entspricht. OIDC ist ein Industriestandard, den viele Identitätsanbieter verwenden. Sie müssen die Details der Spezifikation nicht verstehen, um einen OIDC-Identitätsanbieter für Ihre App zu verwenden.
Ihre App kann für die Verwendung eines oder mehrerer OIDC-Anbieter konfiguriert werden. Sie müssen jedem OIDC-Anbieter einen eindeutigen Anzeigenamen in der App-Konfiguration zuweisen. Nur ein Anbieter kann als Standardumleitungsziel dienen.
Registrieren Ihrer App beim OIDC-Identitätsanbieter
Ihr Anbieter erfordert, dass Sie Ihre Anwendung registrieren, indem Sie einen Umleitungs-URI im Formular <app-url>/.auth/login/<provider-name>/callbackangeben. Ersetzen <app-url> Sie im Umleitungs-URI durch Ihre App-URL und <provider-name> durch den Anzeigenamen, den Sie dem OpenID-Anbieter in Azure geben.
Hinweis
Der Name des OpenID-Anbieters darf keinen Bindestrich -enthalten, da eine App Service-Anwendungseinstellung basierend auf diesem Namen erstellt wird und Anwendungseinstellungen keine Bindestriche unterstützen. Sie können stattdessen einen Unterstrich _ verwenden.
Wenn Sie Ihre App registrieren, müssen Sie eine Client-ID und einen geheimen Clientschlüssel für Ihre Anwendung sammeln. Notieren Sie sich diese Werte, die in der Azure-App-Konfiguration verwendet werden sollen.
Hinweis
- Der Wert des geheimen Clientschlüssels ist eine wichtige Sicherheitsanmeldeinformationen. Teilen Sie diesen geheimen Schlüssel nicht mit jemandem, oder verteilen Sie ihn in einer Clientanwendung.
- Ihre App muss den geheimen Clientschlüssel bereitstellen, wenn Benutzer Zugriffstoken mithilfe des interaktiven Autorisierungscodeflusses erwerben möchten. Wenn Sie keine Zugriffstoken erwerben möchten, müssen Sie keinen geheimen Schlüssel verwenden.
Außerdem benötigen Sie die OIDC-Metadaten des Anbieters. Diese Metadaten werden häufig in einem Konfigurationsmetadatendokument verfügbar gemacht, das Sie beim Pfad abrufen können, der durch Anfügen /.well-known/openid-configuration an die Aussteller-URL des Anbieters gebildet wird.
Wenn Sie nicht auf ein Konfigurationsmetadatendokument zugreifen können, rufen Sie die folgenden Werte separat ab:
- Die Aussteller-URL, manchmal als
issuer. - Der OAuth 2.0-Autorisierungsendpunkt, manchmal als
authorization_endpoint. - Der OAuth 2.0-Tokenendpunkt, manchmal als
token_endpoint. - Die URL des OAuth 2.0 JSON Web Key Set-Dokuments , manchmal als
jwks_uriangezeigt.
Jeder Identitätsanbieter sollte Anweisungen zum Ausführen der Registrierungsschritte bereitstellen. Einige Anbieter erfordern möglicherweise zusätzliche Schritte für ihre Konfiguration oder für die Verwendung der von ihnen bereitgestellten Werte. Beispielsweise stellt Apple einen privaten Schlüssel bereit, den Sie zum Erstellen eines JSON-Webtokens (JWT) verwenden, das Sie als geheimer Schlüssel in Ihrer App-Konfiguration eingeben. Weitere Informationen finden Sie unter Erstellen eines geheimen Clientschlüssels.
Hinzufügen von Anbieterinformationen zu Ihrer Anwendung
Führen Sie die folgenden Schritte aus, um den OpenID Connect-Anbieter in Azure zu konfigurieren:
Wählen Sie auf der Azure-Portalseite für Ihre App unter "Einstellungen" im linken Navigationsmenü die Option "Authentifizierung" aus.
Wählen Sie auf der Seite "Authentifizierung " die Option " Identitätsanbieter hinzufügen" aus, oder wählen Sie " Anbieter hinzufügen " im Abschnitt " Identitätsanbieter " aus.
Wählen Sie auf der Seite "Identitätsanbieter hinzufügen" "OpenID Connect" als Anbieter aus.
Geben Sie für den OpenID-Anbieternamen den Anzeigenamen ein, den Sie für Ihren OIDC-Anbieter ausgewählt haben.
Wählen Sie unter der OpenID Connect-Anbieterkonfiguration, wenn Sie über ein Metadatendokument des Identitätsanbieters verfügen, die Dokument-URL für den Metadateneintrag aus.
Wenn Sie kein Metadatendokument haben, wählen Sie "Metadaten eingeben" aus, und geben Sie jede URL vom Identitätsanbieter in das entsprechende Feld ein.
Geben Sie unter der App-Registrierung die Werte an, die Sie zuvor für Client-ID und geheimen Clientschlüssel gesammelt haben.
Wenn dies der erste Identitätsanbieter für die Anwendung ist, wird der Abschnitt " App Service-Authentifizierungseinstellungen " mit Einstellungen angezeigt, z. B. wie Ihre Anwendung auf nicht authentifizierte Anforderungen reagiert. Die Standardauswahl leitet alle Anforderungen um, um sich beim neuen Anbieter anzumelden.
Wenn Sie bereits einen Identitätsanbieter für die App konfiguriert haben, wird dieser Abschnitt nicht angezeigt. Sie können die Einstellungen später bei Bedarf anpassen.
Wählen Sie "Hinzufügen" aus, um die Einrichtung des Identitätsanbieters abzuschließen.
Auf der Seite <"Authentifizierung" wird jetzt oidc_friendly_name>(benutzerdefinierter Anbieter) im Abschnitt "Identitätsanbieter" angezeigt. Sie können die Einstellungen des Anbieters bearbeiten, indem Sie unter "Bearbeiten" das Stiftsymbol auswählen.
Im Abschnitt " Authentifizierungseinstellungen " werden Einstellungen angezeigt, z. B. wie die Anwendung auf nicht authentifizierte Anforderungen reagiert. Sie können diese Einstellungen bearbeiten, indem Sie neben den Authentifizierungseinstellungen"Bearbeiten" auswählen. Weitere Informationen zu den Optionen finden Sie unter Authentifizierungsfluss.
Der geheime Anwendungsschlüssel wird als Steckplatz-Sticky-Anwendungseinstellung mit dem Namen <oidc_friendly_name>_AUTHENTICATION_SECRETgespeichert. Sie können die Einstellung auf der Registerkarte "App-Einstellungen " der Seite "Umgebungsvariablen " Ihrer App im Portal sehen. Wenn Sie den geheimen Schlüssel in Azure Key Vault verwalten möchten, können Sie die Einstellung bearbeiten, um Key Vault-Verweise zu verwenden.
Hinweis
Um Bereiche hinzuzufügen, definieren Sie die Berechtigungen, die Ihre Anwendung im Registrierungsportal des Anbieters hat. Die App kann Bereiche anfordern, die diese Berechtigungen zur Anmeldezeit verwenden.
- Azure erfordert
openid,profileundemailBereiche. Stellen Sie sicher, dass Sie die App-Registrierung in Ihrem Identitätsanbieter mit mindestens diesen Bereichen konfigurieren. - Der
audBereich muss mit der konfigurierten Client-ID identisch sein. Sie können die zulässigen Benutzergruppen für diesen Anbieter nicht konfigurieren.