Wenn eine E-Mail-ID angegeben ist, wird geprüft, ob ein Nutzerkonto mit der E-Mail-Adresse registriert ist. Wenn ein Konto registriert ist, werden alle Anbieter abgerufen, die mit der E-Mail-Adresse des Kontos verknüpft sind.
Wenn die Anbieter-ID eines Identitätsanbieters (Identity Provider, IdP) angegeben ist, wird ein Autorisierungs-URI für den IdP erstellt. Der Nutzer kann zu diesem URI weitergeleitet werden, um sich beim Identitätsanbieter anzumelden.
In der Anfrage ist ein API-Schlüssel erforderlich, um das Google Cloud-Projekt zu identifizieren.
HTTP-Anfrage
POST https://identitytoolkit.googleapis.com/v1/accounts:createAuthUri
Die URL verwendet die Syntax der gRPC-Transcodierung.
Anfragetext
Der Anfragetext enthält Daten mit folgender Struktur:
JSON-Darstellung |
---|
{ "identifier": string, "continueUri": string, "openidRealm": string, "providerId": string, "oauthConsumerKey": string, "oauthScope": string, "context": string, "otaApp": string, "appId": string, "hostedDomain": string, "sessionId": string, "authFlowType": string, "customParameter": { string: string, ... }, "tenantId": string } |
Felder | |
---|---|
identifier |
Die E-Mail-ID des Nutzerkontos, für das verknüpfte Anbieter abgerufen werden sollen. Mindestens eines der Felder Die E-Mail-Adresse darf maximal 256 Zeichen lang sein und muss das Format |
continueUri |
Eine gültige URL, an die der IdP den Nutzer zurückleiten soll. Die URL darf keine Fragmente oder den reservierten Abfrageparameter |
openidRealm |
|
providerId |
Die Anbieter-ID des Identitätsanbieters, mit dem sich der Nutzer anmelden soll. Dies sollte eine für die Anmeldung aktivierte Anbieter-ID sein, die entweder aus der Liste der standardmäßig unterstützten Identitätsanbieter stammt oder das Format |
oauthConsumerKey |
|
oauthScope |
Zusätzliche, durch Leerzeichen getrennte OAuth 2.0-Bereiche, die den Umfang der Authentifizierungsanfrage beim Identitätsanbieter angeben. Wird für OAuth 2.0-IdPs verwendet. Wenn dieses Feld festgelegt ist, wird für den Google-Anbieter der Autorisierungscode-Vorgang verwendet. |
context |
Ein opaker String, der verwendet wird, um Kontextinformationen zwischen der Authentifizierungsanfrage und dem Rückruf vom IdP aufrechtzuerhalten. |
otaApp |
|
appId |
|
hostedDomain |
Wird für den Google-Anbieter verwendet. Die vom Nutzer gehostete G Suite-Domain, um die Anmeldung auf Nutzer in dieser Domain zu beschränken. |
sessionId |
Eine Sitzungs-ID, die in „accounts.signInWithIdp“ überprüft werden kann, um Sitzungsfixierungsangriffe zu verhindern. Andernfalls wird ein zufälliger String generiert und als Sitzungs-ID zurückgegeben. |
authFlowType |
Wird für den Google-Anbieter verwendet. Der zu verwendende Authentifizierungsablauf. Falls vorhanden, sollte dies |
customParameter |
Zusätzliche benutzerdefinierte Suchparameter, die dem Autorisierungs-URI hinzugefügt werden sollen. Die folgenden Parameter sind reserviert und können nicht hinzugefügt werden: Für den Microsoft-Anbieter kann der Azure AD-Mandant, bei dem Sie sich anmelden möchten, im benutzerdefinierten Parameter Ein Objekt, das eine Liste von |
tenantId |
Die ID des Identity Platform-Mandanten, für den ein Autorisierungs-URI erstellt oder eine E-Mail-ID abgerufen werden soll. Wenn nicht festgelegt, wird der Vorgang in der Standard-Identity Platform-Instanz im Projekt ausgeführt. |
Antworttext
Antwortnachricht für accounts.createAuthUri
Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:
JSON-Darstellung |
---|
{ "kind": string, "authUri": string, "allProviders": [ string ], "registered": boolean, "providerId": string, "forExistingProvider": boolean, "captchaRequired": boolean, "sessionId": string, "signinMethods": [ string ] } |
Felder | |
---|---|
kind |
|
authUri |
Der Autorisierungs-URI für den angeforderten Anbieter. Nur vorhanden, wenn in der Anfrage eine Anbieter-ID festgelegt ist. |
allProviders[] |
|
registered |
Gibt an, ob die E-Mail-ID einem vorhandenen Konto zugewiesen ist. Nur vorhanden, wenn in der Anfrage eine E-Mail-ID festgelegt ist. |
providerId |
Die Anbieter-ID aus der Anfrage, sofern angegeben. |
forExistingProvider |
Gibt an, ob sich der Nutzer zuvor mit der Anbieter-ID in der Anfrage angemeldet hat. Nur vorhanden, wenn in der Anfrage eine registrierte E-Mail-ID festgelegt ist. |
captchaRequired |
Ob ein CAPTCHA erforderlich ist, weil es zu viele fehlgeschlagene Anmeldeversuche des Nutzers gab. Nur vorhanden, wenn in der Anfrage eine registrierte E-Mail-ID festgelegt ist. |
sessionId |
Die Sitzungs-ID aus der Anfrage oder ein zufälliger String, der von „accounts.createAuthUri“ generiert wird, falls nicht vorhanden. Sie wird verwendet, um Sitzungsfixierungsangriffe zu verhindern. |
signinMethods[] |
Die Liste der Anmeldemethoden, die der Nutzer zuvor verwendet hat. Jedes Element ist |
Autorisierungsbereiche
Erfordert einen der folgenden OAuth-Bereiche:
https://www.googleapis.com/auth/identitytoolkit
https://www.googleapis.com/auth/cloud-platform
Weitere Informationen finden Sie unter Authentication Overview.