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.
Hinweise
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.