本文說明 Datastore 的稽核記錄。 Google Cloud 服務會產生稽核記錄,記錄 Google Cloud 資源中的管理和存取活動。如要進一步瞭解 Cloud 稽核記錄,請參閱下列文章:
附註
設定稽核記錄時,服務名稱 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.GetIndex google.datastore.admin.v1.DatastoreAdmin.ListIndexes google.longrunning.Operations.GetOperation google.longrunning.Operations.ListOperations |
ADMIN_WRITE |
google.datastore.admin.v1.DatastoreAdmin.CreateIndex google.datastore.admin.v1.DatastoreAdmin.DeleteIndex google.datastore.admin.v1.DatastoreAdmin.ExportEntities google.datastore.admin.v1.DatastoreAdmin.ImportEntities google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities google.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities google.longrunning.Operations.CancelOperation google.longrunning.Operations.DeleteOperation |
DATA_READ |
google.datastore.v1.Datastore.BeginTransaction google.datastore.v1.Datastore.Lookup google.datastore.v1.Datastore.Rollback google.datastore.v1.Datastore.RunAggregationQuery google.datastore.v1.Datastore.RunQuery google.datastore.v1beta3.Datastore.BeginTransaction google.datastore.v1beta3.Datastore.Lookup google.datastore.v1beta3.Datastore.Rollback google.datastore.v1beta3.Datastore.RunAggregationQuery google.datastore.v1beta3.Datastore.RunQuery |
DATA_WRITE |
google.datastore.v1.Datastore.AllocateIds google.datastore.v1.Datastore.Commit google.datastore.v1.Datastore.ReserveIds google.datastore.v1beta3.Datastore.AllocateIds google.datastore.v1beta3.Datastore.Commit google.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_READ
datastore.entities.create - DATA_WRITE
datastore.entities.delete - DATA_WRITE
datastore.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_READ
datastore.entities.list - DATA_READ
- 方法是長時間執行的作業或串流作業:
否。
- 篩選這個方法:
protoPayload.methodName="google.datastore.v1.Datastore.RunAggregationQuery"
RunQuery
- 方法:
google.datastore.v1.Datastore.RunQuery
- 稽核記錄類型:資料存取
- 權限:
datastore.entities.get - DATA_READ
datastore.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.databases.get - DATA_READ
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_WRITE
datastore.entities.delete - DATA_WRITE
datastore.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.databases.get - DATA_READ
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_READ
datastore.entities.list - DATA_READ
- 方法是長時間執行的作業或串流作業:
否。
- 篩選這個方法:
protoPayload.methodName="google.datastore.v1beta3.Datastore.RunAggregationQuery"
RunQuery
- 方法:
google.datastore.v1beta3.Datastore.RunQuery
- 稽核記錄類型:資料存取
- 權限:
datastore.entities.get - DATA_READ
datastore.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