Azure Synapse Analytics audit log format

Dica

Microsoft Fabric Data Warehouse é um armazém relacional de escala empresarial com base de data lake, arquitetura pronta para o futuro, IA integrada e novos recursos. Se você não estiver familiarizado com o data warehouse, comece com Fabric Data Warehouse. As cargas de trabalho existentes de pools de SQL dedicados podem ser atualizadas para Fabric para acessar novos recursos em ciência de dados, análise em tempo real e relatórios.

Azure Synapse Analytics auditoria acompanha eventos do banco de dados e os grava para Armazenamento do Azure, ou os envia para Hubs de Eventos do Azure ou Azure Monitor Log Analytics para processamento e análise a jusante.

Convenções de nomenclatura

Auditoria por blob

Logs de auditoria armazenados no Armazenamento de Blobs do Azure são armazenados em um contêiner chamado sqldbauditlogs. A hierarquia de diretórios dentro do contêiner é <ServerName>/<DatabaseName>/<AuditName>/<Date>/. O formato do nome do arquivo blob é <CreationTime>_<FileNumberInSession>.xel, onde CreationTime usa o formato UTC hh_mm_ss_ms e FileNumberInSession é um índice em execução quando uma sessão abrange múltiplos arquivos blob.

Por exemplo, o seguinte caminho é válido para banco de dados Database1 no servidor Server1:

Server1/Database1/SqlDbAuditing_ServerAudit_NoRetention/2019-02-03/12_23_30_794_0.xel

Hubs de Eventos

Os eventos de auditoria são gravados no namespace e no hub de eventos configurados para auditoria. Os eventos são capturados no corpo dos eventos Apache Avro e usam formatação JSON com codificação UTF-8.

Análise de Logs

Os eventos de auditoria são gravados na AzureDiagnostics tabela no espaço de trabalho configurado do Log Analytics. Eventos de auditoria de banco de dados usam a SQLSecurityAuditEvents categoria, e as operações de suporte da Microsoft usam essa DevOpsOperationsAudit categoria. Para orientações de consultas, veja Log Analytics consultas.

Campos de log de auditoria

Nome (blob) Nome (Event Hubs/Log Analytics) Description Tipo de blob Tipo Event Hubs/Log Analytics
action_id action_id_s ID da ação varchar(4) string
action_name action_name_s Nome da ação N/A string
additional_information additional_information_s Qualquer informação adicional sobre o evento, armazenada como XML nvarchar(4000) string
affected_rows affected_rows_d Número de linhas afetadas pela consulta bigint int
application_name application_name_s Nome da aplicação cliente nvarchar(128) string
audit_schema_version audit_schema_version_d Sempre 1 int int
class_type class_type_s Tipo de entidade auditável na qual a auditoria ocorre varchar(2) string
class_type_desc class_type_description_s Descrição da entidade auditável na qual ocorre a auditoria N/A string
client_ip client_ip_s IP de origem do aplicativo cliente nvarchar(128) string
connection_id N/A ID da conexão no servidor GUID N/A
data_sensitivity_information data_sensitivity_information_s Tipos de informações e rótulos de confidencialidade retornados pela consulta auditada, com base nas colunas classificadas no banco de dados. Para mais informações, veja Azure Synapse Analytics security: Threat protection nvarchar(4000) string
database_name database_name_s O contexto do banco de dados em que a ação ocorreu sysname string
database_principal_id database_principal_id_d ID do contexto do usuário do banco de dados em que a ação é realizada int int
database_principal_name database_principal_name_s Nome do contexto do usuário do banco de dados no qual a ação é realizada sysname string
duration_milliseconds duration_milliseconds_d Duração da execução da consulta em milissegundos bigint int
event_time event_time_t Data e hora em que a ação auditável é executada datetime2 datetime
host_name N/A O nome do host do cliente string N/A
is_column_permission is_column_permission_s Sinalizador indicando se essa é uma permissão de nível de coluna. 1 = verdadeiro, 0 = falso bit string
N/A is_server_level_audit_s Flag indicando se essa auditoria está no nível do servidor N/A string
object_ id object_id_d A ID da entidade na qual a auditoria ocorreu. Isso inclui os : objetos servidor, bancos de dados, objetos de banco de dados e objetos de esquema. 0 se a entidade for o próprio servidor ou se a auditoria não for realizada em nível de objeto int int
object_name object_name_s O nome da entidade na qual a auditoria ocorreu. Isso inclui os : objetos servidor, bancos de dados, objetos de banco de dados e objetos de esquema. 0 se a entidade for o próprio servidor ou se a auditoria não for realizada em nível de objeto sysname string
obo_middle_tier_app_id obo_middle_tier_app_id_s O ID da aplicação de nível intermediário que se conectava ao Azure Synapse Analytics usando acesso OBO. varchar(120) string
permission_bitmask permission_bitmask_s Quando aplicável, mostra as permissões que foram concedidas, negadas ou revogadas varbinary(16) string
response_rows response_rows_d Número de linhas retornadas no conjunto de resultados bigint int
schema_name schema_name_s O contexto do esquema no qual a ação aconteceu. NULL para auditorias que ocorrem fora de um esquema sysname string
N/A securable_class_type_s Objeto securável que mapeia para o class_type que está sendo auditado N/A string
sequence_group_id sequence_group_id_g Identificador exclusivo varbinary GUID
sequence_number sequence_number_d Rastreia a sequência de registros dentro de um único registro de auditoria, que é grande demais para caber no buffer de gravação das auditorias. O Azure Synapse Analytics auditing armazena 4000 caracteres de dados para campos de caracteres em um registro de auditoria. Quando houver mais de 4000 caracteres, qualquer dado além dos primeiros 4000 caracteres será truncado int int
server_instance_name server_instance_name_s Nome da instância do servidor onde a auditoria ocorreu sysname string
server_principal_id server_principal_id_d ID do contexto de login em que a ação é realizada int int
server_principal_name server_principal_name_s Login atual sysname string
server_principal_sid server_principal_sid_s SID de login atual varbinary string
session_id session_id_d ID da sessão em que o evento ocorreu smallint int
session_server_principal_name session_server_principal_name_s Principal de servidor para sessão sysname string
statement statement_s Instrução T-SQL que foi executada (se houver) nvarchar(4000) string
succeeded succeeded_s Indica se a ação que disparou o evento foi bem-sucedida. Para eventos que não sejam login e lote, isso só informa se a verificação de permissão foi bem-sucedida ou falhou, não a operação. 1 = sucesso, 0 = fracasso bit string
target_database_principal_id target_database_principal_id_d O principal do banco de dados sobre o qual a GRANT//DENYREVOKE operação é executada. 0 se não aplicável int int
target_database_principal_name target_database_principal_name_s Usuário de destino da ação. NULL se não for aplicável string string
target_server_principal_id target_server_principal_id_d Entidade de servidor na qual a GRANT/DENY/REVOKE operação é executada. Retorna 0 se não aplicável int int
target_server_principal_name target_server_principal_name_s Logon de destino da ação. NULL se não for aplicável sysname string
target_server_principal_sid target_server_principal_sid_s SID do logon de destino. NULL se não for aplicável varbinary string
transaction_id transaction_id_d Not populated for Azure Synapse Analytics bigint int
user_defined_event_id user_defined_event_id_d ID de evento definida pelo usuário passada como um argumento para sp_audit_write. NULL para eventos do sistema (padrão) e diferente de zero para evento definido pelo usuário. Para mais informações, veja sp_audit_write (Transact-SQL) smallint int
user_defined_information user_defined_information_s Informação definida pelo usuário passada como argumento para sp_audit_write. NULL para eventos do sistema (padrão) e não zero para eventos definidos pelo usuário. Para mais informações, veja sp_audit_write (Transact-SQL) nvarchar(4000) string