Поделиться через


Как создать аудит уровня базы данных

Прежде чем создать спецификацию аудита на уровне базы данных, необходимо создать и настроить объект подсистемы аудита SQL Server, который можно использовать для аудита базы данных.

Эта задача решается с помощью редактора запросов в среде SQL Server Management Studio для выполнения следующей процедуры. В следующем примере создается аудит на уровне базы данных любых операций INSERT в базе данных AdventureWorks, в таблице Person.Contacts, результаты которого передаются в журнал событий приложений Windows.

Создание аудита на уровне базы данных

  1. Создайте объект аудита и определите цель.

    /* Create the SQL Server Audit object, and send the results to the 
    Windows Application event log. */
    CREATE SERVER AUDIT Test_SQL_Server_Audit
        TO APPLICATION_LOG
        /* The Queue Delay is set to 1000, meaning one second 
             intervals to write to the target. */
        WITH ( QUEUE_DELAY = 1000,  ON_FAILURE = CONTINUE);
    GO;
    
  2. Создайте спецификацию аудита базы данных и сопоставьте ее объекту аудита.

    /* Create the Database Audit Specification object using an Audit event for the Person.Contact Table and the FirstName and LastName columns. */
    USE AdventureWorks
    GO;
    CREATE DATABASE AUDIT SPECIFICATION Test_Database_Audit_Specification
    FOR SERVER AUDIT Test_SQL_Server_Audit
        ADD (INSERT 
               ON Person.Contact
               BY dbo)
        WITH (STATE = ON);
    GO
    
  3. Включите аудит.

    /* Enable the audit. */
    ALTER SERVER AUDIT Test_SQL_Server_Audit
    WITH (STATE = ON);
    GO