| Относится только к версии Cloud Firestore Enterprise. |
В этом документе описывается ведение журнала аудита для Cloud Firestore с совместимостью с MongoDB. Сервисы Google Cloud создают журналы аудита, в которых регистрируются действия администратора и доступа к ресурсам Google Cloud .
Дополнительную информацию о журналах облачного аудита см. в следующих разделах:
- Типы журналов аудита
- Структура записи журнала аудита
- Хранение и маршрутизация журналов аудита
- Обзор цен Cloud Logging
- Включить журналы аудита доступа к данным
Примечания
При настройке журнала аудита используйте имя сервиса datastore.googleapis.com для настройки как datastore.googleapis.com , так и firestore.googleapis.com. Once configured, logs for the Cloud Firestore with MongoDB compatibility API include the service name firestore.googleapis.com.
Чтобы узнать время, затраченное на обработку запроса DATA_READ или DATA_WRITE , см. поле processing_duration в объекте metadata AuditLog . Поле processing_duration описывает время, которое потребовалось базе данных для обработки запроса. Это время меньше задержки конечного пользователя. В частности, оно не включает сетевые издержки.
Название услуги
В журналах аудита Cloud Firestore используется имя сервиса firestore.googleapis.com . Фильтр для этого сервиса:
protoPayload.serviceName="firestore.googleapis.com"
Методы по типу разрешения
Каждое разрешение IAM имеет свойство type , значение которого представляет собой перечисление, которое может принимать одно из четырёх значений: ADMIN_READ , ADMIN_WRITE , DATA_READ или DATA_WRITE . При вызове метода Cloud Firestore создаёт журнал аудита, категория которого зависит от свойства type разрешения, необходимого для выполнения метода.
Методы, требующие разрешения IAM со значением свойства type DATA_READ , DATA_WRITE или ADMIN_READ , генерируют журналы аудита доступа к данным .
Методы, требующие разрешения IAM со значением свойства type ADMIN_WRITE генерируют журналы аудита активности администратора .
| Тип разрешения | Методы |
|---|---|
ADMIN_READ | google.cloud.location.Locations.GetLocationgoogle.cloud.location.Locations.ListLocationsgoogle.firestore.admin.v1.FirestoreAdmin.GetBackupgoogle.firestore.admin.v1.FirestoreAdmin.GetBackupSchedulegoogle.firestore.admin.v1.FirestoreAdmin.GetDatabasegoogle.firestore.admin.v1.FirestoreAdmin.GetFieldgoogle.firestore.admin.v1.FirestoreAdmin.GetIndexgoogle.firestore.admin.v1.FirestoreAdmin.ListBackupSchedulesgoogle.firestore.admin.v1.FirestoreAdmin.ListBackupsgoogle.firestore.admin.v1.FirestoreAdmin.ListDatabasesgoogle.firestore.admin.v1.FirestoreAdmin.ListFieldsgoogle.firestore.admin.v1.FirestoreAdmin.ListIndexesgoogle.firestore.admin.v1beta1.FirestoreAdmin.GetIndexgoogle.firestore.admin.v1.MongoDBCompatible.ListIndexesgoogle.firestore.admin.v1.MongoDBCompatible.ListDatabases |
ADMIN_WRITE | google.firestore.admin.v1.FirestoreAdmin.CreateBackupSchedulegoogle.firestore.admin.v1.FirestoreAdmin.CreateDatabasegoogle.firestore.admin.v1.FirestoreAdmin.CreateIndexgoogle.firestore.admin.v1.FirestoreAdmin.DeleteBackupgoogle.firestore.admin.v1.FirestoreAdmin.DeleteBackupSchedulegoogle.firestore.admin.v1.FirestoreAdmin.DeleteDatabasegoogle.firestore.admin.v1.FirestoreAdmin.DeleteIndexgoogle.firestore.admin.v1.FirestoreAdmin.RestoreDatabasegoogle.firestore.admin.v1.FirestoreAdmin.UpdateBackupSchedulegoogle.firestore.admin.v1.FirestoreAdmin.UpdateDatabasegoogle.firestore.admin.v1.FirestoreAdmin.UpdateFieldgoogle.longrunning.Operations.CancelOperationgoogle.longrunning.Operations.DeleteOperation |
DATA_READ | google.firestore.v1.MongoDBCompatible.Findgoogle.firestore.v1.MongoDBCompatible.Aggregategoogle.firestore.v1.MongoDBCompatible.GetMoregoogle.firestore.v1.MongoDBCompatible.ListCollectionsgoogle.firestore.v1.MongoDBCompatible.Countgoogle.firestore.v1.MongoDBCompatible.Distinctgoogle.firestore.v1.MongoDBCompatible.CommitTransactiongoogle.firestore.v1.MongoDBCompatible.AbortTransactiongoogle.firestore.v1.MongoDBCompatible.EndSessionsgoogle.firestore.v1.MongoDBCompatible.KillCursors |
DATA_WRITE | google.firestore.v1.MongoDBCompatible.Insertgoogle.firestore.v1.MongoDBCompatible.Updategoogle.firestore.v1.MongoDBCompatible.Deletegoogle.firestore.v1.MongoDBCompatible.FindAndModifygoogle.firestore.v1.MongoDBCompatible.CreateCollection |
Определить отправителей запросов
Записи журнала аудита содержат информацию о личности, выполнившей регистрируемую операцию. Чтобы определить отправителя запроса, воспользуйтесь следующими полями объекта AuditLog :
Идентификационные данные вызывающего абонента хранятся в поле
AuthenticationInfo. Оно может включатьprincipalEmailпользователя. Эта информация иногда скрывается .Поле
callerIpв объектеrequestMetadataзаписиAuditLogсодержит IP-адрес вызывающего абонента.