| Это относится только к версии 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 , значением которого является перечисление (enum), принимающее одно из четырех значений: 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-адрес вызывающего абонента.