Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Med sql Server-granskningsfunktionen kan du granska grupper på servernivå och databasnivå med händelser och händelser. Mer information finns i SQL Server-granskning (databasmotor). SQL Server.
Granskningar består av noll eller fler granskningsåtgärdsobjekt som registreras till ett granskningsmål. Granskningsmålet kan vara en binär fil, händelseloggen för Windows-programmet eller händelseloggen för Windows-säkerhet. Posterna som skickas till målet kan innehålla de element som beskrivs i följande tabell:
| Kolumnnamn | Description | Typ | Alltid tillgänglig |
|---|---|---|---|
| event_time | Datum och tid när den granskningsbara åtgärden utlöses. | datetime2 | Yes |
| sequence_number | Spårar sekvensen med poster i en enskild granskningspost som var för stor för att få plats i skrivbufferten för granskningar. | Int | Yes |
| action_id | ID för åtgärden Tips: Om du vill använda action_id som predikat måste den konverteras från en teckensträng till ett numeriskt värde. Mer information finns i Filtrera SQL Server-granskning på action_id/class_type predikat. |
varchar(4) | Yes |
| Lyckades | Anger om åtgärden som utlöste händelsen lyckades. För alla andra händelser än inloggningshändelser rapporterar detta endast om behörighetskontrollen lyckades eller misslyckades, inte åtgärden. - 1 = Lyckades - 0 = Misslyckas |
bit | Yes |
| permission_bitmask | I vissa åtgärder är detta de behörigheter som har beviljats, nekats eller återkallats. | varbinary(16) | Nej |
| is_column_permission | Flagga som anger om detta är en behörighet på kolumnnivå. Returnerar 0 när permission_bitmask = 0. - 1 = Sant - 0 = Falskt |
bit | Nej |
| session_id | ID för sessionen där händelsen inträffade. | smallint | Yes |
| server_principal_id | ID för inloggningskontexten som åtgärden utförs i. | Int | Yes |
| database_principal_id | ID för databasanvändarkontexten som åtgärden utförs i. Returnerar 0 om detta inte gäller. Till exempel en serveråtgärd. | Int | Nej |
| target_server_principal_id | Serverhuvudnamn som åtgärden GRANT/DENY/REVOKE utförs på. Returnerar 0 om det inte är tillämpligt. | Int | Yes |
| target_database_principal_id | Databasens huvudnamn åtgärden GRANT/DENY/REVOKE utförs på. Returnerar 0 om det inte är tillämpligt. | Int | Nej |
| object_id | ID:t för den entitet som granskningen inträffade på. Detta omfattar följande: serverobjekt Databaser databasobjekt schemaobjekt Returnerar 0 om entiteten är själva servern eller om granskningen inte utförs på objektnivå. Till exempel Autentisering. |
Int | Nej |
| class_type | Den typ av granskningsbar entitet som granskningen sker på. | varchar(2) | Yes |
| session_server_principal_name | Serverns huvudnamn för sessionen. | sysname | Yes |
| server_principal_name | Aktuell inloggning. | sysname | Yes |
| server_principal_sid | Aktuellt inloggnings-SID. | varbinary(85) | Yes |
| database_principal_name | Aktuell användare. | sysname | Nej |
| target_server_principal_name | Målinloggning för åtgärden. Returnerar NULL om det inte är tillämpligt. | sysname | Nej |
| target_server_principal_sid | SID för målinloggningen. Returnerar NULL om det inte är tillämpligt. | varbinary(85) | Nej |
| target_database_principal_name | Målanvändare för åtgärden. Returnerar NULL om det inte är tillämpligt. | sysname | Nej |
| server_instance_name | Namnet på den serverinstans där granskningen inträffade. Standardserver\instansformat används. | sysname | Yes |
| database_name | Databaskontexten där åtgärden inträffade. Nullbar. Returnerar NULL för granskningar som inträffar på servernivå. | sysname | Nej |
| schema_name | Schemakontexten där åtgärden inträffade. | sysname | Nej |
| object_name | Namnet på den entitet som granskningen inträffade på. Detta omfattar följande: serverobjekt Databaser databasobjekt schemaobjekt Nullbar. Returnerar NULL om entiteten är själva servern eller om granskningen inte utförs på objektnivå. Till exempel Autentisering. |
sysname | Nej |
| uttalande | TSQL-instruktion om den finns. Returnerar NULL om det inte är tillämpligt. | nvarchar(4000) | Nej |
| additional_information | Unik information som endast gäller för en enskild händelse returneras som XML. Några granskningsbara åtgärder innehåller den här typen av information. En nivå av TSQL-stack visas i XML-format för åtgärder som har TSQL-stacken associerad med dem. XML-formatet blir: <tsql_stack><frame nest_level = '%u' database_name = '%.*s' schema_name = '%.*s' object_name = '%.*s' /></tsql_stack>Ram nest_level anger den aktuella kapslingsnivån för ramen. Modulnamnet representeras i tredelat format (database_name, schema_name och object_name). Modulnamnet parsas för att undkomma ogiltiga XML-tecken som '\<', '>', '/', . '_x' De kommer att bli förrymda som _xHHHH\_. HHHH står för den fyrsiffriga hexadecimala UCS-2-koden för tecknetNullbar. Returnerar NULL när det inte finns någon ytterligare information som rapporteras av händelsen. |
nvarchar(4000) | Nej |
| file_name | Sökvägen och namnet på granskningsloggfilen som posten kom från. | varchar(260) | Yes |
| audit_file_offset |
Gäller endast för: SQL Server Buffertförskjutningen i filen som innehåller granskningsposten. |
bigint | Nej |
| user_defined_event_id |
Gäller för: SQL Server 2012 (11.x) och senare, Azure SQL Database och SQL Managed Instance Användardefinierat händelse-ID skickades som ett argument till sp_audit_writeNULL för systemhändelser (standard) och icke-zero för användardefinierad händelse. Mer information finns i sp_audit_write (Transact-SQL). |
smallint | Nej |
| user_defined_information |
Gäller för: SQL Server 2012 (11.x) och senare, Azure SQL Database och SQL Managed Instance Används för att registrera eventuell extra information som användaren vill registrera i granskningsloggen med hjälp av den sp_audit_write lagrade proceduren. |
nvarchar(4000) | Nej |
| audit_schema_version | Alltid 1 | Int | Yes |
| sequence_group_id |
Gäller endast för: SQL Server Unik identifierare |
varbinary(85) | Nej |
| transaction_id |
Gäller endast för: SQL Server (från och med 2016) Unik identifierare för att identifiera flera granskningshändelser i en transaktion |
bigint | Nej |
| client_ip |
Gäller för: Azure SQL Database + SQL Server (från och med 2017) Käll-IP för klientprogrammet |
nvarchar(128) | Nej |
| application_name |
Gäller för: Azure SQL Database + SQL Server (från och med 2017) Namnet på klientprogrammet som körde -instruktionen som orsakade granskningshändelsen |
nvarchar(128) | Nej |
| duration_milliseconds |
Gäller för: Azure SQL Database och SQL Managed Instance Varaktighet för frågekörning i millisekunder |
bigint | Nej |
| response_rows |
Gäller för: Azure SQL Database och SQL Managed Instance Antal rader som returneras i resultatuppsättningen. |
bigint | Nej |
| affected_rows |
Gäller endast för: Azure SQL Database Antal rader som påverkas av instruktionen som körs. |
bigint | Nej |
| connection_id |
Gäller för: Azure SQL Database och SQL Managed Instance ID för anslutningen på servern |
GUID | Nej |
| data_sensitivity_information |
Gäller endast för: Azure SQL Database 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) | Nej |
| host_name | Värdnamnet för klientanslutningen | nvarchar(128) | Nej |
| session_context | Sessionskontextinformation för anslutningen | nvarchar(4000) | Nej |
| client_tls_version |
Gäller för: SQL Server 2022 och senare TLS-versionsnummer som används av klientanslutningen |
Int | Nej |
| client_tls_version_name |
Gäller för: SQL Server 2022 och senare TLS-versionsnamn som används av klientanslutningen |
nvarchar(128) | Nej |
| database_transaction_id | Databastransaktionsidentifierare | bigint | Nej |
| ledger_start_sequence_number |
Gäller för: SQL Server 2022 och senare Transaktionsboksstartsekvensnummer för transaktionsregisteråtgärder |
bigint | Nej |
| external_policy_permissions_checked | Behörigheter för externa principer som kontrollerades under åtgärden | nvarchar(4000) | Nej |
Anmärkningar
Vissa åtgärder fyller inte i en kolumns värde eftersom det kan vara icke tillämpligt för åtgärden.
SQL Server Audit lagrar 4 000 tecken data för teckenfält i en granskningspost. När additional_information - och instruktionsvärdena som returneras från en granskningsbar åtgärd returnerar mer än 4 000 tecken används kolumnen sequence_number för att skriva flera poster till granskningsrapporten för en enda granskningsåtgärd för att registrera dessa data. Processen är följande:
Instruktionskolumnen är uppdelad i 4 000 tecken.
SQL Server Audit skriver som den första raden för granskningsposten med partiella data. Alla andra fält dupliceras på varje rad.
Värdet sequence_number ökas.
Den här processen upprepas tills alla data registreras.
Du kan ansluta data genom att läsa raderna sekventiellt med hjälp av sequence_number-värdet och kolumnerna event_Time, action_id och session_id för att identifiera åtgärden.
Relaterat innehåll
- SKAPA SERVERGRANSKNING (Transact-SQL)
- ALTER SERVER AUDIT (Transact-SQL)
- DROP SERVER AUDIT (Transact-SQL)
- SKAPA SERVERGRANSKNINGSSPECIFIKATION (Transact-SQL)
- ÄNDRA SERVERGRANSKNINGSSPECIFIKATION (Transact-SQL)
- TA BORT SERVERGRANSKNINGSSPECIFIKATION (Transact-SQL)
- SKAPA DATABASGRANSKNINGSSPECIFIKATION (Transact-SQL)
- ÄNDRA SPECIFIKATION FÖR DATABASGRANSKNING (Transact-SQL)
- TA BORT DATABASGRANSKNINGSSPECIFIKATION (Transact-SQL)
- ÄNDRA AUKTORISERING (Transact-SQL)
- sys.fn_get_audit_file (Transact-SQL)
- sys.server_audits (Transact-SQL)
- sys.server_file_audits (Transact-SQL)
- sys.server_audit_specifications (Transact-SQL)
- sys.server_audit_specification_details (Transact-SQL)
- sys.database_audit_specifications (Transact-SQL)
- sys.database_audit_specification_details (Transact-SQL)
- sys.dm_server_audit_status (Transact-SQL)
- sys.dm_audit_actions (Transact-SQL)
- sys.dm_audit_class_type_map (Transact-SQL)