rules. firestore. Solicitud
El contexto de la solicitud entrante.
Propiedades
auth
Contexto de autenticación de la solicitud
uid
: Es el UID del usuario solicitante.token
: Un mapa de las reclamaciones de token JWT.
El mapa token
contiene los siguientes valores:
Campo | Descripción |
---|---|
“email” | Dirección de correo electrónico asociada con la cuenta, si está presente. |
“email_verified” | `true` si el usuario verificó que tiene acceso al `email` web. |
`número_teléfono` | Número de teléfono asociado con la cuenta, si está presente. |
“name” | Nombre visible del usuario, si se configuró. |
“sub” | UID de Firebase del usuario. Es único dentro de un proyecto. |
“firebase.identities” | Un mapa de todas las identidades asociadas con la cuenta de este usuario. Las claves del mapa pueden ser cualquiera de las siguientes opciones: `email`, `phone`, `google.com`, `facebook.com`, `github.com`, `twitter.com`. Los valores de el mapa contiene listas de identificadores únicos para cada identidad proveedor asociado a la cuenta. Por ejemplo: `request.auth.token.firebase.identities["google.com"][0]` contiene el elemento el primer ID de usuario de Google asociado a la cuenta. |
“firebase.sign_in_provider” | Proveedor de acceso utilizado para obtener este token. Puede ser uno de los las siguientes cadenas: `custom`, `password`, `phone`, `anonymous`, `google.com`, `facebook.com`, `github.com`, `twitter.com`. |
“firebase.tenant” | Es el ID de usuario asociado con la cuenta, si está presente. p.ej., “customer2-m6tyz” |
method
rules.String no nulo
Es el método de solicitud. Uno de los siguientes:
get
list
create
update
delete
ruta
rules.Path no nulas
Ruta de acceso del recurso afectado.
consulta
rules.Map no nulo
Mapa de las propiedades de la consulta, cuando están presentes.
limit
: Cláusula de límite de consultas.offset
: Cláusula de desplazamiento de consulta.orderBy
: Cláusula orderBy de consulta.
Ejemplo
// Limit documents per request to 50
allow list: if request.query.limit <= 50
recurso
rules.firestore.Resource no nulo
El valor del recurso nuevo, presente solo en las solicitudes de escritura.
hora
rules.Timestamp no nula
Indica cuándo el servicio recibió la solicitud.
Para las operaciones de escritura de Firestore que incluyen marcas de tiempo del servidor, será igual a la marca de tiempo del servidor.
Ejemplo
// Make sure that 'myServerTimestampField' was set using a
// server-side timestamp.
request.time == request.resource.data.myServerTimestampField