Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:Banco de Dados SQL do Azure
Instância Gerenciada de SQL do Azure
A auditoria do Banco de Dados SQL do Azure rastreia eventos de banco de dados e os grava em um log de auditoria na sua conta de armazenamento do Azure ou os envia ao Hub de Eventos ou Log Analytics para análise e processamento downstream.
Convenções de nomenclatura
Auditoria de blob
Os logs de auditoria do Armazenamento de Blobs do Azure são armazenados em um contêiner denominado sqldbauditlogs na conta de armazenamento do Azure. A hierarquia de diretórios dentro do contêiner está no formato <ServerName>/<DatabaseName>/<AuditName>/<Date>/. O formato de nome do arquivo de Blob é <CreationTime>_<FileNumberInSession>.xel, em que CreationTime está no formato hh_mm_ss_ms UTC, e FileNumberInSession é um índice em execução em casos de logs de sessão que abrangem vários arquivos de Blob.
Por exemplo, para o banco de dados Database1 em Server1 é possível o seguinte caminho válido:
Server1/Database1/SqlDbAuditing_ServerAudit_NoRetention/2019-02-03/12_23_30_794_0.xel
Os logs de auditoria de réplicas somente leitura são armazenados no mesmo contêiner. A hierarquia de diretórios dentro do contêiner está no formato <ServerName>/<DatabaseName>/<AuditName>/<Date>/RO/. O nome do arquivo de Blob compartilha o mesmo formato. Os logs de auditoria de réplicas somente leitura são armazenados no mesmo contêiner.
Hub de evento
Os eventos de auditoria são gravados no namespace e no hub de eventos definidos durante a configuração de auditoria e são capturados no corpo de eventos do Apache Avro e armazenados usando a formatação JSON com codificação UTF-8. Para ler os logs de auditoria, você pode usar as Ferramentas Avro ou ferramentas similares que processam esse formato.
Análise de Logs
Os eventos de auditoria são gravados no workspace do Log Analytics definido durante a configuração de auditoria, na tabela AzureDiagnostics com a categoria SQLSecurityAuditEvents e na tabela com a categoria DevOpsOperationsAudit para as operações de Suporte da Microsoft. Para obter informações úteis adicionais sobre o idioma e os comandos de pesquisa do Log Analytics, consulte Referência de pesquisa do Log Analytics.
Campos de log de auditoria
| Nome (blob) | Nome (Hubs de Eventos/Log Analytics) | Descrição | Tipo de blob | Tipo de Hubs de Eventos/Log Analytics |
|---|---|---|---|---|
action_id |
action_id_s |
ID da ação | varchar(4) |
string |
action_name |
action_name_s |
Nome da ação | N/D | string |
additional_information |
additional_information_s |
Qualquer informação adicional sobre o evento, armazenado em XML | nvarchar(4000) |
string |
affected_rows |
affected_rows_d |
Número de linhas afetadas pela consulta | bigint |
int |
application_name |
application_name_s |
Nome do aplicativo 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 no qual ocorre a auditoria | varchar(2) |
string |
class_type_desc |
class_type_description_s |
Descrição da entidade auditável na qual a auditoria ocorre | N/D | string |
client_ip |
client_ip_s |
IP de origem do aplicativo cliente | nvarchar(128) |
string |
connection_id |
N/D | ID da conexão no servidor | GUID |
N/D |
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. Saiba mais sobre a Descoberta e classificação de dados do Banco de Dados SQL do Azure | nvarchar(4000) |
string |
database_name |
database_name_s |
O contexto do banco de dados no qual a ação aconteceu | sysname |
string |
database_principal_id |
database_principal_id_d |
ID do contexto do usuário de banco de dados no qual a ação é executada | int |
int |
database_principal_name |
database_principal_name_s |
Nome do contexto do usuário de banco de dados no qual a ação é executada | 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 é acionada | datetime2 |
datetime |
host_name |
N/D | O nome do host do cliente | string |
N/D |
is_column_permission |
is_column_permission_s |
Sinalizador que indica se esta é uma permissão no nível de coluna. 1 = verdadeiro, 0 = falso | bit |
string |
| N/D | is_server_level_audit_s |
Sinalizador indicando se essa auditoria está no nível do servidor | N/D | string |
object_ id |
object_id_d |
A ID da entidade na qual a auditoria ocorreu. Isso inclui: objetos de 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 no nível de um objeto | int |
int |
object_name |
object_name_s |
O nome da entidade na qual a auditoria ocorreu. Isso inclui: objetos de 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 no nível de um 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 Banco de Dados SQL do Azure usando acesso OBO. | varchar(120) |
string |
permission_bitmask |
permission_bitmask_s |
Quando aplicável, mostra as permissões 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/D | securable_class_type_s |
Objeto securável que mapeia para o class_type que está sendo auditado |
N/D | 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 é muito grande para se ajustar no buffer de gravação das auditorias. A auditoria do Banco de Dados SQL do Azure armazena 4000 caracteres de dados para campos de caracteres em um registro de auditoria. Quando houver mais de 4.000 caracteres, todos os dados além dos primeiros 4.000 caracteres serão truncados | int |
int |
server_instance_name |
server_instance_name_s |
Nome da instância de servidor no qual a auditoria ocorreu | sysname |
string |
server_principal_id |
server_principal_id_d |
ID do contexto de logon em que a ação é executada | int |
int |
server_principal_name |
server_principal_name_s |
Logon atual | sysname |
string |
server_principal_sid |
server_principal_sid_s |
SID do logon atual | varbinary |
string |
session_id |
session_id_d |
ID da sessão em que ocorreu o evento | smallint |
int |
session_server_principal_name |
session_server_principal_name_s |
Entidade de segurança do servidor da 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 realizada com êxito. Para todos os demais eventos que não são de logon de lote, reporta somente se a verificação de permissões foi bem-sucedida ou não, e não a operação. 1 = êxito, 0 = falha | 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 |
Somente SQL Server (começando com 2016) – 0 para o Banco de Dados SQL do Azure | 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 obter mais informações, confira 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 diferente de zero para evento definido pelo usuário. Para obter mais informações, confira sp_audit_write (Transact-SQL) |
nvarchar(4000) |
string |
Auditoria no Azure Synapse Analytics
Para informações sobre o formato do log de auditoria no Azure Synapse Analytics, veja Formato do log de auditoria.
Próximas etapas
Saiba mais sobre a auditoria do Banco de Dados SQL do Azure.