Authentifizierungsablauf mit asynchronen Funktionen anpassen
In diesem Dokument wird gezeigt, wie Sie die Identity Platform-Authentifizierung mit asynchronen Cloud Run-Funktionen erweitern.
Mit asynchronen Funktionen können Sie nicht blockierende Aufgaben als Reaktion auf das Erstellen und Löschen von Nutzern auslösen. Sie sind nützlich, um lang andauernde Vorgänge zu starten oder Hilfsaufgaben auszuführen, z. B. das Senden einer Begrüßungs-E-Mail.
Wie Sie das Ergebnis eines Authentifizierungsvorgangs direkt ändern, erfahren Sie unter Authentifizierung mit Blockierfunktionen erweitern. Das Nutzerobjekt, das eine asynchrone Funktion empfängt, enthält keine Aktualisierungen von der Blockierfunktion.
Hinweis
Erstellen Sie eine Anwendung mit Identity Platform. Weitere Informationen dazu finden Sie in der Kurzanleitung.
Asynchrone Funktion erstellen
Führen Sie die Schritte unter Erste Schritte: Schreiben, Testen und Bereitstellen von Funktionen aus, um eine asynchrone Funktion zu erstellen und bereitzustellen.
Auf die Erstellung von Nutzern reagieren
Das Ereignis onCreate wird jedes Mal ausgelöst, wenn ein Nutzerkonto erstellt wird. Dazu gehören anonyme Sitzungen und Konten, die mit dem Admin SDK erstellt wurden. Die Funktion wird nicht ausgelöst, wenn sich ein Nutzer zum ersten Mal über ein benutzerdefiniertes Token anmeldet.
Das folgende Beispiel zeigt, wie ein Handler für onCreate registriert wird:
Node.js
exports.myFunction = functions.auth.user().onCreate((user) => {
// TODO.
});
Auf das Löschen von Nutzern reagieren
Das Ereignis onDelete wird ausgelöst, wenn ein Nutzerkonto gelöscht wird. Das folgende Beispiel zeigt, wie ein Handler für onDelete registriert wird:
Node.js
exports.myFunction = functions.auth.user().onDelete((user) => {
// TODO.
});
Nutzerinformationen abrufen
Die Ereignisse onCreate und onDelete stellen User- und EventContext-Objekte bereit, die Informationen zum erstellten oder gelöschten Nutzer enthalten. Beispiel:
Node.js
exports.myFunction = functions.auth.user().onCreate((user, context) => {
const email = user.email; // The email of the user.
const displayName = user.displayName; // The display name of the user.
});
Eine Liste der verfügbaren Felder finden Sie in der UserRecord API-Referenz und der EventContext API-Referenz.
Nächste Schritte
- Authentifizierung mit Blockierfunktionen erweitern.
- Weitere Informationen zu Cloud Run-Funktionen.