Interfaz: solicitud

Propiedades

auth

rules.Map

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