Informationen zu Audit-Logging

In diesem Dokument wird Audit-Logging für Firestore mit MongoDB-Kompatibilität beschrieben. Google Cloud -Dienste generieren Audit-Logs, die Verwaltungs- und Zugriffsaktivitäten in Ihren Google Cloud Ressourcen aufzeichnen. Weitere Informationen zu Cloud-Audit-Logs finden Sie hier:

Hinweise

Verwenden Sie beim Konfigurieren der Audit-Protokollierung den Dienstnamen datastore.googleapis.com, um sowohl datastore.googleapis.com als auch firestore.googleapis.com zu konfigurieren.Nach der Konfiguration enthalten Logs für die Firestore with MongoDB Compatibility API den Dienstnamen firestore.googleapis.com.

Die Zeit, die für die Verarbeitung einer DATA_READ- oder DATA_WRITE-Anfrage benötigt wurde, finden Sie im Feld processing_duration im metadata-Objekt einer AuditLog. processing_duration gibt an, wie lange die Datenbank für die Verarbeitung einer Anfrage benötigt hat. Dieser Wert ist kleiner als die Latenz des Endnutzers. Insbesondere ist darin kein Netzwerkoverhead enthalten.

Dienstname

Für Firestore-Audit-Logs wird der Dienstname firestore.googleapis.com verwendet. Nach diesem Dienst filtern:

    protoPayload.serviceName="firestore.googleapis.com"
  

Methoden nach Berechtigungstyp

Jede IAM-Berechtigung hat ein type-Attribut, dessen Wert ein Enum ist, der einen der folgenden vier Werte haben kann: ADMIN_READ, ADMIN_WRITE, DATA_READ oder DATA_WRITE. Wenn Sie eine Methode aufrufen, generiert Firestore ein Audit-Log, dessen Kategorie vom Attribut type der Berechtigung abhängt, die für die Ausführung der Methode erforderlich ist. Methoden, die eine IAM-Berechtigung mit dem type-Attributwert DATA_READ, DATA_WRITE oder ADMIN_READ erfordern, generieren Audit-Logs zum Datenzugriff. Methoden, die eine IAM-Berechtigung mit dem type-Attributwert ADMIN_WRITE erfordern, generieren Audit-Logs zur Administratoraktivität.

Berechtigungstyp Methoden
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

Aufrufer von Anfragen identifizieren

Audit-Logeinträge enthalten Informationen zur Identität, die den erfassten Vorgang ausgeführt hat. Um den Aufrufer einer Anfrage zu ermitteln, sehen Sie sich die folgenden Felder in einem AuditLog-Objekt an:

  • Die Identität des Aufrufers wird im Feld AuthenticationInfo gespeichert. Dazu kann die principalEmail des Nutzers gehören. Diese Informationen werden manchmal entfernt.

  • Das Feld callerIp im requestMetadata-Objekt eines AuditLog-Eintrags enthält die IP-Adresse des Aufrufers.