Interface: Solicitar

Propriedades

autenticação

regras.Mapa

Solicitar contexto de autenticação.

  • uid - o UID do usuário solicitante.
  • token - um mapa de declarações de token JWT.

O mapa de token contém os seguintes valores:


Campo Descrição
`e-mail` O endereço de e-mail associado à conta, se houver.
`email_verified` `true` se o usuário tiver verificado que tem acesso ao endereço de `email`.
`número_telefone` O número de telefone associado à conta, se houver.
`nome` O nome de exibição do usuário, se definido.
`sub` O UID do Firebase do usuário. Isso é único dentro de um projeto.
`firebase.identities` Um mapa de todas as identidades associadas à conta deste usuário. As chaves do mapa podem ser qualquer uma das seguintes: `email`, `phone`, `google.com`, `facebook.com`, `github.com`, `twitter.com`. Os valores do mapa são listas de identificadores exclusivos para cada provedor de identidade associado à conta. Por exemplo, `request.auth.token.firebase.identities["google.com"][0]` contém o primeiro ID de usuário do Google associado à conta.
`firebase.sign_in_provider` O provedor de entrada usado para obter esse token. Pode ser uma das seguintes strings: `custom`, `password`, `phone`, `anonymous`, `google.com`, `facebook.com`, `github.com`, `twitter.com`.
`firebase.tenant` O tenantId associado à conta, se presente. por exemplo, `tenant2-m6tyz`

método

regras não nulas.String

O método de solicitação. Um de:

  • get
  • list
  • create
  • update
  • delete

caminho

regras não nulas.Caminho

Caminho do recurso afetado.

consulta

regras não nulas.Mapa

Mapa das propriedades da consulta, quando presente.

  • limit - cláusula de limite de consulta.
  • offset - cláusula de compensação de consulta.
  • orderBy - consulta a cláusula orderBy.

Exemplo

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

recurso

regras não nulas.firestore.Resource

O novo valor do recurso, presente apenas em solicitações de gravação.

Tempo

regras não nulas.Timestamp

Quando a solicitação foi recebida pelo serviço.

Para operações de gravação do Firestore que incluem carimbos de data/hora do lado do servidor, esse tempo será igual ao carimbo de data/hora do servidor.

Exemplo

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