Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2024-06-06 GMT+08:00

Visualización y descarga de registros de auditoría

La función de auditoría de SQL está habilitada de forma predeterminada para las instancias de base de datos de Microsoft SQL Server y no se puede deshabilitar. Las principales operaciones de cambio en servicios, bases de datos y tablas se registran en archivos de registro de auditoría para futuras consultas y descargas.

RDS for SQL Server Audit permite auditar grupos de eventos y eventos individuales a nivel de servidor y de base de datos. Las auditorías de RDS for SQL Server consisten en cero o más elementos de acción de auditoría. Tabla 1 muestra los grupos de acciones de auditoría a nivel de servidor y proporciona la clase de evento de RDS for SQL Server equivalente cuando corresponda. Para obtener más información, vea Grupos de acciones y acciones de auditoría de SQL Server.

  • El tamaño máximo de un archivo de registro de auditoría es de 50 MB. Se pueden mostrar hasta 50 archivos de registro de auditoría.
  • RDS for SQL Server 2008 Web y Standard Editions no admiten la función de auditoría de SQL.
  • No se realiza ninguna auditoría para la creación de trabajos y modificaciones en parámetros, parámetros de atributo de servidor, parámetros de atributo de agente SQL, y parámetros de atributo extendido de base de datos.
  • El parámetro succeeded que se muestra en el registro de auditoría indica si el evento se desencadena correctamente. Su valor no puede ser null. Para todos los eventos excepto los eventos de inicio de sesión, solo se informa del éxito o el fracaso de la comprobación de permisos (no la operación).
  • Para obtener más información acerca de la auditoría de los cambios en la arquitectura a nivel de tabla y columna, consulte el resultado de la auditoría del motor de SQL Server.
  • Para leer los registros de auditoría, puede obtener el nombre del archivo de registro de auditoría de la consola y, a continuación, ejecutar la siguiente sentencia:

    select * from msdb.dbo.rds_fn_get_audit_file('D:\ServerAudit\audit\RDSAudit_test.sqlaudit', default, default)

    Si ya ha descargado el archivo de registro de auditoría en un directorio local, inicie sesión en la base de datos de SQL Server local y, a continuación, ejecute la siguiente sentencia (la cuenta local debe tener el permiso CONTROL SERVER):

    select * from sys.fn_get_audit_file('\\path\RDSAudit_test.sqlaudit', default, default)

Tabla 1 Grupos de acción de auditoría

Nombre del grupo de acciones

Descripción

APPLICATION_ROLE_CHANGE_PASSWORD_GROUP

Este evento se genera cada vez que se cambia una contraseña para un rol de aplicación.

DATABASE_CHANGE_GROUP

Este evento se genera cuando se crea, modifica o elimina una base de datos.

DATABASE_OBJECT_CHANGE_GROUP

Este evento se genera cuando se ejecuta una sentencia CREATE, ALTER o DROP en objetos de base de datos, como esquemas.

DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP

Este evento se genera cuando se produce un cambio de propietario para los objetos dentro del ámbito de la base de datos.

DATABASE_OBJECT_PERMISSION_CHANGE_GROUP

Este evento se genera cuando se ha emitido un GRANT, REVOKE o DENY para objetos de base de datos, como ensamblados y esquemas.

DATABASE_OWNERSHIP_CHANGE_GROUP

Este evento se genera cuando se utiliza la sentencia ALTER AUTHORIZATION para cambiar el propietario de una base de datos.

DATABASE_PERMISSION_CHANGE_GROUP

Este evento se genera cada vez que se emite un GRANT, REVOKE o DENY para un permiso de sentencia por parte de un usuario en SQL Server para eventos de solo base de datos, como la concesión de permisos en una base de datos.

DATABASE_PRINCIPAL_CHANGE_GROUP

Este evento se genera cuando los principales, como los usuarios, se crean, alteran o eliminan de una base de datos.

DATABASE_ROLE_MEMBER_CHANGE_GROUP

Este evento se genera cada vez que se agrega o se elimina un inicio de sesión de un rol de base de datos.

FAILED_LOGIN_GROUP

Indica que un principal intentó iniciar sesión en una base de datos de SQL Server y falló. Los eventos de esta clase son generados por conexiones nuevas o por conexiones que se reutilizan desde un grupo de conexiones.

LOGIN_CHANGE_PASSWORD_GROUP

Este evento se genera cada vez que se cambia una contraseña de inicio de sesión por medio de la sentencia ALTER LOGIN o el procedimiento almacenado sp_password.

SCHEMA_OBJECT_CHANGE_GROUP

Este evento se genera cuando se realiza una operación CREATE, ALTER o DROP en un esquema.

SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP

Este evento se genera cuando se comprueban los permisos para cambiar el propietario del objeto de esquema (como una tabla, procedimiento o función).

SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP

Este evento se genera cada vez que se realiza una concesión, denegación, revocación contra un objeto de esquema.

SERVER_OBJECT_CHANGE_GROUP

Este evento se genera para las operaciones CREATE, ALTER, o DROP en objetos de servidor.

SERVER_OBJECT_OWNERSHIP_CHANGE_GROUP

Este evento se genera cuando se cambia el propietario de los objetos en el ámbito del servidor.

SERVER_OBJECT_PERMISSION_CHANGE_GROUP

Este evento se genera cada vez que se emite una GRANT, REVOKE o DENY para un permiso de objeto de servidor por cualquier principal en SQL Server.

SERVER_PERMISSION_CHANGE_GROUP

Este evento se genera cuando se emite un GRANT, REVOKE o DENY para permisos en el ámbito del servidor.

SERVER_PRINCIPAL_CHANGE_GROUP

Este evento se genera cuando se crean, alteran o eliminan los principales de servidor.

SERVER_ROLE_MEMBER_CHANGE_GROUP

Este evento se genera cada vez que se agrega o se elimina un inicio de sesión de un rol de servidor fijo.

SERVER_STATE_CHANGE_GROUP

Este evento se produce cuando se modifica el estado del servicio de SQL Server.

USER_CHANGE_PASSWORD_GROUP

Este evento se genera cada vez que se cambia la contraseña de un usuario de base de datos contenida mediante la sentencia ALTER USER (SQL Server 2008 no está involucrado).

Consulta de registros de auditoría

  1. Inicie sesión en la consola de gestión.
  2. Haga clic en en la esquina superior izquierda y seleccione una región y un proyecto.
  3. Haga clic en en la esquina superior izquierda de la página y seleccione Databases > Relational Database Service.
  4. En la página Instances, haga clic en la instancia de base de datos de destino.
  5. En el panel de navegación de la izquierda, elija Logs. En la página System Logs, haga clic en Download.
  6. En la página Download, registre los nombres de los registros de auditoría.

    Figura 1 Registros de auditoría de RDS for SQL Server

    El nombre del registro de auditoría comienza por RDSAudit. El sistema agrega automáticamente el GUID y la marca de tiempo al nombre del archivo como sufijo.

  7. Conéctese a la instancia de base de datos a través del cliente de Microsoft SQL Server. Para obtener más información, consulte Conexión a una instancia de base de datos a través de una red pública .
  8. Después de conectar la instancia de base de datos, ejecute el siguiente comando para ver detalles acerca de los registros de auditoría de SQL:

    select * from msdb.dbo.rds_fn_get_audit_file(file_pattern, initial_file_name, audit_record_offset)

    Tabla 2 Descripción de parámetro

    Parámetro

    Descripción

    file_pattern

    Especifica el directorio o la ruta de acceso y el nombre de archivo del conjunto de archivos de auditoría que se va a leer.

    initial_file_name

    Especifica la ruta de acceso y el nombre de un archivo específico del conjunto de archivos de auditoría desde el que empezar a leer los registros de auditoría.

    audit_record_offset

    Especifica una ubicación conocida con el archivo especificado para initial_file_name.

    Ejemplo:

    select * from msdb.dbo.rds_fn_get_audit_file('D:\ServerAudit\audit\*.sqlaudit', default, default)

    Figura 2 Detalles del registro de auditoría

Descarga de registros de auditoría SQL

  1. Inicie sesión en la consola de gestión.
  2. Haga clic en en la esquina superior izquierda y seleccione una región y un proyecto.
  3. Haga clic en en la esquina superior izquierda de la página y seleccione Databases > Relational Database Service.
  4. En la página Instances, haga clic en la instancia de base de datos de destino.
  5. En el panel de navegación de la izquierda, elija Logs. En la página System Logs, haga clic en Download.
  6. Busque un registro para descargar y haga clic en Download en la columna Operation.

    1. El sistema carga automáticamente las tareas de preparación para la descarga. La duración de carga viene determinada por el tamaño del archivo de registro y el entorno de red.
      • Cuando se prepara el registro para su descarga, el estado del registro es Preparing.
      • Cuando el registro está listo para su descarga, el estado del registro es Preparation completed.
      • Si la preparación para la descarga falla, el estado del registro es Abnormal.
    2. En el cuadro de diálogo que se muestra, haga clic en OK para descargar el registro cuyo estado es Preparation completed. Si hace clic en Cancel, el sistema no descargará el registro.

      El enlace de descarga es válido durante 5 minutos. Después de que el enlace de descarga expira, se muestra un mensaje que indica que el enlace de descarga ha caducado. Puede cerrar la ventana y repetir el procedimiento 6 para intentar descargar un registro de nuevo.