Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
SQL Server Denetimi özelliği, sunucu düzeyinde ve veritabanı düzeyinde olay ve olay gruplarını denetlemenize olanak tanır. Daha fazla bilgi için bkz. SQL Server Denetimi (Veritabanı Altyapısı). SQL Server.
Denetimler, bir denetim hedefine kaydedilen sıfır veya daha fazla denetim eylemi öğesinden oluşur. Denetim hedefi bir ikili dosya, Windows Uygulaması olay günlüğü veya Windows Güvenliği olay günlüğü olabilir. Hedefe gönderilen kayıtlar aşağıdaki tabloda açıklanan öğeleri içerebilir:
| Sütun adı | Description | Türü | Her zaman kullanılabilir |
|---|---|---|---|
| event_time | Denetlenebilir eylemin tetiklenme tarihi ve saati. | datetime2 | Yes |
| sequence_number | Denetimler için yazma arabelleğine sığamayacak kadar büyük olan tek bir denetim kaydındaki kayıtların sırasını izler. | Int | Yes |
| action_id | Eylemin kimliği İpucu: action_id koşul olarak kullanmak için karakter dizesinden sayısal değere dönüştürülmelidir. Daha fazla bilgi için bkz. action_id/class_type koşulunda SQL Server Denetimini filtreleme. |
varchar(4) | Yes |
| Başarılı | Olayı tetikleyen eylemin başarılı olup olmadığını gösterir. Oturum açma olayları dışındaki tüm olaylar için bu yalnızca izin denetiminin başarılı mı yoksa başarısız mı olduğunu bildirir, işlemin değil. - 1 = Başarı - 0 = Başarısız |
bit | Yes |
| permission_bitmask | Bazı eylemlerde verilen, reddedilen veya iptal edilen izinler budur. | varbinary(16) | Hayı |
| is_column_permission | Bunun bir sütun düzeyi izni olup olmadığını gösteren bayrak. permission_bitmask = 0 olduğunda 0 döndürür. - 1 = Doğru - 0 = Yanlış |
bit | Hayı |
| session_id | Olayın gerçekleştiği oturumun kimliği. | smallint | Yes |
| server_principal_id | Eylemin gerçekleştirdiği oturum açma bağlamının kimliği. | Int | Yes |
| database_principal_id | Eylemin gerçekleştirdiği veritabanı kullanıcı bağlamının kimliği. Bu geçerli değilse 0 döndürür. Örneğin, bir sunucu işlemi. | Int | Hayı |
| target_server_principal_id | GRANT/DENY/REVOKE işleminin üzerinde gerçekleştirdiği sunucu sorumlusu. Uygulanamazsa 0 döndürür. | Int | Yes |
| target_database_principal_id | GRANT/DENY/REVOKE işleminin üzerinde gerçekleştirilen veritabanı sorumlusu. Uygulanamazsa 0 döndürür. | Int | Hayı |
| object_id | Denetimin gerçekleştiği varlığın kimliği. Buna şunlar dahildir: sunucu nesneleri Veritaban -ları veritabanı nesneleri şema nesneleri Varlık Sunucu'nun kendisiyse veya denetim nesne düzeyinde gerçekleştirilmezse 0 döndürür. Örneğin, Kimlik Doğrulaması. |
Int | Hayı |
| class_type | Denetimin gerçekleştiği denetlenebilir varlık türü. | varchar(2) | Yes |
| session_server_principal_name | Oturum için sunucu sorumlusu. | sysname | Yes |
| server_principal_name | Geçerli oturum açma. | sysname | Yes |
| server_principal_sid | Geçerli oturum açma SID'si. | varbinary(85) | Yes |
| database_principal_name | Geçerli kullanıcı. | sysname | Hayı |
| target_server_principal_name | Eylemin hedef oturum açmasını hedefleyin. Uygulanamazsa NULL döndürür. | sysname | Hayı |
| target_server_principal_sid | Hedef oturum açma sid'i. Uygulanamazsa NULL döndürür. | varbinary(85) | Hayı |
| target_database_principal_name | Eylemin hedef kullanıcısı. Uygulanamazsa NULL döndürür. | sysname | Hayı |
| server_instance_name | Denetimin gerçekleştiği sunucu örneğinin adı. Standart sunucu\örnek biçimi kullanılır. | sysname | Yes |
| database_name | Eylemin gerçekleştiği veritabanı bağlamı. Nullable. Sunucu düzeyinde gerçekleşen denetimler için NULL döndürür. | sysname | Hayı |
| schema_name | Eylemin gerçekleştiği şema bağlamı. | sysname | Hayı |
| object_name | Denetimin gerçekleştiği varlığın adı. Buna şunlar dahildir: sunucu nesneleri Veritaban -ları veritabanı nesneleri şema nesneleri Nullable. Varlık Sunucu'nun kendisiyse veya denetim nesne düzeyinde gerçekleştirilmezse NULL döndürür. Örneğin, Kimlik Doğrulaması. |
sysname | Hayı |
| beyanat | Varsa TSQL deyimi. Uygulanamazsa NULL döndürür. | nvarchar(4000) | Hayı |
| additional_information | Yalnızca tek bir olaya uygulanan benzersiz bilgiler XML olarak döndürülür. Denetlenebilir birkaç eylem bu tür bilgileri içerir. TSQL yığınının ilişkili olduğu eylemler için bir TSQL yığını düzeyi XML biçiminde görüntülenir. XML biçimi şöyle olacaktır: <tsql_stack><frame nest_level = '%u' database_name = '%.*s' schema_name = '%.*s' object_name = '%.*s' /></tsql_stack>Çerçeve nest_level, çerçevenin geçerli iç içe yerleştirme düzeyini gösterir. Modül adı üç parça biçiminde gösterilir (database_name, schema_name ve object_name). Modül adı , , '\<', '>''/'gibi '_x'geçersiz xml karakterlerinden kaçmak için ayrıştırılır. Onlar olarak _xHHHH\_kaçacaklardır. SSS, karakter için dört basamaklı onaltılık UCS-2 kodunun kısaltmasıNullable. Olay tarafından bildirilen ek bilgi olmadığında NULL döndürür. |
nvarchar(4000) | Hayı |
| file_name | Kaydın geldiği denetim günlüğü dosyasının yolu ve adı. | varchar(260) | Yes |
| audit_file_offset |
Şunlar için geçerlidir: Yalnızca SQL Server Denetim kaydını içeren dosyadaki arabellek uzaklığı. |
bigint | Hayı |
| user_defined_event_id |
Şunlar için geçerlidir: SQL Server 2012 (11.x) ve üzeri, Azure SQL Veritabanı ve SQL Yönetilen Örneği Kullanıcı tanımlı olay kimliği, sistem olayları için sp_audit_write(varsayılan) ve kullanıcı tanımlı olay için sıfır olmayan bağımsız değişken olarak geçirildi. Daha fazla bilgi için bkz. sp_audit_write (Transact-SQL). |
smallint | Hayı |
| user_defined_information |
Şunlar için geçerlidir: SQL Server 2012 (11.x) ve üzeri, Azure SQL Veritabanı ve SQL Yönetilen Örneği Saklı yordamı kullanarak sp_audit_write kullanıcının denetim günlüğüne kaydetmek istediği ek bilgileri kaydetmek için kullanılır. |
nvarchar(4000) | Hayı |
| audit_schema_version | Her zaman 1 | Int | Yes |
| sequence_group_id |
Şunlar için geçerlidir: Yalnızca SQL Server Benzersiz tanımlayıcı |
varbinary(85) | Hayı |
| transaction_id |
Şunlar için geçerlidir: Yalnızca SQL Server (2016'dan itibaren) Tek bir işlemde birden çok denetim olayını tanımlamak için benzersiz tanımlayıcı |
bigint | Hayı |
| client_ip |
Şunlar için geçerlidir: Azure SQL Veritabanı + SQL Server (2017'den itibaren) İstemci uygulamasının kaynak IP'sini |
nvarchar(128) | Hayı |
| application_name |
Şunlar için geçerlidir: Azure SQL Veritabanı + SQL Server (2017'den itibaren) Denetim olayına neden olan deyimi yürüten istemci uygulamasının adı |
nvarchar(128) | Hayı |
| duration_milliseconds |
Şunlar için geçerlidir: Azure SQL Veritabanı ve SQL Yönetilen Örneği Milisaniye cinsinden sorgu yürütme süresi |
bigint | Hayı |
| response_rows |
Şunlar için geçerlidir: Azure SQL Veritabanı ve SQL Yönetilen Örneği Sonuç kümesinde döndürülen satır sayısı. |
bigint | Hayı |
| affected_rows |
Şunlar için geçerlidir: Yalnızca Azure SQL Veritabanı Yürütülen deyimden etkilenen satır sayısı. |
bigint | Hayı |
| connection_id |
Şunlar için geçerlidir: Azure SQL Veritabanı ve SQL Yönetilen Örneği Sunucudaki bağlantının kimliği |
GUID | Hayı |
| data_sensitivity_information |
Şunlar için geçerlidir: Yalnızca Azure SQL Veritabanı Veritabanındaki sınıflandırılmış sütunlara göre denetlenen sorgu tarafından döndürülen bilgi türleri ve duyarlılık etiketleri. Azure SQL Veritabanı veri bulma ve sınıflandırma hakkında daha fazla bilgi edinin |
nvarchar(4000) | Hayı |
| host_name | İstemci bağlantısının ana bilgisayar adı | nvarchar(128) | Hayı |
| session_context | Bağlantı için oturum bağlamı bilgileri | nvarchar(4000) | Hayı |
| client_tls_version |
Şunlar için geçerlidir: SQL Server 2022 ve üzeri İstemci bağlantısı tarafından kullanılan TLS sürüm numarası |
Int | Hayı |
| client_tls_version_name |
Şunlar için geçerlidir: SQL Server 2022 ve üzeri İstemci bağlantısı tarafından kullanılan TLS sürüm adı |
nvarchar(128) | Hayı |
| database_transaction_id | Veritabanı işlem tanımlayıcısı | bigint | Hayı |
| ledger_start_sequence_number |
Şunlar için geçerlidir: SQL Server 2022 ve üzeri Genel muhasebe işlemleri için genel muhasebe başlangıç sırası numarası |
bigint | Hayı |
| external_policy_permissions_checked | İşlem sırasında denetlenen dış ilke izinleri | nvarchar(4000) | Hayı |
Açıklamalar
Bazı eylemler sütunun değerini doldurmaz çünkü eyleme uygulanamaz.
SQL Server Denetimi, bir denetim kaydındaki karakter alanları için 4.000 karakterlik verileri depolar. Denetlenebilir bir eylemden döndürülen additional_information ve deyim değerleri 4000'den fazla karakter döndürdükten sonra , sequence_number sütunu bu verileri kaydetmek üzere tek bir denetim eylemi için denetim raporuna birden çok kayıt yazmak için kullanılır. İşlem aşağıdaki gibidir:
Deyim sütunu 4.000 karaktere bölünür.
SQL Server Denetimi, kısmi verilerle denetim kaydının ilk satırı olarak yazar. Diğer tüm alanlar her satırda yinelenir.
sequence_number değeri artırılır.
Tüm veriler kaydedilene kadar bu işlem yinelenir.
sequence_number değerini kullanarak satırları sırayla okuyarak ve eylemi tanımlamak için event_Time, action_id ve session_id sütunlarını kullanarak verileri bağlayabilirsiniz.
İlgili içerik
- SUNUCU DENETİMİ OLUŞTUR (Transact-SQL)
- ALTER SERVER AUDIT (Transact-SQL)
- DROP SERVER DENETİMİ (Transact-SQL)
- SUNUCU DENETİM BELİRTİMİ OLUŞTUR (Transact-SQL)
- ALTER SERVER AUDIT SPECIFICATION (Transact-SQL)
- DROP SERVER DENETİM BELİRTİMİ (Transact-SQL)
- VERİ TABANI DENETİM ÖZELLİĞİ OLUŞTUR (Transact-SQL)
- ALTER DATABASE AUDIT SPECIFICATION (Transact-SQL)
- VERİTABANI DENETİM ÖZELLİĞİ'Nİ SİL (Transact-SQL)
- ALTER AUTHORIZATION (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) - Sunucu Denetim Özellikleri Detayları
- sys.database_denetim_özellikleri (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)