Azure Synapse Analytics audit log format

Tip

Microsoft Fabric Data Warehouse est un entrepôt relationnel à l’échelle de l’entreprise sur une base de lac de données, avec une architecture future, une IA intégrée et de nouvelles fonctionnalités. Si vous débutez avec l'entreposage de données, commencez par Fabric Data Warehouse. Les charges de travail de pool SQL existantes dédicées peuvent être mises à niveau vers Fabric pour accéder à de nouvelles fonctionnalités dans la science des données, l’analytique en temps réel et la création de rapports.

Azure Synapse Analytics audit suit les événements de la base de données et les écrit sur stockage Azure, ou les envoie à Azure Event Hubs ou Azure Monitor Log Analytics pour un traitement et une analyse en aval.

Conventions de dénomination

Audit des blobs

Les journaux d’audit stockés dans Stockage Blob Azure sont stockés dans un conteneur nommé sqldbauditlogs. La hiérarchie des répertoires à l’intérieur du conteneur est <ServerName>/<DatabaseName>/<AuditName>/<Date>/. Le format du nom de fichier blob est <CreationTime>_<FileNumberInSession>.xel, où CreationTime utilise le format UTC hh_mm_ss_ms et FileNumberInSession est un index en cours lorsqu’une session couvre plusieurs fichiers blob.

Par exemple, le chemin suivant est valable pour la base de données Database1 sur serveur Server1:

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

Event Hubs

Les événements d’audit sont écrits dans l’espace de noms et le hub d’événements configurés pour l’audit. Les événements sont capturés dans le corps des événements Avro Apache et utilisent un formatage JSON avec un codage UTF-8.

Log Analytics

Les événements d’audit sont écrits sur la AzureDiagnostics table dans l’espace de travail Log Analytics configuré. Les événements d’audit de base de données utilisent cette SQLSecurityAuditEvents catégorie, et les opérations de support Microsoft utilisent cette DevOpsOperationsAudit catégorie. Pour des conseils de requête, voir Log Analytics requêtes.

Champs de journal d’audit

Nom (blob) Nom (Event Hubs/Log Analytics) Description Type d’objet blob Type Event Hubs/Log Analytics
action_id action_id_s ID de l’action varchar(4) string
action_name action_name_s Nom de l’action N/A string
additional_information additional_information_s Toute information supplémentaire sur l’événement, stockée sous forme XML nvarchar(4000) string
affected_rows affected_rows_d Nombre de lignes affectées par la requête bigint int
application_name application_name_s Nom de l’application cliente nvarchar(128) string
audit_schema_version audit_schema_version_d Toujours 1 int int
class_type class_type_s Type d’entité auditable sur laquelle l’audit a lieu varchar(2) string
class_type_desc class_type_description_s Description de l’entité auditable sur laquelle l’audit a lieu N/A string
client_ip client_ip_s Adresse IP source de l’application cliente nvarchar(128) string
connection_id N/A ID de la connexion dans le serveur GUID N/A
data_sensitivity_information data_sensitivity_information_s Types des informations et étiquettes de sensibilité renvoyées par la requête auditée, en fonction des colonnes classifiées dans la base de données. Pour plus d’informations, voir Azure Synapse Analytics security : Protection contre les menaces nvarchar(4000) string
database_name database_name_s Le contexte de la base de données dans lequel l’action s’est produite sysname string
database_principal_id database_principal_id_d ID du contexte utilisateur de la base de données dans lequel l’action est effectuée int int
database_principal_name database_principal_name_s Nom du contexte utilisateur de la base de données dans lequel l’action est effectuée sysname string
duration_milliseconds duration_milliseconds_d Durée d’exécution des requêtes en millisecondes bigint int
event_time event_time_t Date et heure de la procédure auditable déclenchée datetime2 datetime
host_name N/A Nom d’hôte du client string N/A
is_column_permission is_column_permission_s Indicateur indiquant s’il s’agit d’une autorisation au niveau de la colonne. 1 = vrai, 0 = faux bit string
N/A is_server_level_audit_s Drapeau indiquant si cet audit se situe au niveau serveur N/A string
object_ id object_id_d ID de l’entité sur laquelle l’audit s’est produit. Cela inclut les objets : serveur, bases de données, objets de base de données et objets schéma. 0 si l’entité est le serveur lui-même ou si l’audit n’est pas réalisé au niveau de l’objet int int
object_name object_name_s Nom de l’entité sur laquelle l’audit s’est produit. Cela inclut les objets : serveur, bases de données, objets de base de données et objets schéma. 0 si l’entité est le serveur lui-même ou si l’audit n’est pas réalisé au niveau de l’objet sysname string
obo_middle_tier_app_id obo_middle_tier_app_id_s L’identifiant de l’application intermédiaire qui se connectait à Azure Synapse Analytics via l’accès OBO. varchar(120) string
permission_bitmask permission_bitmask_s Si applicable, présente les autorisations qui ont été octroyées, refusées ou révoquées varbinary(16) string
response_rows response_rows_d Nombre de lignes retournées dans l’ensemble de résultats bigint int
schema_name schema_name_s Contexte du schéma dans lequel l’action s’est produite. NULL pour les audits ayant lieu en dehors d’un schéma sysname string
N/A securable_class_type_s Objet sécurisé qui correspond à l’audité class_type N/A string
sequence_group_id sequence_group_id_g Identificateur unique varbinary GUID
sequence_number sequence_number_d Assure le suivi de la séquence d'enregistrements au sein d'un seul enregistrement d'audit qui était trop volumineux pour être contenu dans la mémoire tampon d'écriture dédiée aux audits. Azure Synapse Analytics audit stocke 4000 caractères de données pour les champs de caractères dans un enregistrement d’audit. Lorsqu’il y a plus de 4000 caractères, toutes les données au-delà des 4000 premiers caractères seront tronquées int int
server_instance_name server_instance_name_s Nom de l’instance serveur où l’audit a eu lieu sysname string
server_principal_id server_principal_id_d ID du contexte de connexion dans lequel l’action est effectuée int int
server_principal_name server_principal_name_s Connexion actuelle sysname string
server_principal_sid server_principal_sid_s SID de connexion actuel varbinary string
session_id session_id_d Identification de la session sur laquelle l’événement s’est produit smallint int
session_server_principal_name session_server_principal_name_s Principal serveur pour la session sysname string
statement statement_s Instruction T-SQL exécutée (le cas échéant) nvarchar(4000) string
succeeded succeeded_s Indique si l’action qui a déclenché l’événement a réussi. Pour les événements autres que la connexion et le batch, cela ne rapporte que si la vérification des permissions a réussi ou échoué, pas l’opération. 1 = succès, 0 = échec bit string
target_database_principal_id target_database_principal_id_d Le principal de base de données sur lequel l’opération GRANT//DENYREVOKE est effectuée. 0 si ce n’est pas applicable int int
target_database_principal_name target_database_principal_name_s Utilisateur cible de l’action. NULL si ce n’est pas applicable string string
target_server_principal_id target_server_principal_id_d Principal du serveur sur lequel l’opération GRANT/DENY/REVOKE est effectuée. Retour de 0 si ce n’est pas applicable int int
target_server_principal_name target_server_principal_name_s Connexion cible de l’action. NULL si ce n’est pas applicable sysname string
target_server_principal_sid target_server_principal_sid_s SID de la connexion cible. NULL si ce n’est pas applicable 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 d’événement défini par l’utilisateur passé en tant qu’argument à sp_audit_write. NULL pour les événements système (par défaut) et non zéro pour l’événement défini par l’utilisateur. Pour plus d’informations, voir sp_audit_write (Transact-SQL) smallint int
user_defined_information user_defined_information_s Informations définies par l’utilisateur transmises comme argument à sp_audit_write. NULL pour les événements système (par défaut) et non nul pour les événements définis par l’utilisateur. Pour plus d’informations, voir sp_audit_write (Transact-SQL) nvarchar(4000) string