fn_get_audit_file (Transact-SQL)

Retorna informações de um arquivo de auditoria criado por uma auditoria de servidor. Para obter mais informações, consulte Compreendendo a auditoria do SQL Server.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

fn_get_audit_file ( file_pattern, {default | initial_file_name | NULL }, {default | audit_file_offset | NULL } )

Argumentos

  • file_pattern
    Especifica o diretório ou caminho e o nome de arquivo do conjunto de arquivos de auditoria que será lido. Esse argumento deve incluir um caminho (letra de unidade ou compartilhamento de rede) e um nome de arquivo, podendo conter um caractere curinga. Um único asterisco (*) pode ser usado para coletar vários arquivos a partir de um conjunto de arquivos de auditoria. Por exemplo:

    • <caminho>\* - Coleta todos os arquivos de auditoria no local especificado.

    • <caminho>\LoginsAudit_{GUID} - Coleta todos os arquivos de auditoria com o nome especificado e par de GUID.

    • <caminho>\LoginsAudit_{GUID}_00_29384.sqlaudit - Coleta um arquivo de auditoria específico.

    ObservaçãoObservação

    Indicar um caminho sem um padrão de nome de arquivo irá gerar um erro.

  • initial_file_name
    Especifica o caminho e o nome de um arquivo especificado no conjunto de arquivos de auditoria a partir do qual iniciar a leitura dos registros de auditoria.

    ObservaçãoObservação

    O argumento initial_file_name deve conter entradas válidas ou o valor padrão ou NULL.

  • audit_file_offset
    Especifica um local conhecido com o arquivo especificado para o initial_file_name. Quando esse argumento for usado, a função começará a leitura a partir do primeiro registro do buffer imediatamente após o deslocamento especificado.

    ObservaçãoObservação

    O argumento audit_file_offset deve conter entradas válidas ou o valor padrão ou NULL.

Tabelas retornadas

A tabela a seguir descreve o conteúdo do arquivo de auditoria que pode ser retornado por essa função.

Nome da coluna

Tipo

Descrição

event_time

datetime2

Data e hora em que a ação auditável é acionada. Não permite valor nulo.

sequence_number

int

Rastreia a seqüência de registros dentro de um único registro de auditoria que é muito grande para ser inserido no buffer de gravação das auditorias. Não permite valor nulo.

action_id

char(4)

A identificação da ação. Não permite valor nulo.

succeeded

bit

1 = Êxito

0 = Falha

Indica se a ação que acionou o evento foi realizada com êxito Não permite valor nulo. Para todos os demais eventos que não são eventos de logon, reporta somente se a verificação de permissões foi bem-sucedida ou não, e não a operação.

permission_bitmask

bigint

Em algumas ações, são as permissões que foram concedidas, negadas ou revogadas.

is_column_permission

bit

1 = verdadeiro

0 = falso

Sinalizador que indica se esta é uma permissão no nível de coluna. Não permite valor nulo. Retorna 0 quando permission_bitmask = 0.

session_id

int

Identificação da sessão em que ocorreu o evento. Não permite valor nulo.

server_principal_id

int

ID do contexto de logon no qual a ação é executada. Não é anulável.

database_principal_id

int

ID do contexto de usuário de banco de dados no qual a ação é executada. Não é anulável. Retornará 0 se isso não se aplicar. Por exemplo, uma operação de servidor.

target_server_principal_id

int

Diretor de Servidor que o GRANT/operação do DENY/REVOKE é executada em. Não permite valor nulo. Retorna 0 se não aplicável.

target_database_principal_id

int

O banco de dados principal no qual a operação GRANT/DENY/REVOKE é executada. Não permite valor nulo. Retorna 0 se não aplicável.

object_id

int

A ID da entidade na qual a auditoria ocorreu. Isso inclui o seguinte:

  • Objetos do servidor

  • Bancos de dados

  • Objetos de banco de dados

  • Objetos de esquema

Não permite valor nulo. Retornará 0 se a entidade for o próprio Servidor ou se a auditoria não for realizada no nível de um objeto. Por exemplo, Autenticação.

class_type

char(2)

O tipo de entidade auditável no qual a auditoria ocorre. Não permite valor nulo.

session_server_principal_name

sysname

Entidade do servidor da sessão. Permite valor nulo.

server_principal_name

sysname

Logon atual. Permite valor nulo.

server_principal_sid

varbinary

SID do logon atual. Permite valor nulo.

database_principal_name

sysname

Usuário atual. Permite valor nulo. Retorna NULL se não disponível.

target_server_principal_name

sysname

Logon de destino da ação. Permite valor nulo. Retorna NULL se não aplicável.

target_server_principal_sid

varbinary

SID do logon de destino. Permite valor nulo. Retorna NULL se não aplicável.

target_database_principal_name

sysname

Usuário de destino da ação. Permite valor nulo. Retorna NULL se não aplicável.

server_instance_name

nvarchar(120)

Nome da instância de servidor no qual a auditoria ocorreu. O formato servidor\instância padrão é usado.

database_name

sysname

O contexto do banco de dados no qual a ação aconteceu. Permite valor nulo. Retorna NULL para auditorias realizadas no nível de servidor.

schema_name

sysname

O contexto do esquema no qual a ação aconteceu. Permite valor nulo. Retorna NULL para auditorias realizadas fora de um esquema.

object_name

sysname

O nome da entidade na qual a auditoria ocorreu. Isso inclui o seguinte:

  • Objetos do servidor

  • Bancos de dados

  • Objetos de banco de dados

  • Objetos de esquema

Permite valor nulo. Retornará NULL se a entidade for o próprio Servidor ou se a auditoria não for realizada no nível de um objeto. Por exemplo, Autenticação.

statement

nvarchar(4000)

Instrução TSQL, se existir. Permite valor nulo. Retorna NULL se não aplicável.

additional_information

nvarchar(4000)

Informações exclusivas que se aplicam somente a um evento são retornadas como XML. Um número pequeno de ações auditável contém esse tipo de informação.

Permite valor nulo. Retornará NULL quando o evento não reportar informações adicionais.

file_name

varchar(260)

O caminho e nome do arquivo de log de auditoria que deu origem ao registro. Não permite valor nulo.

audit_file_offset

bigint

O deslocamento de buffer no arquivo que contém o registro de auditoria. Não permite valor nulo.

Comentários

Se o argumento file_pattern passou para referências de fn_get_audit_file um caminho ou arquivo que não existe, ou se o arquivo não for de auditoria, a mensagem de erro MSG_INVALID_AUDIT_FILE será retornada.

Permissões

Requer a permissão CONTROL SERVER.

Exemplos

Este exemplo lê de um arquivo chamado \\serverName\Audit\HIPPA_AUDIT.sqlaudit.

SELECT * FROM sys.fn_get_audit_file ('\\serverName\Audit\HIPPA_AUDIT.sqlaudit',default,default);
GO

Para obter um exemplo completo de como criar uma auditoria, consulte Compreendendo a auditoria do SQL Server.

Consulte também

Referência

Conceitos