Información de registro de auditoría

En este documento, se describen los registros de auditoría de Firestore con compatibilidad con MongoDB.Los servicios de Google Cloud generan registros de auditoría que registran las actividades administrativas y de acceso dentro de tus recursos de Google Cloud . Para obtener más información sobre los Registros de auditoría de Cloud, consulta los siguientes recursos:

Notas

Cuando configures el registro de auditoría, usa el nombre de servicio datastore.googleapis.com para configurar datastore.googleapis.com y firestore.googleapis.com.Una vez configurados, los registros de la API de compatibilidad de Firestore con MongoDB incluyen el nombre del servicio firestore.googleapis.com.

Para ver el tiempo que tardó en procesarse una solicitud de DATA_READ o DATA_WRITE, consulta el campo processing_duration dentro del objeto metadata de un AuditLog. processing_duration describe el tiempo que tardó la base de datos en procesar una solicitud. Este valor es menor que la latencia del usuario final. En particular, no incluye la sobrecarga de red.

Nombre del servicio

Los registros de auditoría de Firestore usan el nombre de servicio firestore.googleapis.com. Filtra este servicio:

    protoPayload.serviceName="firestore.googleapis.com"
  

Métodos por tipo de permiso

Cada permiso de IAM tiene una propiedad type, cuyo valor es una enumeración que puede ser uno de cuatro valores: ADMIN_READ, ADMIN_WRITE, DATA_READ o DATA_WRITE. Cuando llamas a un método, Firebase genera un registro de auditoría cuya categoría depende de la propiedad type del permiso necesario para realizar el método. Los métodos que requieren un permiso de IAM con el valor de propiedad type de DATA_READ, DATA_WRITE o ADMIN_READ generan registros de auditoría de acceso a los datos. Los métodos que requieren un permiso de IAM con el valor de propiedad type de ADMIN_WRITE generan registros de auditoría de actividad del administrador.

Tipo de permiso Métodos
ADMIN_READ google.cloud.location.Locations.GetLocation
google.cloud.location.Locations.ListLocations
google.firestore.admin.v1.FirestoreAdmin.GetBackup
google.firestore.admin.v1.FirestoreAdmin.GetBackupSchedule
google.firestore.admin.v1.FirestoreAdmin.GetDatabase
google.firestore.admin.v1.FirestoreAdmin.GetField
google.firestore.admin.v1.FirestoreAdmin.GetIndex
google.firestore.admin.v1.FirestoreAdmin.ListBackupSchedules
google.firestore.admin.v1.FirestoreAdmin.ListBackups
google.firestore.admin.v1.FirestoreAdmin.ListDatabases
google.firestore.admin.v1.FirestoreAdmin.ListFields
google.firestore.admin.v1.FirestoreAdmin.ListIndexes
google.firestore.admin.v1beta1.FirestoreAdmin.GetIndex
google.firestore.admin.v1.MongoDBCompatible.ListIndexes
google.firestore.admin.v1.MongoDBCompatible.ListDatabases
ADMIN_WRITE
google.firestore.admin.v1.FirestoreAdmin.CreateBackupSchedule
google.firestore.admin.v1.FirestoreAdmin.CreateDatabase
google.firestore.admin.v1.FirestoreAdmin.CreateIndex
google.firestore.admin.v1.FirestoreAdmin.DeleteBackup
google.firestore.admin.v1.FirestoreAdmin.DeleteBackupSchedule
google.firestore.admin.v1.FirestoreAdmin.DeleteDatabase
google.firestore.admin.v1.FirestoreAdmin.DeleteIndex
google.firestore.admin.v1.FirestoreAdmin.RestoreDatabase
google.firestore.admin.v1.FirestoreAdmin.UpdateBackupSchedule
google.firestore.admin.v1.FirestoreAdmin.UpdateDatabase
google.firestore.admin.v1.FirestoreAdmin.UpdateField
google.longrunning.Operations.CancelOperation
google.longrunning.Operations.DeleteOperation
DATA_READ
google.firestore.v1.MongoDBCompatible.Find
google.firestore.v1.MongoDBCompatible.Aggregate
google.firestore.v1.MongoDBCompatible.GetMore
google.firestore.v1.MongoDBCompatible.ListCollections
google.firestore.v1.MongoDBCompatible.Count
google.firestore.v1.MongoDBCompatible.Distinct
google.firestore.v1.MongoDBCompatible.CommitTransaction
google.firestore.v1.MongoDBCompatible.AbortTransaction
google.firestore.v1.MongoDBCompatible.EndSessions
google.firestore.v1.MongoDBCompatible.KillCursors
DATA_WRITE google.firestore.v1.MongoDBCompatible.Insert
google.firestore.v1.MongoDBCompatible.Update
google.firestore.v1.MongoDBCompatible.Delete
google.firestore.v1.MongoDBCompatible.FindAndModify
google.firestore.v1.MongoDBCompatible.CreateCollection

Identifica a los emisores de solicitudes

Las entradas del registro de auditoría incluyen información sobre la identidad que realizó la operación registrada. Para identificar un llamador de solicitudes, consulta los siguientes campos dentro de un objeto AuditLog:

  • La identidad del emisor se encuentra en el campo AuthenticationInfo. Esto puede incluir el principalEmail del usuario. Esta información a veces se oculta.

  • El campo callerIp dentro del objeto requestMetadata de una entrada AuditLog incluye la dirección IP del emisor.