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 )

Preserve a distinção entre operações em tempo real e REST. Ao contrário da saída do criador de perfil RTDB, os logs de acesso a dados de auditoria de nuvem para RTDB reduzem as operações realtime-* e rest-* nos 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 presente para nenhum outro método.

executeDuration

Duration

Tempo de execução de negócios do servidor RTDB. Não presente 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 de dados que foi acessado. Não presente para: Connect , Disconnect ou RunOnDisconnect .

Campo de união operation_metadata . Mais detalhes sobre Listen s, Read s ou Update s. operation_metadata pode ser apenas um dos seguintes:
queryMetadata

object ( RealtimeDatabaseAuditMetadata.QueryMetadata )

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

writeMetadata

object ( RealtimeDatabaseAuditMetadata.WriteMetadata )

Informações de metadados para uma Update .

estimatedPayloadSizeBytes

int64

O tamanho de resposta estimado da operação auditada em bytes. Não use para fins de cobrança. Não presente para: Connect , Disconnect , Unlisten ou OnDisconnectCancel .

RealtimeDatabaseAuditMetadata.QueryMetadata

QueryMetadata inclui detalhes adicionais sobre consultas enviadas para Listen s ou Read s.

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 for usado, DESCENDING . Em todos os outros casos, ASCENDING .

startAt

object ( RealtimeDatabaseAuditMetadata.QueryMetadata.Bound )

O ponto inicial da consulta.

endAt

object ( RealtimeDatabaseAuditMetadata.QueryMetadata.Bound )

O ponto final 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 fornecer dados para a consulta. Isso significa que o RTDB pode estar enviando mais dados do que a consulta seleciona. Caso contrário, não presente.

limit

integer

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

RealtimeDatabaseAuditMetadata.QueryMetadata.Bound

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

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 de retorno. Se ordenar por $key , este campo é omitido porque seu conteúdo é armazenado em value .

exclusive

boolean

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

RealtimeDatabaseAuditMetadata.WriteMetadata

WriteMetadata inclui detalhes adicionais sobre Update s.

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

map (key: string, value: int64 )

Os caminhos modificados em uma atualização de caminhos múltiplos 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

A URL completa 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. Não especificado para solicitações não REST ou se um método não estiver disponível.

RealtimeDatabaseAuditMetadata.Pré-condição

Precondition -condição descreve a pré-condição, se houver, que foi usada para um Update . Update s com pré-condições conhecidas mais comumente em 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 usado.

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.