Neste documento, descrevemos a geração de registros de auditoria do Datastore.Os serviços do Google Cloud geram registros de auditoria das atividades administrativas e de acesso nos recursos do Google Cloud . Para mais informações sobre os Registros de auditoria do Cloud, consulte:
- Tipos de registros de auditoria
- Estrutura da entrada de registro de auditoria
- Como armazenar e rotear registros de auditoria
- Resumo dos preços do Cloud Logging
- Ativar registros de auditoria de acesso aos dados
Observações
Ao configurar a geração de registros de auditoria, o nome do serviço datastore.googleapis.com configura os registros para chamadas de API datastore.googleapis.com e firestore.googleapis.com.
Para ver o tempo necessário para processar uma solicitação DATA_READ ou DATA_WRITE, consulte o campo processing_duration no objeto metadata de um AuditLog. processing_duration descreve o tempo que o banco de dados levou para processar uma solicitação. Esse valor é menor que a latência do usuário final. Especificamente, ele não inclui o overhead de rede.
Nome do serviço
Os registros de auditoria do Datastore usam o nome de serviço datastore.googleapis.com.
Filtrar por este serviço:
protoPayload.serviceName="datastore.googleapis.com"
Métodos por tipo de permissão
Cada permissão do IAM tem uma propriedade type, que tem o valor de um tipo enumerado
que pode ser um dos quatro valores: ADMIN_READ, ADMIN_WRITE,
DATA_READ ou DATA_WRITE. Quando você chama um método,
o Datastore gera um registro de auditoria com categoria dependente da
propriedade type da permissão necessária para executar o método.
Métodos que exigem uma permissão do IAM com o valor da propriedade type
de DATA_READ, DATA_WRITE ou ADMIN_READ geram
registros de auditoria de acesso aos dados.
Métodos que exigem uma permissão do IAM com o valor da propriedade type
de ADMIN_WRITE geram
registros de auditoria de Atividade do administrador.
| Tipo de permissão | Métodos |
|---|---|
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 |
Registros de auditoria da interface da API
Para informações sobre como e quais permissões são avaliadas para cada método, consulte a documentação do Identity and Access Management para o Datastore.
google.datastore.admin.v1.DatastoreAdmin
Os registros de auditoria a seguir estão associados a métodos que pertencem a
google.datastore.admin.v1.DatastoreAdmin.
CreateIndex
- Método:
google.datastore.admin.v1.DatastoreAdmin.CreateIndex - Tipo de registro de auditoria: atividade do administrador
- Permissões:
datastore.indexes.create - ADMIN_WRITE
- O método é uma operação de streaming ou de longa duração:
operação de longa duração
- Filtrar para este método:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.CreateIndex"
DeleteIndex
- Método:
google.datastore.admin.v1.DatastoreAdmin.DeleteIndex - Tipo de registro de auditoria: atividade do administrador
- Permissões:
datastore.indexes.delete - ADMIN_WRITE
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.DeleteIndex"
ExportEntities
- Método:
google.datastore.admin.v1.DatastoreAdmin.ExportEntities - Tipo de registro de auditoria: atividade do administrador
- Permissões:
datastore.databases.export - ADMIN_WRITE
- O método é uma operação de streaming ou de longa duração:
operação de longa duração
- Filtrar para este método:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.ExportEntities"
GetIndex
- Método:
google.datastore.admin.v1.DatastoreAdmin.GetIndex - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.indexes.get - ADMIN_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.GetIndex"
ImportEntities
- Método:
google.datastore.admin.v1.DatastoreAdmin.ImportEntities - Tipo de registro de auditoria: atividade do administrador
- Permissões:
datastore.databases.import - ADMIN_WRITE
- O método é uma operação de streaming ou de longa duração:
operação de longa duração
- Filtrar para este método:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.ImportEntities"
ListIndexes
- Método:
google.datastore.admin.v1.DatastoreAdmin.ListIndexes - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.indexes.list - ADMIN_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.admin.v1.DatastoreAdmin.ListIndexes"
google.datastore.admin.v1beta1.DatastoreAdmin
Os registros de auditoria a seguir estão associados a métodos que pertencem a
google.datastore.admin.v1beta1.DatastoreAdmin.
ExportEntities
- Método:
google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities - Tipo de registro de auditoria: atividade do administrador
- Permissões:
datastore.databases.export - ADMIN_WRITE
- O método é uma operação de streaming ou de longa duração:
operação de longa duração
- Filtrar para este método:
protoPayload.methodName="google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities"
ImportEntities
- Método:
google.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities - Tipo de registro de auditoria: atividade do administrador
- Permissões:
datastore.databases.import - ADMIN_WRITE
- O método é uma operação de streaming ou de longa duração:
operação de longa duração
- Filtrar para este método:
protoPayload.methodName="google.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities"
google.datastore.v1.Datastore
Os registros de auditoria a seguir estão associados a métodos que pertencem a
google.datastore.v1.Datastore.
AllocateIds
- Método:
google.datastore.v1.Datastore.AllocateIds - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.entities.allocateIds - DATA_WRITE
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1.Datastore.AllocateIds"
BeginTransaction
- Método:
google.datastore.v1.Datastore.BeginTransaction - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.databases.get - DATA_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1.Datastore.BeginTransaction"
Commit
- Método:
google.datastore.v1.Datastore.Commit - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.databases.get - DATA_READdatastore.entities.create - DATA_WRITEdatastore.entities.delete - DATA_WRITEdatastore.entities.update - DATA_WRITE
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1.Datastore.Commit"
Lookup
- Método:
google.datastore.v1.Datastore.Lookup - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.entities.get - DATA_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1.Datastore.Lookup"
ReserveIds
- Método:
google.datastore.v1.Datastore.ReserveIds - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.entities.allocateIds - DATA_WRITE
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1.Datastore.ReserveIds"
Rollback
- Método:
google.datastore.v1.Datastore.Rollback - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.databases.get - DATA_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1.Datastore.Rollback"
RunAggregationQuery
- Método:
google.datastore.v1.Datastore.RunAggregationQuery - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1.Datastore.RunAggregationQuery"
RunQuery
- Método:
google.datastore.v1.Datastore.RunQuery - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1.Datastore.RunQuery"
google.datastore.v1beta3.Datastore
Os registros de auditoria a seguir estão associados a métodos que pertencem a
google.datastore.v1beta3.Datastore.
AllocateIds
- Método:
google.datastore.v1beta3.Datastore.AllocateIds - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.entities.allocateIds - DATA_WRITE
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1beta3.Datastore.AllocateIds"
BeginTransaction
- Método:
google.datastore.v1beta3.Datastore.BeginTransaction - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.databases.get - DATA_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1beta3.Datastore.BeginTransaction"
Commit
- Método:
google.datastore.v1beta3.Datastore.Commit - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.entities.create - DATA_WRITEdatastore.entities.delete - DATA_WRITEdatastore.entities.update - DATA_WRITE
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1beta3.Datastore.Commit"
Lookup
- Método:
google.datastore.v1beta3.Datastore.Lookup - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.entities.get - DATA_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1beta3.Datastore.Lookup"
ReserveIds
- Método:
google.datastore.v1beta3.Datastore.ReserveIds - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.entities.allocateIds - DATA_WRITE
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1beta3.Datastore.ReserveIds"
Rollback
- Método:
google.datastore.v1beta3.Datastore.Rollback - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.databases.get - DATA_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1beta3.Datastore.Rollback"
RunAggregationQuery
- Método:
google.datastore.v1beta3.Datastore.RunAggregationQuery - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1beta3.Datastore.RunAggregationQuery"
RunQuery
- Método:
google.datastore.v1beta3.Datastore.RunQuery - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.entities.get - DATA_READdatastore.entities.list - DATA_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.datastore.v1beta3.Datastore.RunQuery"
google.longrunning.Operations
Os registros de auditoria a seguir estão associados a métodos que pertencem a
google.longrunning.Operations.
CancelOperation
- Método:
google.longrunning.Operations.CancelOperation - Tipo de registro de auditoria: atividade do administrador
- Permissões:
datastore.operations.cancel - ADMIN_WRITE
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.longrunning.Operations.CancelOperation"
DeleteOperation
- Método:
google.longrunning.Operations.DeleteOperation - Tipo de registro de auditoria: atividade do administrador
- Permissões:
datastore.operations.delete - ADMIN_WRITE
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.longrunning.Operations.DeleteOperation"
GetOperation
- Método:
google.longrunning.Operations.GetOperation - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.operations.get - ADMIN_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.longrunning.Operations.GetOperation"
ListOperations
- Método:
google.longrunning.Operations.ListOperations - Tipo de registro de auditoria: acesso a dados
- Permissões:
datastore.operations.list - ADMIN_READ
- O método é uma operação de streaming ou de longa duração:
No
- Filtrar para este método:
protoPayload.methodName="google.longrunning.Operations.ListOperations"
Métodos que não geram registros de auditoria
Um método pode não gerar registros de auditoria por um ou mais dos seguintes motivos:
- É um método de alto volume que envolve geração de registros significativos e custos de armazenamento.
- Tem pouco valor para a auditoria.
- Outro registro de auditoria ou plataforma já oferece cobertura do método.
Os métodos abaixo não geram registros de auditoria:
google.longrunning.Operations.WaitOperation