EventContext interface

イベントが発生したコンテキスト。

EventContext は: - イベントが発生した時刻。- イベントの一意の識別子。- イベントが発生したリソース(該当する場合)。- イベントをトリガーしたリクエストの承認(該当する場合)。

署名:

export interface EventContext<Params = Record<string, string>> 

プロパティ

プロパティ 説明
認証 { token: object;uid: string;} 関数をトリガーしたユーザーの認証情報。
authType 「管理者」|「ユーザー」|「未認証」 ユーザーの権限のレベル。
eventId 文字列 イベントの一意の識別子。
eventType 文字列 イベントのタイプです。
params パラメータ Realtime Database トリガーのメソッドに渡される path パラメータのワイルドカードの値を含むオブジェクト。
resource リソース イベントを発行したリソース。
timestamp 文字列 イベントのタイムスタンプ(RFC 3339 文字列)。

EventContext.auth

関数をトリガーしたユーザーの認証情報。

このオブジェクトには、認証済みユーザーの uid プロパティと token プロパティが含まれています。トークンキーを含む詳細については、セキュリティ ルールのリファレンスをご覧ください。

このフィールドは、Realtime Database トリガーと呼び出し可能関数に対してのみ入力されます。認証されていないユーザーの場合、このフィールドは null です。Firebase 管理ユーザーと、ユーザー情報を提供しないイベントタイプの場合、このフィールドは存在しません。

署名:

auth?: {
        token: object;
        uid: string;
    };

EventContext.authType

ユーザーの権限のレベル。

指定できる値は次のとおりです。

  • ADMIN: サービス アカウントを介して認証されたデベロッパー ユーザーまたはユーザー。

  • USER: 既知のユーザー。

  • UNAUTHENTICATED: 未認証の操作

  • null: ユーザー情報を提供しないイベントタイプ向け(Realtime Database を除くすべて)。

署名:

authType?: "ADMIN" | "USER" | "UNAUTHENTICATED";

EventContext.eventId

イベントの一意の識別子。

署名:

eventId: string;

EventContext.eventType

イベントのタイプです。

指定できる値は次のとおりです。

  • 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

署名:

eventType: string;

EventContext.params

Realtime Database トリガーのメソッドに渡される path パラメータのワイルドカードの値を含むオブジェクト。

署名:

params: Params;

EventContext.resource

イベントを発行したリソース。

指定できる値は次のとおりです。

アナリティクス: projects/<projectId>/events/<analyticsEventType>

Realtime Database: projects/_/instances/<databaseInstance>/refs/<databasePath>

ストレージ: projects/_/buckets/<bucketName>/objects/<fileName>#<generation>

認証: projects/<projectId>

Pub/Sub: projects/<projectId>/topics/<topicName>

Realtime Database インスタンスと Cloud Storage バケットはグローバルに一意であり、プロジェクトには関連付けられていないため、リソースは projects/_ で始まります。アンダースコアは有効なプロジェクト名ではありません。

署名:

resource: Resource;

EventContext.timestamp

イベントのタイムスタンプ(RFC 3339 文字列)。

署名:

timestamp: string;