RealtimeDatabaseAuditMetadata

FirebaseRealtimeDatabaseAuditMetaData est exposé dans le cadre des nouveaux messages protoPayload.metadata .

Représentation 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
}
Des champs
requestType

enum ( RealtimeDatabaseAuditMetadata.RequestType )

Préservez la distinction entre les opérations temps réel et REST. Contrairement à la sortie du profileur RTDB, les journaux d'accès aux données d'audit Cloud pour RTDB regroupent les opérations realtime-* et rest-* en méthodes Read , Write et Update .

protocol

enum ( RealtimeDatabaseAuditMetadata.Protocol )

Stockez le protocole utilisé.

restMetadata

object ( RealtimeDatabaseAuditMetadata.RestMetadata )

Détails pertinents uniquement pour les requêtes REST.

precondition

object ( RealtimeDatabaseAuditMetadata.Precondition )

Une condition préalable facultative pour un Update . Non présent pour les autres méthodes.

executeDuration

Duration

Temps d’exécution métier du serveur RTDB. Non présent pour : Connect , Disconnect ou Unlisten .

pendingDuration

Duration

Temps d'attente du serveur RTDB avant le début de l'exécution. Non présent pour : Unlisten initiée par le serveur ou RunOnDisconnect .

path

string

Le chemin des données auquel vous avez accédé. Non présent pour : Connect , Disconnect ou RunOnDisconnect .

Champ d'union operation_metadata . Plus de détails sur Listen s, Read s ou Update s. operation_metadata ne peut être que l'un des éléments suivants :
queryMetadata

object ( RealtimeDatabaseAuditMetadata.QueryMetadata )

Informations de métadonnées pour un Listen ou Read .

writeMetadata

object ( RealtimeDatabaseAuditMetadata.WriteMetadata )

Informations sur les métadonnées pour une Update .

estimatedPayloadSizeBytes

int64

Taille de réponse estimée de l’opération auditée en octets. Ne pas utiliser à des fins de facturation. Non présent pour : Connect , Disconnect , Unlisten ou OnDisconnectCancel .

RealtimeDatabaseAuditMetadata.QueryMetadata

QueryMetadata inclut des détails supplémentaires sur les requêtes envoyées pour Listen ou Read .

Représentation 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
}
Des champs
orderBy

string

Comment la requête est-elle ordonnée ? Valeurs possibles : $key , $priority , $value , <path> .

direction

enum ( RealtimeDatabaseAuditMetadata.QueryMetadata.Direction )

Si limitToLast est utilisé, ASCENDING . Si limitToFirst est utilisé, DESCENDING . Si ni l’un ni l’autre n’est utilisé, mais que startAt ou startAfter est utilisé, DESCENDING . Dans tous les autres cas, ASCENDING .

startAt

object ( RealtimeDatabaseAuditMetadata.QueryMetadata.Bound )

Le point de départ de la requête.

endAt

object ( RealtimeDatabaseAuditMetadata.QueryMetadata.Bound )

Le point final de la requête.

equalTo

object ( RealtimeDatabaseAuditMetadata.QueryMetadata.Bound )

Si spécifié, les résultats de la requête incluent uniquement les enfants qui correspondent à la valeur spécifiée.

unindexed

boolean

Si c'est vrai, RTDB n'utilise pas d'index côté serveur pour servir les données de la requête. Cela signifie que RTDB peut envoyer plus de données que ce que la requête sélectionne. Sinon, pas présent.

limit

integer

La requête était limitée au premier ou au dernier nombre limit d'enfants. Non présent lorsque ni limitToLast ni limitToFirst ne sont utilisés.

RealtimeDatabaseAuditMetadata.QueryMetadata.Bound

Un Bound est un point de terminaison de requête avec une clé de secours.

Représentation JSON
{
  "value": value,
  "key": string,
  "exclusive": boolean
}
Des champs
value

value ( Value format)

Une valeur de l'instance de base de données.

key

string

La clé de secours. Si vous commandez par $key ce champ est omis car son contenu est stocké dans value à la place.

exclusive

boolean

True si startAfter ou endBefore ont été utilisés. Dans ce cas, les résultats de la requête ne contiendront pas les valeurs du point de terminaison.

RealtimeDatabaseAuditMetadata.WriteMetadata

WriteMetadata inclut des détails supplémentaires sur Update s.

Représentation JSON
{
  "paths": {
    string: string,
    ...
  }
}
Des champs
paths

map (key: string, value: int64 )

Les chemins modifiés lors d'une mise à jour multi-chemins ainsi que la taille des données écrites sur chaque chemin.

RealtimeDatabaseAuditMetadata.RestMetadata

RestMetadata contient des détails pertinents uniquement pour les requêtes REST.

Représentation JSON
{
  "requestUri": string,
  "requestMethod": enum (RealtimeDatabaseAuditMetadata.RestMetadata.Method)
}
Des champs
requestUri

string

L'URL complète de la base de données, y compris le chemin : https://[NAMESPACE].us-central1.firebasedatabase.app/a/b/c.json .

requestMethod

enum ( RealtimeDatabaseAuditMetadata.RestMetadata.Method )

Pour les requêtes REST, quelle méthode a été utilisée. Laissé non spécifié pour les requêtes non REST ou si une méthode n'était pas disponible.

RealtimeDatabaseAuditMetadata.Precondition

Precondition décrit la condition préalable, le cas échéant, qui a été utilisée pour un Update . Update les s avec des conditions préalables plus communément appelées transactions dans RTDB.

Représentation JSON
{
  "preconditionType": enum (RealtimeDatabaseAuditMetadata.Precondition.PreconditionType),
  "hash": string
}
Des champs
preconditionType

enum ( RealtimeDatabaseAuditMetadata.Precondition.PreconditionType )

Le type de condition préalable utilisé.

hash

string

Un hachage SHA1 des données que le client s'attend à trouver sur path . Pour les requêtes REST, cette valeur est envoyée dans un en-tête ETAG.