SQL Database-granskningsloggformat

Gäller för:Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

Azure SQL Database-granskning spårar databashändelser och skriver dem till en granskningslogg i ditt Azure Storage-konto, eller skickar dem till Event Hub eller Log Analytics för nedströmsbearbetning och analys.

Namngivningskonventioner

Blobgranskning

Granskningsloggar som lagras i Azure Blob Storage lagras i en container med namnet sqldbauditlogs i Azure Storage-kontot. Kataloghierarkin i containern är av formatet <ServerName>/<DatabaseName>/<AuditName>/<Date>/. Blobfilnamnsformatet är <CreationTime>_<FileNumberInSession>.xel, där CreationTime är i UTC-format hh_mm_ss_ms och FileNumberInSession är ett index som körs om sessionsloggarna sträcker sig över flera Blob-filer.

För databasen Database1Server1 följande är till exempel en möjlig giltig sökväg:

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

Skrivskyddade replikers granskningsloggar lagras i samma container. Kataloghierarkin i containern är av formatet <ServerName>/<DatabaseName>/<AuditName>/<Date>/RO/. Blobfilnamnet delar samma format. Granskningsloggarna för skrivskyddade repliker lagras i samma container.

Händelsehubben

Granskningshändelser skrivs till den namnrymd och den händelsehubb som definierades under granskningskonfigurationen och registreras i texten för Apache Avro-händelser och lagras i JSON-format med UTF-8-kodning. Om du vill läsa granskningsloggarna kan du använda Avro-verktyg eller liknande verktyg som kan hantera det här formatet.

Log Analytics

Granskningshändelser skrivs till Log Analytics-arbetsytan som definieras under granskningskonfigurationen AzureDiagnostics , till tabellen med kategorin SQLSecurityAuditEventsoch tabellen med kategorin DevOpsOperationsAudit för Microsoft Support Operations. Mer användbar information om sökspråk och kommandon i Log Analytics finns i Log Analytics-sökreferens.

Granskningsloggfält

Namn (blob) Namn (Event Hubs/Log Analytics) Description Blobtyp Event Hubs/Log Analytics-typ
action_id action_id_s ID för åtgärden varchar(4) sträng
action_name action_name_s Namnet på åtgärden Inte tillgängligt sträng
additional_information additional_information_s Eventuell ytterligare information om händelsen, lagrad som XML nvarchar(4000) sträng
affected_rows affected_rows_d Antal rader som påverkas av frågan bigint heltal
application_name application_name_s Namn på klientprogram nvarchar(128) sträng
audit_schema_version audit_schema_version_d Alltid 1 heltal heltal
class_type class_type_s Typ av granskningsbar entitet som granskningen sker på varchar(2) sträng
class_type_desc class_type_description_s Beskrivning av en granskningsbar entitet som granskningen sker på Inte tillgängligt sträng
client_ip client_ip_s Käll-IP för klientprogrammet nvarchar(128) sträng
connection_id Inte tillgängligt ID för anslutningen på servern GUID Inte tillgängligt
data_sensitivity_information data_sensitivity_information_s Informationstyper och känslighetsetiketter som returneras av den granskade frågan, baserat på de klassificerade kolumnerna i databasen. Läs mer om identifiering och klassificering av Azure SQL Database-data nvarchar(4000) sträng
database_name database_name_s Databaskontexten där åtgärden inträffade sysname sträng
database_principal_id database_principal_id_d ID för databasanvändarkontexten som åtgärden utförs i heltal heltal
database_principal_name database_principal_name_s Namnet på databasanvändarkontexten där åtgärden utförs sysname sträng
duration_milliseconds duration_milliseconds_d Varaktighet för frågekörning i millisekunder bigint heltal
event_time event_time_t Datum och tid när den granskningsbara åtgärden utlöses datetime2 datetime
host_name Inte tillgängligt Klientvärdnamn sträng Inte tillgängligt
is_column_permission is_column_permission_s Flagga som anger om detta är en behörighet på kolumnnivå. 1 = sant, 0 = falskt bit sträng
Inte tillgängligt is_server_level_audit_s Flagga som anger om den här granskningen är på servernivå Inte tillgängligt sträng
object_ ID object_id_d ID:t för den entitet som granskningen inträffade på. Detta omfattar : serverobjekt, databaser, databasobjekt och schemaobjekt. 0 om entiteten är själva servern eller om granskningen inte utförs på objektnivå heltal heltal
object_name object_name_s Namnet på den entitet som granskningen inträffade på. Detta omfattar : serverobjekt, databaser, databasobjekt och schemaobjekt. 0 om entiteten är själva servern eller om granskningen inte utförs på objektnivå sysname sträng
obo_middle_tier_app_id obo_middle_tier_app_id_s Program-ID för mellannivåprogrammet som är anslutet till SQL Database med hjälp av OBO-åtkomst. varchar(120) sträng
permission_bitmask permission_bitmask_s I tillämpliga fall visar de behörigheter som beviljats, nekats eller återkallats varbinary(16) sträng
response_rows response_rows_d Antal rader som returneras i resultatuppsättningen bigint heltal
schema_name schema_name_s Schemakontexten där åtgärden inträffade. NULL för granskningar som inträffar utanför ett schema sysname sträng
Inte tillgängligt securable_class_type_s Skyddsbart objekt som mappar till class_type som granskas Inte tillgängligt sträng
sequence_group_id sequence_group_id_g Unik identifierare varbinary GUID
sequence_number sequence_number_d Spårar sekvensen med poster i en enskild granskningspost som var för stor för att få plats i skrivbufferten för granskningar. Observera att Azure SQL Database och Azure Synapse Audit lagrar 4 000 datatecken för teckenfält i en granskningspost. Om det finns fler än 4 000 tecken trunkeras alla data utöver de första 4 000 tecknen heltal heltal
server_instance_name server_instance_name_s Namnet på den serverinstans där granskningen inträffade sysname sträng
server_principal_id server_principal_id_d ID för inloggningskontexten där åtgärden utförs heltal heltal
server_principal_name server_principal_name_s Aktuell inloggning sysname sträng
server_principal_sid server_principal_sid_s Aktuellt inloggnings-SID varbinary sträng
session_id session_id_d ID för sessionen där händelsen inträffade smallint heltal
session_server_principal_name session_server_principal_name_s Serverhuvudnamn för session sysname sträng
instruktion statement_s T-SQL-instruktion som kördes (om någon) nvarchar(4000) sträng
Lyckades succeeded_s Anger om åtgärden som utlöste händelsen lyckades. För andra händelser än inloggning och batch rapporterar detta endast om behörighetskontrollen lyckades eller misslyckades, inte åtgärden. 1 = lyckad, 0 = misslyckas bit sträng
target_database_principal_id target_database_principal_id_d Databasens huvudnamn åtgärden GRANT/DENY/REVOKE utförs på. 0 om det inte är tillämpligt heltal heltal
target_database_principal_name target_database_principal_name_s Målanvändare för åtgärd. NULL om det inte är tillämpligt sträng sträng
target_server_principal_id target_server_principal_id_d Serverhuvudnamn som åtgärden GRANT/DENY/REVOKE utförs på. Returnerar 0 om det inte är tillämpligt heltal heltal
target_server_principal_name target_server_principal_name_s Målinloggning av åtgärd. NULL om det inte är tillämpligt sysname sträng
target_server_principal_sid target_server_principal_sid_s SID för målinloggning. NULL om det inte är tillämpligt varbinary sträng
transaction_id transaction_id_d ENDAST SQL Server (från och med 2016) – 0 för Azure SQL Database bigint heltal
user_defined_event_id user_defined_event_id_d Användardefinierat händelse-ID skickades som ett argument till sp_audit_write. NULL för systemhändelser (standard) och icke-noll för användardefinierad händelse. Mer information finns i sp_audit_write (Transact-SQL) smallint heltal
user_defined_information user_defined_information_s Användardefinierad information skickades som ett argument till sp_audit_write. NULL för systemhändelser (standard) och icke-noll för användardefinierad händelse. Mer information finns i sp_audit_write (Transact-SQL) nvarchar(4000) sträng

Nästa steg

Läs mer om Azure SQL Database-granskning.