Partilhar via


sp_audit_write (Transact-SQL)

Aplica-se a:SQL Server

Adiciona um evento de auditoria definido pelo usuário ao USER_DEFINED_AUDIT_GROUP. Se USER_DEFINED_AUDIT_GROUP não estiver habilitado, sp_audit_write será ignorado.

Transact-SQL convenções de sintaxe

Sintaxe

sp_audit_write [ @user_defined_event_id = ] user_defined_event_id
    [ , [ @succeeded = ] succeeded ]
    [ , [ @user_defined_information = ] N'user_defined_information' ]
[ ; ]

Argumentos

Importante

Os argumentos para procedimentos armazenados estendidos devem ser inseridos na ordem específica, conforme descrito na seção de sintaxe. Se os parâmetros forem inseridos fora de ordem, ocorrerá uma mensagem de erro.

[ @user_defined_event_id = ] user_defined_event_id

Um parâmetro definido pelo usuário e registrado na coluna user_defined_event_id do log de auditoria. @user_defined_event_id é pequeno.

[ @succeeded = ] sucedeu

Um parâmetro passado pelo usuário para indicar se o evento foi bem-sucedido ou não. Esse valor aparece na coluna succeeded do log de auditoria. @succeeded é pouco.

[ @user_defined_information = ] N'user_defined_information'

O texto definido pelo usuário e registrado na nova coluna user_defined_event_id do log de auditoria. @user_defined_information é nvarchar(4000).

Valores de código de retorno

0 (sucesso) ou 1 (fracasso).

As falhas são causadas por parâmetros de entrada incorretos ou falha na gravação no log de auditoria de destino.

Comentários

Quando o USER_DEFINED_AUDIT_GROUP é adicionado a uma especificação de auditoria de servidor ou a uma especificação de auditoria de banco de dados, o evento acionado por sp_audit_write é incluído no log de auditoria.

Permissões

Requer associação à função de banco de dados pública.

Exemplos

Um. Criar um evento de auditoria definido pelo usuário com texto informativo

O exemplo a seguir cria um evento de auditoria com um valor @user_defined_event_id de 27, o valor @succeeded de 0e inclui texto informativo opcional.

EXECUTE sp_audit_write
    @user_defined_event_id = 27,
    @succeeded = 0,
    @user_defined_information = N'Access to a monitored object.';

B. Criar um evento de auditoria definido pelo usuário sem texto informativo

O exemplo a seguir cria um evento de auditoria com um valor @user_defined_event_id de 27, o valor @succeeded de 0e não inclui texto informativo opcional ou os nomes de parâmetros opcionais.

EXECUTE sp_audit_write 27, 0;