En esta página, se describe cómo ver los registros de auditoría que genera pgAudit, lo que te ayuda a configurar los registros que suelen ser necesarios para cumplir con las certificaciones gubernamentales, financieras y de ISO. En esta página, también se describe el formato de registro de pgAudit. Para obtener más información sobre pgAudit, consulta Acerca de pgAudit.
Antes de comenzar
Para ver los registros de auditoría, debes hacer lo siguiente:
Habilita los registros de auditoría de acceso a los datos para tu proyecto de AlloyDB.
Asegúrate de tener el rol de Visualizador de registros privados (
roles/logging.privateLogViewer
).
Ver registros de auditoría
Los registros de pgAudit generados para una instancia determinada se envían a Cloud Logging como registros de auditoría de acceso a los datos.
Puedes ver los registros de pgAudit generados a través de la aplicación Explorador de registros.
Para ver los registros de pgAudit, selecciona el filtro de registros cloudaudit.googleapis.com/data_access
en la aplicación Explorador de registros.
Para ver todos los registros de pgAudit de un proyecto de AlloyDB, ejecuta la siguiente consulta con la interfaz de filtro avanzado:
resource.type="alloydb.googleapis.com/Instance" logName="projects/your-project-name/logs/cloudaudit.googleapis.com%2Fdata_access" protoPayload.request.@type="type.googleapis.com/google.cloud.alloydb.audit.v1.PgAuditEntry"
Formato de registro para pgAudit
Cada entrada de registro de pgAudit en los registros de auditoría de acceso a los datos contiene campos que representan la información recopilada para una consulta. Para obtener más información sobre estos campos de entrada de registro, consulta la documentación de pgAudit.
Ejemplo de entrada de registro de pgAudit:
{ protoPayload: { @type: "type.googleapis.com/google.cloud.audit.AuditLog" methodName: "alloydb.instances.query" request: { @type: "type.googleapis.com/google.cloud.alloydb.audit.v1.PgAuditEntry" auditClass: "READ" auditType: "SESSION" chunkCount: "1" chunkIndex: "1" command: "SELECT" database: "finance" databaseSessionId: 2209692 parameter: "[not logged]" statement: "SELECT * FROM revenue" statementId: 2 substatementId: 1 user: "alice" } } }
A continuación, se presentan descripciones de los campos en los registros de auditoría de acceso a los datos:
- auditClass. El tipo de declaración que se registra. Los valores posibles son READ, WRITE, FUNCTION, ROLE, DDL, MISC y MISC_SET.
- auditType. SESSION o OBJECT.
- chunkCount. Puede producirse una fragmentación en los datos proporcionados en los campos
parameter
ystatement
. El campochunkCount
indica la cantidad total de fragmentos. Consulta también la descripción del campochunkIndex
. - chunkIndex. Especifica la cantidad de índices de los fragmentos de datos de los campos
parameter
ystatement
en el contenedorrequest
actual. El número inicial es1
. Consulta también la descripción del campochunkCount
. - command. Por ejemplo, ALTER TABLE o SELECT.
- parámetro. El campo
chunkIndex
puede determinar el contenido de este campo. Consulta la descripción del campochunkIndex
. Si se establece el valor de "pgaudit.log_parameter", el campoparameter
puede contener los parámetros de declaración como datos CSV entrecomillados. Si no hay parámetros, este campo contiene[none]
. De lo contrario, este campo contiene[not logged]
. - statement. Es la sentencia que se ejecuta en el backend.
El campo
chunkIndex
puede determinar el contenido del campostatement
. Consulta la descripción del campochunkIndex
. - statementId. Es el ID de declaración único para esta sesión. Cada ID de declaración representa una llamada al backend. Los IDs de declaración son secuenciales, incluso si no se registran algunas declaraciones.
- substatementId. Es el ID secuencial para cada subdeclaración dentro de la declaración principal.