Der Kontext, in dem ein Ereignis aufgetreten ist.
Ein EventContext beschreibt: – Die Zeit, zu der ein Ereignis aufgetreten ist. – Eine eindeutige Kennung des Ereignisses. – Die Ressource, auf der das Ereignis aufgetreten ist, falls zutreffend. - Autorisierung der Anfrage, die das Ereignis ausgelöst hat, sofern zutreffend und verfügbar.
Unterschrift:
export interface EventContext<Params = Record<string, string>>
Eigenschaften
Eigentum | Typ | Beschreibung |
---|---|---|
Autor | { token: object; uid: string; } | Authentifizierungsinformationen für den Benutzer, der die Funktion ausgelöst hat. |
Authentifizierungstyp | „ADMIN“ | „BENUTZER“ | „UNAUTHENTIFIZIERT“ | Die Berechtigungsstufe für einen Benutzer. |
Ereignis-ID | Zeichenfolge | Der eindeutige Bezeichner des Ereignisses. |
Ereignistyp | Zeichenfolge | Art der Veranstaltung. |
Parameter | Parameter | Ein Objekt, das die Werte der Platzhalter im path enthält, der der Methode für einen Echtzeitdatenbank-Trigger bereitgestellt wird. |
Ressource | Ressource | Die Ressource, die das Ereignis ausgegeben hat. |
Zeitstempel | Zeichenfolge | Zeitstempel für das Ereignis als RFC 3339- String. |
EventContext.auth
Authentifizierungsinformationen für den Benutzer, der die Funktion ausgelöst hat.
Dieses Objekt enthält uid
und token
Eigenschaften für authentifizierte Benutzer. Weitere Einzelheiten, einschließlich Token-Schlüssel, finden Sie in der Referenz zu den Sicherheitsregeln .
Dieses Feld wird nur für Echtzeitdatenbank-Trigger und aufrufbare Funktionen ausgefüllt. Für einen nicht authentifizierten Benutzer ist dieses Feld null. Für Firebase-Administratorbenutzer und Ereignistypen, die keine Benutzerinformationen bereitstellen, ist dieses Feld nicht vorhanden.
Unterschrift:
auth?: {
token: object;
uid: string;
};
EventContext.authType
Die Berechtigungsstufe für einen Benutzer.
Gültige Werte sind:
ADMIN
: Entwicklerbenutzer oder über ein Dienstkonto authentifizierter Benutzer.USER
: Bekannter Benutzer.UNAUTHENTICATED
: Nicht authentifizierte Aktionnull
: Für Ereignistypen, die keine Benutzerinformationen bereitstellen (alle außer Echtzeitdatenbank).
Unterschrift:
authType?: "ADMIN" | "USER" | "UNAUTHENTICATED";
EventContext.eventId
Der eindeutige Bezeichner des Ereignisses.
Unterschrift:
eventId: string;
EventContext.eventType
Art der Veranstaltung.
Mögliche Werte sind:
google.analytics.event.log
google.firebase.auth.user.create
google.firebase.auth.user.delete
google.firebase.database.ref.write
google.firebase.database.ref.create
google.firebase.database.ref.update
google.firebase.database.ref.delete
google.firestore.document.write
google.firestore.document.create
google.firestore.document.update
google.firestore.document.delete
google.pubsub.topic.publish
google.firebase.remoteconfig.update
google.storage.object.finalize
google.storage.object.archive
google.storage.object.delete
google.storage.object.metadataUpdate
google.testing.testMatrix.complete
Unterschrift:
eventType: string;
EventContext.params
Ein Objekt, das die Werte der Platzhalter im path
enthält, der der Methode für einen Echtzeitdatenbank-Trigger bereitgestellt wird.
Unterschrift:
params: Params;
EventContext.resource
Die Ressource, die das Ereignis ausgegeben hat.
Gültige Werte sind:
Analytics: projects/<projectId>/events/<analyticsEventType>
Echtzeitdatenbank: projects/_/instances/<databaseInstance>/refs/<databasePath>
Speicher: projects/_/buckets/<bucketName>/objects/<fileName>#<generation>
Authentifizierung: projects/<projectId>
Pub/Sub: projects/<projectId>/topics/<topicName>
Da Echtzeitdatenbankinstanzen und Cloud Storage-Buckets global eindeutig und nicht an das Projekt gebunden sind, beginnen ihre Ressourcen mit projects/_
. Unterstrich ist kein gültiger Projektname.
Unterschrift:
resource: Resource;
EventContext.timestamp
Zeitstempel für das Ereignis als RFC 3339- String.
Unterschrift:
timestamp: string;