Geração de registros de auditoria do Datastore

Este documento descreve o registro de auditoria do Datastore. Os serviços do Google Cloud geram registros de auditoria que registram atividades administrativas e de acesso nos recursos do Google Cloud. Para mais informações sobre os Registros de auditoria do Cloud, consulte:

Observações

Ao configurar o registro 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 conferir o tempo que levou 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. Em particular, não inclui a sobrecarga da 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.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

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

DeleteIndex

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

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

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_READ
    • datastore.entities.create - DATA_WRITE
    • datastore.entities.delete - DATA_WRITE
    • datastore.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_READ
    • datastore.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_READ
    • datastore.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.databases.get - DATA_READ
    • 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_WRITE
    • datastore.entities.delete - DATA_WRITE
    • datastore.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.databases.get - DATA_READ
    • 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_READ
    • datastore.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_READ
    • datastore.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

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 produzem registros de auditoria

Um método pode não produzir registros de auditoria para um ou mais dos seguintes itens motivos:

  • É um método de alto volume que envolve geração e armazenamento de registros significativos custos.
  • Tem baixo valor de auditoria.
  • Outro registro de auditoria ou plataforma já oferece cobertura de método.

Os métodos a seguir não produzem registros de auditoria:

  • google.longrunning.Operations.WaitOperation