規則。火庫。要求
介面靜態
傳入請求上下文。
特性
授權
請求身份驗證上下文。
-
uid
- 請求使用者的 UID。 -
token
- JWT 令牌宣告的對應。
token
映射包含以下值:
場地 | 描述 |
---|---|
`電子郵件` | 與帳戶關聯的電子郵件地址(如果存在)。 |
`電子郵件已驗證` | 如果使用者已驗證他們有權存取「電子郵件」位址,則為「true」。 |
`電話號碼` | 與帳戶關聯的電話號碼(如果存在)。 |
`名字` | 使用者的顯示名稱(如果已設定)。 |
`子` | 用戶的 Firebase UID。這在專案中是獨一無二的。 |
`firebase.identities` | 與該使用者帳戶關聯的所有身分的對應。地圖的按鍵可以是以下任一:`email`、`phone`、`google.com`、`facebook.com`、`github.com`、`twitter.com`。對應的值是與帳戶關聯的每個身分提供者的唯一識別碼清單。例如,`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.租戶` | 與帳戶關聯的tenantId(如果存在)。例如`tenant2-m6tyz` |
方法
請求方法。之一:
-
get
-
list
-
create
-
update
-
delete
小路
非空規則.Path
受影響資源的路徑。
詢問
非空白規則.Map
查詢屬性的對應(如果存在)。
-
limit
- 查詢限制子句。 -
offset
- 查詢偏移子句。 -
orderBy
- 查詢 orderBy 子句。
例子
// Limit documents per request to 50
allow list: if request.query.limit <= 50
資源
新的資源值僅在寫入請求時出現。
時間
非空規則.時間戳
當服務收到請求時。
對於包含伺服器端時間戳記的 Firestore 寫入操作,該時間將等於伺服器時間戳記。
例子
// Make sure that 'myServerTimestampField' was set using a
// server-side timestamp.
request.time == request.resource.data.myServerTimestampField