Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El registro de auditoría de actividades de base de datos en Azure Database for PostgreSQL está disponible a través de la pgaudit extensión .
pgaudit proporciona un registro detallado de auditoría de sesión o objeto.
Si desea registros de nivel de recurso de Azure para operaciones como el escalado de proceso y almacenamiento, consulte el registro de actividad de Azure.
Consideraciones de uso
De forma predeterminada, pgaudit las instrucciones de registro y las instrucciones de registro normales se emiten mediante la instalación de registro estándar de Postgres. En Azure Database for PostgreSQL, puede configurar todos los registros que se enviarán al almacén de registros de Azure Monitor para su posterior análisis en Log Analytics. Si habilita el registro de recursos de Azure Monitor, los registros se envían automáticamente (en formato JSON) a Azure Storage, Event Hubs o registros de Azure Monitor, en función de su elección.
Para obtener información sobre cómo configurar el registro en Azure Storage, Event Hubs o registros de Azure Monitor, visite la sección registros de recursos del artículo registros de servidor.
Instalación de la extensión
Para poder usar pgaudit la extensión, debe permitir la lista, cargar y crear la extensión en la base de datos en la que planea usarlo.
Configuración de las opciones de extensión
pgaudit permite configurar el registro de auditoría de sesión o de objetos.
El registro de auditoría de sesión emite registros detallados de instrucciones ejecutadas.
El registro de auditoría de objetos tiene el ámbito de la auditoría a relaciones específicas. Puede optar por configurar uno o ambos tipos de registro.
Una vez que habilite pgaudit, puede configurar sus parámetros para iniciar el registro.
Para configurar pgaudit, puede seguir estas instrucciones:
Mediante Azure Portal:
Seleccione la instancia de Azure Database for the PostgreSQL.
En el menú de recursos, en Configuración, seleccione Parámetros del servidor.
Busque los
pgauditparámetros.Elija el parámetro adecuado para editar. Por ejemplo, para iniciar el registro
INSERTde instrucciones ,UPDATE,DELETE,TRUNCATE, yCOPY, establezca enpgaudit.logWRITE.Seleccione el botón Guardar para guardar los cambios.
La documentación oficial de pgaudit proporciona la definición de cada parámetro. Pruebe primero los parámetros y confirme que obtiene el comportamiento esperado.
Por ejemplo, al establecer pgaudit.log_client en ON no solo se escriben eventos de auditoría en el registro del servidor, sino que también se envían a procesos de cliente (como psql). Por lo general, esta configuración debe dejarse deshabilitada.
pgaudit.log_level solo está habilitado cuando pgaudit.log_client está activado.
En Azure Database for PostgreSQL, pgaudit.log no se puede establecer mediante un - acceso directo de signo (menos), como se describe en la pgaudit documentación. Todas las clases de instrucción necesarias (READ, WRITE, etc.) deben especificarse individualmente.
Si establece el log_statement parámetro DDL en o y ejecuta un CREATE ROLE/USER ... WITH PASSWORD ... ; comando o ALTER ROLE/USER ... WITH PASSWORD ... ;ALL , postgreSQL crea una entrada en los registros de PostgreSQL donde la contraseña se registra en texto no cifrado, lo que podría provocar un riesgo de seguridad potencial. Es el comportamiento esperado por el diseño del motor de PostgreSQL.
Sin embargo, puede usar la pgaudit extensión y establecer en DDLpgaudit.log , que no registra ninguna CREATE/ALTER ROLE instrucción en el registro del servidor de Postgres, a diferencia de lo que hace cuando se establece log_statementDDLen . Si necesita registrar estas instrucciones, también puede establecer en pgaudit.logROLE, que redacta la contraseña de los registros mientras registra CREATE/ALTER ROLE.
Formato del registro de auditoría
Cada entrada de auditoría comienza con AUDIT:. El formato del resto de la entrada se detalla en la documentación de pgaudit.
Cómo empezar
Para empezar rápidamente, establezca en pgaudit.logALLy abra los registros del servidor para revisar la salida.
Visualización de registros de auditoría
La forma de acceder a los registros depende del punto de conexión que elija. Consulte el artículo de la cuenta de almacenamiento de registros para Azure Storage. Consulte el artículo transmisión de registros de Azure para Event Hubs.
Para los registros de Azure Monitor, los registros se envían al área de trabajo seleccionada. Los registros de Postgres usan el modo de colección AzureDiagnostics , por lo que se pueden consultar desde la tabla AzureDiagnostics. Obtenga más información sobre la consulta y las alertas en la información general de consultas de registros de Azure Monitor .
Puede usar esta consulta para empezar. Puede configurar alertas basadas en consultas.
Busque todas las pgaudit entradas de los registros de Postgres para un servidor determinado en el último día.
AzureDiagnostics
| where Resource =~ "<flexible-server-name>"
| where Category == "PostgreSQLLogs"
| where TimeGenerated > ago(1d)
| where Message contains "AUDIT:"
Actualización de la versión principal con la extensión pgaudit instalada
Durante una actualización de la versión principal, la extensión pgaudit se quita automáticamente y, a continuación, se vuelve a crear una vez completada la actualización. Mientras se restaura la extensión, las configuraciones personalizadas establecidas en pgaudit.log u otros parámetros relacionados no se conservan automáticamente.