rules. firestore. Solicitação
O contexto da solicitação recebida.
Propriedades
auth
rules.Map (em inglês)
Solicitar contexto de autenticação.
uid
: o UID do usuário solicitante.token
: um mapa de declarações do token JWT.
O mapa token
contém os seguintes valores:
Campo | Descrição |
---|---|
"e-mail" | O endereço de e-mail associado à conta, se essa informação existir. |
"email_verificado" | "true" se o usuário tiver verificado que tem acesso a "email" endereço IP. |
"número_do_telefone" | O número de telefone associado à conta, se essa informação existir. |
`nome` | O nome de exibição do usuário, se ele tiver sido definido. |
"sub" | O UID do Firebase do usuário. Ele é exclusivo 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 chaves: `email`, `phone`, `google.com`, `facebook.com`, `github.com`, `twitter.com`. Os valores de mapa são listas de identificadores exclusivos de cada identidade de nuvem 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 receber esse token. Pode ser um dos seguintes strings: `custom`, `password`, `phone`, `anonymous`, `google.com`, `facebook.com`, `github.com`, `twitter.com`. |
"firebase.tenant" | O tenantId associado à conta, se houver. Por exemplo: "tenant2-m6tyz" |
method
rules.String não nulos
O método de solicitação. Uma destas:
get
list
create
update
delete
path
rules.Path não nulos
Caminho do recurso afetado.
consulta
rules.Map não nulos
Mapa das propriedades da consulta, quando presente.
limit
: cláusula de limite de consulta.offset
: cláusula de deslocamento de consulta.orderBy
: cláusula orderBy da consulta.
Exemplo
// Limit documents per request to 50
allow list: if request.query.limit <= 50
recurso
rules.firestore.Resource não nulo
O novo valor do recurso, presente apenas nas solicitações de gravação.
tempo
rules.Timestamp não nulos
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, nesse horário 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