RealtimeDatabaseAuditMetadata

FirebaseRealtimeDatabaseAuditMetaData é exposto como parte das novas mensagens protoPayload.metadata.

Representação JSON
{
  "requestType": enum (RealtimeDatabaseAuditMetadata.RequestType),
  "protocol": enum (RealtimeDatabaseAuditMetadata.Protocol),
  "restMetadata": {
    object (RealtimeDatabaseAuditMetadata.RestMetadata)
  },
  "precondition": {
    object (RealtimeDatabaseAuditMetadata.Precondition)
  },
  "executeDuration": Duration,
  "pendingDuration": Duration,
  "path": string,

  // Union field operation_metadata can be only one of the following:
  "queryMetadata": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata)
  },
  "writeMetadata": {
    object (RealtimeDatabaseAuditMetadata.WriteMetadata)
  }
  // End of list of possible types for union field operation_metadata.
  "estimatedPayloadSizeBytes": int64
}
Campos
requestType

enum (RealtimeDatabaseAuditMetadata.RequestType)

Preservar a distinção entre operações em tempo real e REST. Ao contrário da saída do criador de perfil do RTDB, os registros de acesso a dados de auditoria do Cloud para o RTDB agrupam as operações realtime-* e rest-* em métodos Read, Write e Update.

protocol

enum (RealtimeDatabaseAuditMetadata.Protocol)

Armazene qual protocolo foi usado.

restMetadata

object (RealtimeDatabaseAuditMetadata.RestMetadata)

Detalhes relevantes apenas para solicitações REST.

precondition

object (RealtimeDatabaseAuditMetadata.Precondition)

Uma pré-condição opcional para um Update. Não está presente para nenhum outro método.

executeDuration

Duration

Tempo de execução comercial do servidor RTDB. Não existe para: Connect, Disconnect ou Unlisten.

pendingDuration

Duration

Tempo de fila do servidor RTDB antes do início da execução. Não presente para: Unlisten iniciado pelo servidor ou RunOnDisconnect.

path

string

O caminho dos dados que foi acessado. Não existe para: Connect, Disconnect ou RunOnDisconnect.

Campo de união operation_metadata. Mais detalhes sobre Listens, Reads ou Updates. operation_metadata só pode ser de um dos tipos a seguir:
queryMetadata

object (RealtimeDatabaseAuditMetadata.QueryMetadata)

Informações de metadados para um Listen ou um Read.

writeMetadata

object (RealtimeDatabaseAuditMetadata.WriteMetadata)

Informações de metadados para um Update.

estimatedPayloadSizeBytes

int64

O tamanho estimado da resposta da operação auditada, em bytes. Não use para fins de faturamento. Não disponível para: Connect, Disconnect, Unlisten ou OnDisconnectCancel.

RealtimeDatabaseAuditMetadata.QueryMetadata

QueryMetadata inclui mais detalhes sobre consultas enviadas para Listens ou Reads.

Representação JSON
{
  "orderBy": string,
  "direction": enum (RealtimeDatabaseAuditMetadata.QueryMetadata.Direction),
  "startAt": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)
  },
  "endAt": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)
  },
  "equalTo": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)
  },
  "unindexed": boolean,
  "limit": integer
}
Campos
orderBy

string

Como a consulta é ordenada? Valores possíveis: $key, $priority, $value, <path>.

direction

enum (RealtimeDatabaseAuditMetadata.QueryMetadata.Direction)

Se limitToLast for usado, ASCENDING. Se limitToFirst for usado, DESCENDING. Se nenhum for usado, mas startAt ou startAfter forem usados, DESCENDING. Em todos os outros casos, ASCENDING.

startAt

object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)

O ponto de início da consulta.

endAt

object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)

O endpoint da consulta.

equalTo

object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)

Se especificado, os resultados da consulta incluirão apenas filhos que correspondam ao valor especificado.

unindexed

boolean

Se verdadeiro, o RTDB não está usando um índice do lado do servidor para exibir dados para a consulta. Isso significa que o RTDB pode estar enviando mais dados do que a consulta seleciona. Caso contrário, não estará presente.

limit

integer

A consulta foi limitada ao primeiro ou ao último número de limit filhos. Não presente quando nem limitToLast nem limitToFirst são usados.

RealtimeDatabaseAuditMetadata.QueryMetadata.Bound

Um Bound é um endpoint de consulta com uma chave substituta.

Representação JSON
{
  "value": value,
  "key": string,
  "exclusive": boolean
}
Campos
value

value (Value format)

Um valor da instância do banco de dados.

key

string

A chave substituta. Ao ordenar por $key, este campo será omitido porque seu conteúdo está armazenado em value.

exclusive

boolean

Verdadeiro se startAfter ou endBefore tiverem sido usados. Nesse caso, os resultados da consulta não conterão os valores do endpoint.

RealtimeDatabaseAuditMetadata.WriteMetadata

WriteMetadata inclui mais detalhes sobre Updates.

Representação JSON
{
  "paths": {
    string: string,
    ...
  }
}
Campos
paths

map (key: string, value: int64)

Os caminhos modificados em uma atualização de vários caminhos junto com o tamanho dos dados gravados em cada caminho.

RealtimeDatabaseAuditMetadata.RestMetadata

RestMetadata contém detalhes relevantes apenas para solicitações REST.

Representação JSON
{
  "requestUri": string,
  "requestMethod": enum (RealtimeDatabaseAuditMetadata.RestMetadata.Method)
}
Campos
requestUri

string

O URL completo do banco de dados, incluindo o caminho: https://[NAMESPACE].us-central1.firebasedatabase.app/a/b/c.json.

requestMethod

enum (RealtimeDatabaseAuditMetadata.RestMetadata.Method)

Para solicitações REST, qual método foi usado. Deixado não especificado para solicitações não REST ou se um método não estava disponível.

RealtimeDatabaseAuditMetadata.Precondition

Precondition descreve a pré-condição, se houver, que foi usada para uma Update. Updates com condições prévias conhecidas mais comumente no RTDB como transações.

Representação JSON
{
  "preconditionType": enum (RealtimeDatabaseAuditMetadata.Precondition.PreconditionType),
  "hash": string
}
Campos
preconditionType

enum (RealtimeDatabaseAuditMetadata.Precondition.PreconditionType)

O tipo de pré-condição usada.

hash

string

Um hash SHA1 dos dados que o cliente espera estar em path. Para solicitações REST, esse valor é enviado em um cabeçalho ETAG.