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 Database1
på Server1
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 SQLSecurityAuditEvents
och 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.