Compartir a través de


Crear y administrar auditorías con Transact-SQL

Si mediante Management Studio o Transact-SQL ejecuta instrucciones de lenguaje de definición de datos (DDL) de Transact-SQL, funciones y vistas de administración dinámica o vistas de catálogo, podrá crear soluciones sencillas o complejas de SQL Server Audit para el entorno de SQL Server.

Temas de referencia

Puede utilizar instrucciones de DDL, vistas y funciones de administración dinámica y vistas de catálogo para implementar todos los aspectos de SQL Server Audit.

Permisos

Cada una de las características y los comandos para SQL Server Audit tiene sus propios requisitos de permisos.

Para crear, modificar o quitar una auditoría de servidor o una especificación de auditoría de servidor, las entidades de seguridad de servidor requieren el permiso ALTER ANY SERVER AUDIT o CONTROL SERVER. Para crear, modificar o quitar una especificación de auditoría de base de datos, las entidades de seguridad de base de datos requieren el permiso ALTER ANY DATABASE AUDIT, o el permiso ALTER o CONTROL en la base de datos. Además, las entidades de seguridad deben tener el permiso para conectarse a la base de datos o los permisos ALTER ANY SERVER AUDIT o CONTROL SERVER.

A menos que se especifique lo contrario, para que una entidad de seguridad pueda ver las vistas de catálogo debe cumplir una de las condiciones siguientes:

  • Pertenencia a la función fija de servidor sysadmin.

  • El permiso CONTROL SERVER.

  • El permiso VIEW SERVER STATE.

  • El permiso ALTER ANY AUDIT.

  • El permiso VIEW AUDIT STATE (sólo da el acceso principal a la vista de catálogo sys.server_audits).

Una entidad de seguridad debe tener el permiso VIEW SERVER STATE o ALTER ANY AUDIT para utilizar las vistas de administración dinámica.

Para obtener más información sobre cómo conceder derechos y permisos, vea GRANT (Transact-SQL).

Nota de advertenciaAdvertencia

De la misma forma que las entidades de seguridad de la función sysadmin pueden manipular cualquier componente de auditoría, las de la función db_owner pueden manipular las especificaciones de auditoría en una base de datos. SQL Server Audit comprobará si un inicio de sesión que crea o modifica una especificación de auditoría tiene al menos el permiso ALTER ANY DATABASE AUDIT. Sin embargo, no realiza ninguna validación al adjuntar una base de datos. Como norma, debería otorgar la misma confianza a las especificaciones de auditoría de base de datos que a las entidades de seguridad que tienen la función sysadmin o db_owner.

Instrucciones de lenguaje de definición de datos (DDL)

Funciones y vistas dinámicas

En la tabla siguiente se enumeran las funciones y vistas dinámicas que puede usar con las auditorías de SQL Server.

Funciones y vistas dinámicas

Descripción

sys.dm_audit_actions

Devuelve una fila por cada acción de auditoría sobre la que se puede guardar información en el registro de auditoría y por cada grupo de acciones de auditoría que se puede configurar como parte de SQL Server Audit.

sys.dm_server_audit_status

Proporciona información sobre el estado actual de la auditoría.

sys.dm_audit_class_type_map

Devuelve una tabla que asigna el campo class_type del registro de auditoría al campo class_desc en sys.dm_audit_actions.

fn_get_audit_file

Devuelve información de un archivo de auditoría creado por una auditoría de servidor.

En la tabla siguiente se enumeran las vistas de catálogo que puede usar con las auditorías de SQL Server.

Vistas de catálogo

Descripción

sys.database_audit_specifications

Contiene información sobre las especificaciones de auditoría de base de datos en una auditoría de SQL Server de una instancia del servidor.

sys.database_audit_specification_details

Contiene información sobre las especificaciones de auditoría de base de datos en una auditoría de SQL Server de una instancia de servidor para todas las bases de datos.

sys.server_audits

Contiene una fila para cada auditoría de SQL Server de una instancia de servidor.

sys.server_audit_specifications

Contiene información sobre las especificaciones de auditoría de servidor en una auditoría de SQL Server de una instancia del servidor.

sys.server_audit_specifications_details

Contiene información sobre los detalles de las especificaciones de auditoría de servidor (acciones) en una auditoría de SQL Server de una instancia de servidor.

sys.server_file_audits

Contiene información adicional sobre el tipo de auditoría de archivos en una auditoría de SQL Server de una instancia de servidor.