Registro de auditoría de Spanner

En este documento, se describe el registro de auditoría que se realiza en Spanner. Se describen qué métodos se auditan y los detalles sobre el registro de auditoría que produce cada método. Describe qué métodos generan registros de auditoría y el contenido de cada registro. También identifica métodos que no producen registros de auditoría. Google Cloud genera registros de auditoría que registran las actividades administrativas y los eventos de acceso dentro de los recursos de Google Cloud. Para obtener más información, consulta Descripción general de los Registros de auditoría de Cloud.

Notas

Para ver el tiempo que llevó procesar una solicitud de DATA_READ o DATA_WRITE, consulta la sección Duración del procesamiento.

Nombre del servicio

Los registros de auditoría de Spanner usan el nombre de servicio spanner.googleapis.com.

Métodos por tipo de permiso

Los métodos de acceso a datos Read, StreamingRead, ExecuteSql y ExecuteStreamingSql que realizan una operación de lectura también pueden iniciar una transacción de lectura y escritura si se especifica en el TransactionSelector del método. En esos casos, el método verificará los tipos de permisos DATA_READ y DATA_WRITE.

Los métodos que verifican los permisos DATA_READ, DATA_WRITE y ADMIN_READ generan registros categorizados como registros de auditoría de acceso a los datos. Los métodos que verifican los permisos ADMIN_WRITE generan registros categorizados como registros de auditoría de actividad del administrador.

Tipo de permiso Métodos
ADMIN_READ google.longrunning.Operations.GetOperation
google.longrunning.Operations.ListOperations
google.spanner.admin.database.v1.DatabaseAdmin.GetBackup
google.spanner.admin.database.v1.DatabaseAdmin.GetDatabase
google.spanner.admin.database.v1.DatabaseAdmin.GetDatabaseDdl
google.spanner.admin.database.v1.DatabaseAdmin.GetIamPolicy
google.spanner.admin.database.v1.DatabaseAdmin.ListBackupOperations
google.spanner.admin.database.v1.DatabaseAdmin.ListBackups
google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseOperations
google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseRoles
google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases
google.spanner.admin.database.v1.DatabaseAdmin.TestIamPermissions
google.spanner.admin.instance.v1.InstanceAdmin.GetIamPolicy
google.spanner.admin.instance.v1.InstanceAdmin.GetInstance
google.spanner.admin.instance.v1.InstanceAdmin.GetInstanceConfig
google.spanner.admin.instance.v1.InstanceAdmin.ListInstanceConfigs
google.spanner.admin.instance.v1.InstanceAdmin.ListInstances
google.spanner.admin.instance.v1.InstanceAdmin.SetIamPolicy
google.spanner.admin.instance.v1.InstanceAdmin.TestIamPermissions
ADMIN_WRITE google.longrunning.Operations.CancelOperation
google.spanner.admin.database.v1.DatabaseAdmin.ChangeQuorum
google.spanner.admin.database.v1.DatabaseAdmin.CopyBackup
google.spanner.admin.database.v1.DatabaseAdmin.CreateBackup
google.spanner.admin.database.v1.DatabaseAdmin.CreateDatabase
google.spanner.admin.database.v1.DatabaseAdmin.DeleteBackup
google.spanner.admin.database.v1.DatabaseAdmin.DropDatabase
google.spanner.admin.database.v1.DatabaseAdmin.RestoreDatabase
google.spanner.admin.database.v1.DatabaseAdmin.SetIamPolicy
google.spanner.admin.database.v1.DatabaseAdmin.UpdateBackup
google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabase
google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl
google.spanner.admin.instance.v1.InstanceAdmin.CreateInstance
google.spanner.admin.instance.v1.InstanceAdmin.CreateInstanceConfig
google.spanner.admin.instance.v1.InstanceAdmin.DeleteInstance
google.spanner.admin.instance.v1.InstanceAdmin.DeleteInstanceConfig
google.spanner.admin.instance.v1.InstanceAdmin.MoveInstance
google.spanner.admin.instance.v1.InstanceAdmin.UpdateInstance
google.spanner.admin.instance.v1.InstanceAdmin.UpdateInstanceConfig
DATA_READ google.cloud.keyvisualizer.KeyVisualizer.GetScan
google.spanner.v1.Spanner.BeginTransaction
google.spanner.v1.Spanner.ExecuteStreamingSql
google.spanner.v1.Spanner.GetSession
google.spanner.v1.Spanner.ListSessions
google.spanner.v1.Spanner.PartitionQuery
google.spanner.v1.Spanner.PartitionRead
google.spanner.v1.Spanner.Read
google.spanner.v1.Spanner.StreamingRead
DATA_WRITE google.spanner.v1.Spanner.BatchCreateSessions
google.spanner.v1.Spanner.BatchWrite
google.spanner.v1.Spanner.Commit
google.spanner.v1.Spanner.CreateSession
google.spanner.v1.Spanner.DeleteSession
google.spanner.v1.Spanner.ExecuteBatchDml
google.spanner.v1.Spanner.ExecuteSql
google.spanner.v1.Spanner.Rollback

Registros de auditoría para cada interfaz de API

Si quieres obtener más información sobre qué permisos se evalúan para cada método, consulta la documentación de Identity and Access Management para Spanner.

google.cloud.keyvisualizer.KeyVisualizer

En la siguiente sección, se incluyen detalles sobre los registros de auditoría asociados con los métodos que pertenecen a google.cloud.keyvisualizer.KeyVisualizer.

google.cloud.keyvisualizer.KeyVisualizer.GetScan

  • Método: google.cloud.keyvisualizer.KeyVisualizer.GetScan
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databaseRoles.use - DATA_WRITE
    • spanner.databases.read - DATA_READ
    • spanner.databases.useRoleBasedAccess - DATA_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.cloud.keyvisualizer.KeyVisualizer.GetScan"

google.longrunning.Operations

En la siguiente sección, se incluyen detalles sobre los registros de auditoría asociados con los métodos que pertenecen a google.longrunning.Operations.

google.longrunning.Operations.CancelOperation

  • Método: google.longrunning.Operations.CancelOperation
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.backupOperations.cancel - ADMIN_WRITE
    • spanner.databaseOperations.cancel - ADMIN_WRITE
    • spanner.instanceOperations.cancel - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.longrunning.Operations.CancelOperation"

google.longrunning.Operations.GetOperation

  • Método: google.longrunning.Operations.GetOperation
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.backupOperations.get - ADMIN_READ
    • spanner.databaseOperations.get - ADMIN_READ
    • spanner.instanceOperations.get - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.longrunning.Operations.GetOperation"

google.longrunning.Operations.ListOperations

  • Método: google.longrunning.Operations.ListOperations
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.backupOperations.list - ADMIN_READ
    • spanner.databaseOperations.list - ADMIN_READ
    • spanner.instanceOperations.list - ADMIN_READ
    • spanner.ssdCacheOperations.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.longrunning.Operations.ListOperations"

google.spanner.admin.database.v1.DatabaseAdmin

En la siguiente sección, se incluyen detalles sobre los registros de auditoría asociados con los métodos que pertenecen a google.spanner.admin.database.v1.DatabaseAdmin.

google.spanner.admin.database.v1.DatabaseAdmin.ChangeQuorum

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.ChangeQuorum
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.databases.changequorum - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.ChangeQuorum"

google.spanner.admin.database.v1.DatabaseAdmin.CopyBackup

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.CopyBackup
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.backups.copy - ADMIN_WRITE
    • spanner.backups.create - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.CopyBackup"

google.spanner.admin.database.v1.DatabaseAdmin.CreateBackup

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.CreateBackup
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.backups.create - ADMIN_WRITE
    • spanner.databases.createBackup - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.CreateBackup"
  • Notas: La entrada que se registra cuando finaliza la operación no contiene información de autenticación o autorización. La información de autenticación y autorización está disponible en la entrada coincidente que se registró cuando comienza la operación. Para encontrar la entrada de registro que coincida en el Explorador de registros, haz clic en el campo operation.id de la entrada de registro y, luego, selecciona Mostrar entradas coincidentes en el menú.

google.spanner.admin.database.v1.DatabaseAdmin.CreateDatabase

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.CreateDatabase
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.databases.create - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.CreateDatabase"

google.spanner.admin.database.v1.DatabaseAdmin.DeleteBackup

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.DeleteBackup
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.backups.delete - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.DeleteBackup"

google.spanner.admin.database.v1.DatabaseAdmin.DropDatabase

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.DropDatabase
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.databases.drop - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.DropDatabase"

google.spanner.admin.database.v1.DatabaseAdmin.GetBackup

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.GetBackup
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.backups.get - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.GetBackup"

google.spanner.admin.database.v1.DatabaseAdmin.GetDatabase

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.GetDatabase
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databases.get - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.GetDatabase"

google.spanner.admin.database.v1.DatabaseAdmin.GetDatabaseDdl

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.GetDatabaseDdl
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databases.getDdl - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.GetDatabaseDdl"

google.spanner.admin.database.v1.DatabaseAdmin.GetIamPolicy

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.GetIamPolicy
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.backups.getIamPolicy - ADMIN_READ
    • spanner.backups.list - ADMIN_READ
    • spanner.databases.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.GetIamPolicy"

google.spanner.admin.database.v1.DatabaseAdmin.ListBackupOperations

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.ListBackupOperations
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.backupOperations.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.ListBackupOperations"

google.spanner.admin.database.v1.DatabaseAdmin.ListBackups

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.ListBackups
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.backups.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.ListBackups"

google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseOperations

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseOperations
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databaseOperations.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseOperations"

google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseRoles

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseRoles
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databaseRoles.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseRoles"

google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databases.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases"

google.spanner.admin.database.v1.DatabaseAdmin.RestoreDatabase

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.RestoreDatabase
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.backups.restoreDatabase - ADMIN_READ
    • spanner.databases.create - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.RestoreDatabase"
  • Notas: Aunque el restablecimiento de una base de datos requiere la autorización de dos recursos (la copia de seguridad y la base de datos restablecida, que puede residir en instancias diferentes), el evento RestoreDatabase se registra solo una vez como una sola entrada en la instancia de la base de datos restablecida. Dentro de esta entrada, habrá dos entradas authorizationInfo: una para la base de datos que verifica el permiso spanner.databases.create y otra para la copia de seguridad, que verifica el permiso spanner.backups.restoreDatabase.
    La entrada que se registra cuando finaliza la operación no contiene información de autenticación o autorización. La información de autenticación y autorización está disponible en la entrada coincidente que se registró cuando comienza la operación. Para encontrar la entrada de registro que coincida en el Explorador de registros, haz clic en el campo operation.id de la entrada de registro y, luego, selecciona Mostrar entradas coincidentes en el menú.

google.spanner.admin.database.v1.DatabaseAdmin.SetIamPolicy

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.SetIamPolicy
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.backups.setIamPolicy - ADMIN_WRITE
    • spanner.databases.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.SetIamPolicy"

google.spanner.admin.database.v1.DatabaseAdmin.TestIamPermissions

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.TestIamPermissions
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.backups.list - ADMIN_READ
    • spanner.databases.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.TestIamPermissions"

google.spanner.admin.database.v1.DatabaseAdmin.UpdateBackup

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.UpdateBackup
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.backups.update - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.UpdateBackup"

google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabase

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabase
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.databases.update - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabase"

google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl

  • Método: google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.databases.updateDdl - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl"

google.spanner.admin.instance.v1.InstanceAdmin

En la siguiente sección, se incluyen detalles sobre los registros de auditoría asociados con los métodos que pertenecen a google.spanner.admin.instance.v1.InstanceAdmin.

google.spanner.admin.instance.v1.InstanceAdmin.CreateInstance

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.CreateInstance
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.instances.create - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.CreateInstance"

google.spanner.admin.instance.v1.InstanceAdmin.CreateInstanceConfig

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.CreateInstanceConfig
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.instanceConfigs.create - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.CreateInstanceConfig"

google.spanner.admin.instance.v1.InstanceAdmin.DeleteInstance

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.DeleteInstance
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.instances.delete - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.DeleteInstance"

google.spanner.admin.instance.v1.InstanceAdmin.DeleteInstanceConfig

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.DeleteInstanceConfig
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.instanceConfigs.delete - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.DeleteInstanceConfig"

google.spanner.admin.instance.v1.InstanceAdmin.GetIamPolicy

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.GetIamPolicy
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.instances.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.GetIamPolicy"

google.spanner.admin.instance.v1.InstanceAdmin.GetInstance

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.GetInstance
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.instances.get - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.GetInstance"

google.spanner.admin.instance.v1.InstanceAdmin.GetInstanceConfig

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.GetInstanceConfig
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.instanceConfigs.get - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.GetInstanceConfig"

google.spanner.admin.instance.v1.InstanceAdmin.ListInstanceConfigs

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.ListInstanceConfigs
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.instanceConfigs.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.ListInstanceConfigs"

google.spanner.admin.instance.v1.InstanceAdmin.ListInstances

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.ListInstances
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.instances.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.ListInstances"

google.spanner.admin.instance.v1.InstanceAdmin.MoveInstance

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.MoveInstance
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.instances.update - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.MoveInstance"

google.spanner.admin.instance.v1.InstanceAdmin.SetIamPolicy

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.SetIamPolicy
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.instances.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.SetIamPolicy"

google.spanner.admin.instance.v1.InstanceAdmin.TestIamPermissions

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.TestIamPermissions
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.instances.list - ADMIN_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.TestIamPermissions"

google.spanner.admin.instance.v1.InstanceAdmin.UpdateInstance

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.UpdateInstance
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.instances.update - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.UpdateInstance"

google.spanner.admin.instance.v1.InstanceAdmin.UpdateInstanceConfig

  • Método: google.spanner.admin.instance.v1.InstanceAdmin.UpdateInstanceConfig
  • Tipo de registro de auditoría: Actividad del administrador
  • Permisos:
    • spanner.instanceConfigs.update - ADMIN_WRITE
  • El método es una operación de transmisión o de larga duración: Operación de larga duración
  • Filtra por este método: protoPayload.methodName="google.spanner.admin.instance.v1.InstanceAdmin.UpdateInstanceConfig"

google.spanner.v1.Spanner

En la siguiente sección, se incluyen detalles sobre los registros de auditoría asociados con los métodos que pertenecen a google.spanner.v1.Spanner.

google.spanner.v1.Spanner.BatchCreateSessions

  • Método: google.spanner.v1.Spanner.BatchCreateSessions
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databaseRoles.use - DATA_WRITE
    • spanner.databases.useRoleBasedAccess - DATA_WRITE
    • spanner.sessions.create - DATA_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.BatchCreateSessions"

google.spanner.v1.Spanner.BatchWrite

  • Método: google.spanner.v1.Spanner.BatchWrite
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databases.write - DATA_WRITE
  • El método es una operación de transmisión o de larga duración: RPC de transmisión
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.BatchWrite"

google.spanner.v1.Spanner.BeginTransaction

  • Método: google.spanner.v1.Spanner.BeginTransaction
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databaseRoles.use - DATA_WRITE
    • spanner.databases.beginOrRollbackReadWriteTransaction - DATA_WRITE
    • spanner.databases.beginPartitionedDmlTransaction - DATA_WRITE
    • spanner.databases.beginReadOnlyTransaction - DATA_READ
    • spanner.databases.useRoleBasedAccess - DATA_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.BeginTransaction"
  • Notas: Este método será DATA_READ para una transacción de ReadOnly y DATA_WRITE para una transacción de ReadWrite.

google.spanner.v1.Spanner.Commit

  • Método: google.spanner.v1.Spanner.Commit
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databaseRoles.use - DATA_WRITE
    • spanner.databases.useRoleBasedAccess - DATA_WRITE
    • spanner.databases.write - DATA_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.Commit"

google.spanner.v1.Spanner.CreateSession

  • Método: google.spanner.v1.Spanner.CreateSession
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databaseRoles.use - DATA_WRITE
    • spanner.databases.useRoleBasedAccess - DATA_WRITE
    • spanner.sessions.create - DATA_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.CreateSession"

google.spanner.v1.Spanner.DeleteSession

  • Método: google.spanner.v1.Spanner.DeleteSession
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databaseRoles.use - DATA_WRITE
    • spanner.databases.useRoleBasedAccess - DATA_WRITE
    • spanner.sessions.delete - DATA_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.DeleteSession"

google.spanner.v1.Spanner.ExecuteBatchDml

  • Método: google.spanner.v1.Spanner.ExecuteBatchDml
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databases.beginOrRollbackReadWriteTransaction - DATA_WRITE
    • spanner.databases.write - DATA_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.ExecuteBatchDml"

google.spanner.v1.Spanner.ExecuteSql

  • Método: google.spanner.v1.Spanner.ExecuteSql
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos: Consulta la documentación de IAM para conocer los permisos.
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.ExecuteSql"
  • Notas: Este método también puede iniciar una transacción de lectura y escritura si se especifica en el TransactionSelector del método. En esos casos, el método coincidirá con los tipos de permisos DATA_READ y DATA_WRITE.

google.spanner.v1.Spanner.ExecuteStreamingSql

  • Método: google.spanner.v1.Spanner.ExecuteStreamingSql
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos: Consulta la documentación de IAM para conocer los permisos.
  • El método es una operación de transmisión o de larga duración: RPC de transmisión
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.ExecuteStreamingSql"
  • Notas: Nota: Este método también puede iniciar una transacción de lectura y escritura si se especifica en el TransactionSelector del método. En esos casos, el método coincidirá con los tipos de permisos DATA_READ y DATA_WRITE.

google.spanner.v1.Spanner.GetSession

  • Método: google.spanner.v1.Spanner.GetSession
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.sessions.get - DATA_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.GetSession"

google.spanner.v1.Spanner.ListSessions

  • Método: google.spanner.v1.Spanner.ListSessions
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.sessions.list - DATA_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.ListSessions"

google.spanner.v1.Spanner.PartitionQuery

  • Método: google.spanner.v1.Spanner.PartitionQuery
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databaseRoles.use - DATA_WRITE
    • spanner.databases.beginReadOnlyTransaction - DATA_READ
    • spanner.databases.partitionQuery - DATA_READ
    • spanner.databases.useRoleBasedAccess - DATA_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.PartitionQuery"

google.spanner.v1.Spanner.PartitionRead

  • Método: google.spanner.v1.Spanner.PartitionRead
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databases.partitionRead - DATA_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.PartitionRead"

google.spanner.v1.Spanner.Read

  • Método: google.spanner.v1.Spanner.Read
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databases.beginOrRollbackReadWriteTransaction - DATA_WRITE
    • spanner.databases.read - DATA_READ
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.Read"
  • Notas: Este método también puede iniciar una transacción de lectura y escritura si se especifica en el TransactionSelector del método. En esos casos, el método coincidirá con los tipos de permisos DATA_READ y DATA_WRITE.
    Importante: Las claves solicitadas no se registran.

google.spanner.v1.Spanner.Rollback

  • Método: google.spanner.v1.Spanner.Rollback
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos:
    • spanner.databaseRoles.use - DATA_WRITE
    • spanner.databases.beginOrRollbackReadWriteTransaction - DATA_WRITE
    • spanner.databases.useRoleBasedAccess - DATA_WRITE
  • El método es una operación de transmisión o de larga duración: No.
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.Rollback"

google.spanner.v1.Spanner.StreamingRead

  • Método: google.spanner.v1.Spanner.StreamingRead
  • Tipo de registro de auditoría: Acceso a los datos
  • Permisos: Consulta la documentación de IAM para conocer los permisos.
  • El método es una operación de transmisión o de larga duración: RPC de transmisión
  • Filtra por este método: protoPayload.methodName="google.spanner.v1.Spanner.StreamingRead"
  • Notas: Este método también puede iniciar una transacción de lectura y escritura si se especifica en el TransactionSelector del método. En esos casos, el método coincidirá con los tipos de permisos DATA_READ y DATA_WRITE.
    Importante: Las claves solicitadas no se registran.

Eventos del sistema

Los sistemas de GCP generan los registros de auditoría de eventos del sistema, no la acción directa del usuario. Para obtener más información, consulta los registros de auditoría de eventos del sistema.

Nombre del método Filtrar por este evento Notas
AutoscaleInstance protoPayload.methodName="AutoscaleInstance"
OptimizeRestoredDatabase protoPayload.methodName="OptimizeRestoredDatabase"

Duración del procesamiento

Para ver el tiempo que se tardó en procesar una solicitud de DATA_READ o DATA_WRITE, consulta el campo processingDurationSeconds dentro del objeto metadata de AuditLog. processingDurationSeconds te ayuda a supervisar las latencias de tus solicitudes.

processingDurationSeconds describe la latencia de solicitud a la API de Spanner. Es el tiempo (en segundos) que transcurre desde que el frontend de la API de Spanner recibe el primer byte de una solicitud hasta que envía el último byte de una respuesta. El tiempo necesario para procesar las solicitudes a la API en el backend de Spanner y en la capa de la API es la latencia. Sin embargo, esta latencia no incluye la sobrecarga de red o de Google Front End entre los clientes y servidores de Spanner. Para visualizar los componentes de alto nivel involucrados en una solicitud a la API de Spanner, consulta la Guía de latencia de extremo a extremo de Spanner.

Por ejemplo, el siguiente es un registro de auditoría que contiene información de processingDurationSeconds:

{
  "protoPayload": {
    "@type": "type.googleapis.com/google.cloud.audit.AuditLog",
    "authenticationInfo": {...},
    "requestMetadata": {...},
    "serviceName": "spanner.googleapis.com",
    "methodName": "google.spanner.v1.Spanner.Commit",
    "authorizationInfo": [{...}],
    "resourceName": "projects/example-project/instances/example-instance/databases/example-database/sessions/example-session",
    "request": {
      "transactionId": "example-transactionId",
      "@type": "type.googleapis.com/google.spanner.v1.CommitRequest",
      "session": "projects/example-project/instances/example-instance/databases/example-database/sessions/example-session"
    },
    "response": {
      "@type": "type.googleapis.com/google.spanner.v1.CommitResponse",
      "commitTimestamp": "2023-02-13T17:11:10.106602Z"
    },
    "metadata": {
      "@type": "type.googleapis.com/spanner.cloud.instance_v1.QueryPerformanceMetadata",
      "processingDurationSeconds": 0.1932541
    }
  },
  "insertId": "p9ju4gdi7j0",
  "resource": {...},
  "timestamp": "2023-02-13T17:11:10.000093953Z",
  "severity": "INFO",
  "logName": "projects/example-project/logs/cloudaudit.googleapis.com%2Fdata_access",
  "receiveTimestamp": "2023-02-13T17:11:11.170517524Z"
}

Para las solicitudes ExecuteStreamingSql, StreamingRead, PartitionRead o PartitionQuery, no se establece el campo processingDurationSeconds. Para calcular la latencia de la solicitud de transmisión y partición, consulta Calcula la latencia de solicitud de transmisión y partición.