本文档介绍了 Datastore 的审核日志记录。 Google Cloud 服务会生成审核日志,以记录 Google Cloud 资源中的管理和访问活动。如需详细了解 Cloud Audit Logs,请参阅以下内容:
备注
在配置审核日志记录时,服务名称 datastore.googleapis.com 会同时配置 datastore.googleapis.com 和 firestore.googleapis.com API 调用的日志。
如需查看处理 DATA_READ 或 DATA_WRITE 请求所用的时间,请参阅 AuditLog 的 metadata 对象中的 processing_duration 字段。processing_duration 描述了数据库实际处理请求所用的时间。这比最终用户延迟时间更短。具体来说,它不包括网络开销。
服务名称
Datastore 审核日志使用服务名称 datastore.googleapis.com。
针对此服务的过滤条件:
protoPayload.serviceName="datastore.googleapis.com"
方法(按权限类型)
每个 IAM 权限都有一个 type 属性,该属性的值是一个枚举,可以是以下四个值之一:ADMIN_READ、ADMIN_WRITE、DATA_READ 或 DATA_WRITE。在您调用某个方法时,Datastore 会生成一个审核日志,其类别取决于执行该方法所需权限的 type 属性。需要 IAM 权限且 type 属性值为 DATA_READ、DATA_WRITE 或 ADMIN_READ 的方法会生成数据访问审核日志。需要 IAM 权限且 type 属性值为 ADMIN_WRITE 的方法会生成管理员活动审核日志。
| 权限类型 | 方法 |
|---|---|
ADMIN_READ |
google.datastore.admin.v1.DatastoreAdmin.GetIndexgoogle.datastore.admin.v1.DatastoreAdmin.ListIndexesgoogle.longrunning.Operations.GetOperationgoogle.longrunning.Operations.ListOperations |
ADMIN_WRITE |
google.datastore.admin.v1.DatastoreAdmin.CreateIndex (LRO)google.datastore.admin.v1.DatastoreAdmin.DeleteIndexgoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities (LRO)google.datastore.admin.v1.DatastoreAdmin.ImportEntities (LRO)google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities (LRO)google.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities (LRO)google.longrunning.Operations.CancelOperationgoogle.longrunning.Operations.DeleteOperation |
DATA_READ |
google.datastore.v1.Datastore.BeginTransactiongoogle.datastore.v1.Datastore.Lookupgoogle.datastore.v1.Datastore.Rollbackgoogle.datastore.v1.Datastore.RunAggregationQuerygoogle.datastore.v1.Datastore.RunQuerygoogle.datastore.v1beta3.Datastore.BeginTransactiongoogle.datastore.v1beta3.Datastore.Lookupgoogle.datastore.v1beta3.Datastore.Rollbackgoogle.datastore.v1beta3.Datastore.RunAggregationQuerygoogle.datastore.v1beta3.Datastore.RunQuery |
DATA_WRITE |
google.datastore.v1.Datastore.AllocateIdsgoogle.datastore.v1.Datastore.Commitgoogle.datastore.v1.Datastore.ReserveIdsgoogle.datastore.v1beta3.Datastore.AllocateIdsgoogle.datastore.v1beta3.Datastore.Commitgoogle.datastore.v1beta3.Datastore.ReserveIds |
API 接口审核日志
如需了解如何评估每种方法的权限以及评估哪些权限,请参阅 Datastore 的 Identity and Access Management 文档。
google.datastore.admin.v1.DatastoreAdmin
以下审核日志与属于 google.datastore.admin.v1.DatastoreAdmin 的方法相关联。
CreateIndex
- 方法:
google.datastore.admin.v1.DatastoreAdmin.CreateIndex - 审核日志类型:管理员活动
- 权限:
datastore.indexes.create - ADMIN_WRITE
- 方法是长时间运行的操作或流式传输操作:长时间运行的操作
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.CreateIndex"
DeleteIndex
- 方法:
google.datastore.admin.v1.DatastoreAdmin.DeleteIndex - 审核日志类型:管理员活动
- 权限:
datastore.indexes.delete - ADMIN_WRITE
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.DeleteIndex"
ExportEntities
- 方法:
google.datastore.admin.v1.DatastoreAdmin.ExportEntities - 审核日志类型:管理员活动
- 权限:
datastore.databases.export - ADMIN_WRITE
- 方法是长时间运行的操作或流式传输操作:长时间运行的操作
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.ExportEntities"
GetIndex
- 方法:
google.datastore.admin.v1.DatastoreAdmin.GetIndex - 审核日志类型:数据访问
- 权限:
datastore.indexes.get - ADMIN_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.GetIndex"
ImportEntities
- 方法:
google.datastore.admin.v1.DatastoreAdmin.ImportEntities - 审核日志类型:管理员活动
- 权限:
datastore.databases.import - ADMIN_WRITE
- 方法是长时间运行的操作或流式传输操作:长时间运行的操作
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.ImportEntities"
ListIndexes
- 方法:
google.datastore.admin.v1.DatastoreAdmin.ListIndexes - 审核日志类型:数据访问
- 权限:
datastore.indexes.list - ADMIN_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.ListIndexes"
google.datastore.admin.v1beta1.DatastoreAdmin
以下审核日志与属于 google.datastore.admin.v1beta1.DatastoreAdmin 的方法相关联。
ExportEntities
- 方法:
google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities - 审核日志类型:管理员活动
- 权限:
datastore.databases.export - ADMIN_WRITE
- 方法是长时间运行的操作或流式传输操作:长时间运行的操作
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities"
ImportEntities
- 方法:
google.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities - 审核日志类型:管理员活动
- 权限:
datastore.databases.import - ADMIN_WRITE
- 方法是长时间运行的操作或流式传输操作:长时间运行的操作
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities"
google.datastore.v1.Datastore
以下审核日志与属于 google.datastore.v1.Datastore 的方法相关联。
AllocateIds
- 方法:
google.datastore.v1.Datastore.AllocateIds - 审核日志类型:数据访问
- 权限:
datastore.entities.allocateIds - DATA_WRITE
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1.Datastore.AllocateIds"
BeginTransaction
- 方法:
google.datastore.v1.Datastore.BeginTransaction - 审核日志类型:数据访问
- 权限:
datastore.databases.get - DATA_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1.Datastore.BeginTransaction"
Commit
- 方法:
google.datastore.v1.Datastore.Commit - 审核日志类型:数据访问
- 权限:
datastore.databases.get - DATA_READdatastore.entities.create - DATA_WRITEdatastore.entities.delete - DATA_WRITEdatastore.entities.update - DATA_WRITE
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1.Datastore.Commit"
Lookup
- 方法:
google.datastore.v1.Datastore.Lookup - 审核日志类型:数据访问
- 权限:
datastore.entities.get - DATA_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1.Datastore.Lookup"
ReserveIds
- 方法:
google.datastore.v1.Datastore.ReserveIds - 审核日志类型:数据访问
- 权限:
datastore.entities.allocateIds - DATA_WRITE
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1.Datastore.ReserveIds"
Rollback
- 方法:
google.datastore.v1.Datastore.Rollback - 审核日志类型:数据访问
- 权限:
datastore.databases.get - DATA_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1.Datastore.Rollback"
RunAggregationQuery
- 方法:
google.datastore.v1.Datastore.RunAggregationQuery - 审核日志类型:数据访问
- 权限:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1.Datastore.RunAggregationQuery"
RunQuery
- 方法:
google.datastore.v1.Datastore.RunQuery - 审核日志类型:数据访问
- 权限:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1.Datastore.RunQuery"
google.datastore.v1beta3.Datastore
以下审核日志与属于 google.datastore.v1beta3.Datastore 的方法相关联。
AllocateIds
- 方法:
google.datastore.v1beta3.Datastore.AllocateIds - 审核日志类型:数据访问
- 权限:
datastore.entities.allocateIds - DATA_WRITE
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1beta3.Datastore.AllocateIds"
BeginTransaction
- 方法:
google.datastore.v1beta3.Datastore.BeginTransaction - 审核日志类型:数据访问
- 权限:
datastore.databases.get - DATA_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1beta3.Datastore.BeginTransaction"
Commit
- 方法:
google.datastore.v1beta3.Datastore.Commit - 审核日志类型:数据访问
- 权限:
datastore.entities.create - DATA_WRITEdatastore.entities.delete - DATA_WRITEdatastore.entities.update - DATA_WRITE
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1beta3.Datastore.Commit"
Lookup
- 方法:
google.datastore.v1beta3.Datastore.Lookup - 审核日志类型:数据访问
- 权限:
datastore.entities.get - DATA_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1beta3.Datastore.Lookup"
ReserveIds
- 方法:
google.datastore.v1beta3.Datastore.ReserveIds - 审核日志类型:数据访问
- 权限:
datastore.entities.allocateIds - DATA_WRITE
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1beta3.Datastore.ReserveIds"
Rollback
- 方法:
google.datastore.v1beta3.Datastore.Rollback - 审核日志类型:数据访问
- 权限:
datastore.databases.get - DATA_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1beta3.Datastore.Rollback"
RunAggregationQuery
- 方法:
google.datastore.v1beta3.Datastore.RunAggregationQuery - 审核日志类型:数据访问
- 权限:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1beta3.Datastore.RunAggregationQuery"
RunQuery
- 方法:
google.datastore.v1beta3.Datastore.RunQuery - 审核日志类型:数据访问
- 权限:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.datastore.v1beta3.Datastore.RunQuery"
google.longrunning.Operations
以下审核日志与属于 google.longrunning.Operations 的方法相关联。
CancelOperation
- 方法:
google.longrunning.Operations.CancelOperation - 审核日志类型:管理员活动
- 权限:
datastore.operations.cancel - ADMIN_WRITE
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.longrunning.Operations.CancelOperation"
DeleteOperation
- 方法:
google.longrunning.Operations.DeleteOperation - 审核日志类型:管理员活动
- 权限:
datastore.operations.delete - ADMIN_WRITE
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.longrunning.Operations.DeleteOperation"
GetOperation
- 方法:
google.longrunning.Operations.GetOperation - 审核日志类型:数据访问
- 权限:
datastore.operations.get - ADMIN_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.longrunning.Operations.GetOperation"
ListOperations
- 方法:
google.longrunning.Operations.ListOperations - 审核日志类型:数据访问
- 权限:
datastore.operations.list - ADMIN_READ
- 方法是长时间运行的操作或流式传输操作:否。
- 此方法的过滤条件:
protoPayload.methodName="google.longrunning.Operations.ListOperations"
不会生成审核日志的方法
由于以下一个或多个原因,方法可能不会生成审核日志:
- 这是一种高容量方法,涉及较高的日志生成和存储费用。
- 它的审核价值较低。
- 其他审核或平台日志已提供方法覆盖功能。
以下方法不会生成审核日志:
google.longrunning.Operations.WaitOperation