インターフェース: リクエスト

プロパティ

認証

ルール.マップ

認証コンテキストを要求します。

  • uid - 要求元のユーザーの UID。
  • token - JWT トークン クレームのマップ。

tokenマップには次の値が含まれます。


分野説明
「メール」アカウントに関連付けられている電子メール アドレス (存在する場合)。
`メール認証済み`ユーザーが「電子メール」アドレスにアクセスできることを確認した場合は「true」。
`電話番号`アカウントに関連付けられている電話番号 (存在する場合)。
「名前」ユーザーの表示名 (設定されている場合)。
「サブ」ユーザーの Firebase UID。これはプロジェクト内で一意です。
「firebase.identities」このユーザーのアカウントに関連付けられているすべての ID のマップ。マップのキーは、「email」、「phone」、「google.com」、「facebook.com」、「github.com」、「twitter.com」のいずれかになります。マップの値は、アカウントに関連付けられた各 ID プロバイダーの一意の識別子のリストです。たとえば、`request.auth.token.firebase.identities["google.com"][0]` には、アカウントに関連付けられた最初の Google ユーザー ID が含まれています。
「firebase.sign_in_provider」このトークンを取得するために使用されるサインイン プロバイダー。次の文字列のいずれかを指定できます: 「custom」、「password」、「phone」、「anonymous」、「google.com」、「facebook.com」、「github.com」、「twitter.com」。
「firebase.tenant」アカウントに関連付けられた tenantId (存在する場合)。例: `tenant2-m6tyz`

方法

null 以外のrules.String

リクエストメソッド。の一つ:

  • get
  • list
  • create
  • update
  • delete

パス

null 以外のルール。パス

影響を受けるリソースのパス。

クエリ

null 以外のルール。マップ

クエリ プロパティのマップ (存在する場合)。

  • limit - クエリ制限句。
  • offset - クエリオフセット句。
  • orderBy - orderBy 句をクエリします。

// Limit documents per request to 50
allow list: if request.query.limit <= 50

リソース

null 以外のrules.firestore.Resource

新しいリソース値。書き込みリクエストの場合にのみ存在します。

時間

null 以外のルール。タイムスタンプ

リクエストがサービスによって受信されたとき。

サーバー側のタイムスタンプを含む Firestore 書き込み操作の場合、この時間はサーバーのタイムスタンプと等しくなります。

// Make sure that 'myServerTimestampField' was set using a
// server-side timestamp.
request.time == request.resource.data.myServerTimestampField