alter server DENETIM (Transact-sql)

Bir sunucu denetim nesnesi kullanarak değiştirir SQL Serverdenetim özelliğini. Daha fazla bilgi için, bkz. SQL Server denetim (veritabanı altyapısı).

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

ALTER SERVER AUDIT audit_name
{
    [ TO { { FILE ( <file_options> [, ...n] ) } | APPLICATION_LOG | SECURITY_LOG } ]
    [ WITH ( <audit_options> [ , ...n] ) ] 
    [ WHERE <predicate_expression> ]
}
| REMOVE WHERE
| MODIFY NAME = new_audit_name
[ ; ]

<file_options>::=
{
      FILEPATH = 'os_file_path' 
    | MAXSIZE = { max_size { MB | GB | TB } | UNLIMITED } 
    | MAX_ROLLOVER_FILES = { integer | UNLIMITED } 
    | MAX_FILES = integer 
    | RESERVE_DISK_SPACE = { ON | OFF } 
}

<audit_options>::=
{
      QUEUE_DELAY = integer 
    | ON_FAILURE = { CONTINUE | SHUTDOWN | FAIL_OPERATION } 
    | STATE = = { ON | OFF } 
}

<predicate_expression>::=
{
    [NOT ] <predicate_factor> 
    [ { AND | OR } [NOT ] { <predicate_factor> } ] 
    [,...n ]
}

<predicate_factor>::= 
    event_field_name { = | < > | ! = | > | > = | < | < = } { number | ' string ' }

Bağımsız değişkenler

  • İÇİN {DOSYA | APPLICATION_LOG | GÜVENLİK}
    Denetim hedef konumunu belirler. Seçenekler şunlardır: ikili dosya, Windows uygulama günlüğüne veya Windows güvenlik günlüğüne.

  • FILEPATH = 'os_file_path'
    Denetim izi yoludur. Dosya adı, denetim GUID ve denetim adı temel alınarak oluşturulur.

  • MAXSIZE **=**max_size
    Denetim dosyasının büyüyebileceği maksimum boyutu belirtir. max_sizeArdından bir tamsayı değeri olmalıdır mb, gb, tb, veya sınırsız. En küçük boyut için belirttiğiniz max_size2 mb ve en fazla 2.147.483.647 tb. Ne zaman sınırsız dosyası disk dolu olduğu kadar büyür belirtilir. 2 MB'den daha düşük bir değer zam MSG_MAXSIZE_TOO_SMALL hata belirleme. Varsayılan değer sınırsız.

  • MAX_ROLLOVER_FILES **=**integer | Sınırsız
    Dosya sistemi korumak için dosya sayısını belirtir. Ne zaman MAX_ROLLOVER_FILES ayarı = 0 oluşturulacak aktarma dosyaları sayısı dayatılan bir sınır yoktur. Varsayılan değer 0'dır. Belirtilen dosya en fazla 2.147.483.647 numarasıdır.

  • MAX_FILES =integer
    Oluşturulan denetim dosyalarının sayısını belirtir. Sınıra ulaşıldığında değil ilk dosyaya aktarma yapar. MAX_FILES sınırına ulaşıldığında oluşturulacak ek denetim olayları neden olan herhangi bir eylem bir hata ile başarısız olur.

  • RESERVE_DISK_SPACE = {on | KAPALI}
    Bu seçenek MAXSIZE değerine diskteki dosya pre-allocates. MAXSIZE sınırsız için eşit değildir geçerlidir. Varsayılan değer OFF'tur.

  • queue_delay **=**integer
    Denetim eylemler işlenmek zorunda önce geçmesi milisaniye cinsinden süreyi belirler. 0 Değeri, senkron teslim gösterir. Asgari ayarlanabilir sorgu gecikmesi 1000 (1 saniye), varsayılan olan değerdir. En fazla 2.147.483.647 (2,147,483.647 saniye veya 24 gün, 20 saat, 31 dakika, 23.647 saniye) dır. Geçersiz bir numarası belirterek, hata MSG_INVALID_QUEUE_DELAY arttıracak.

  • ON_FAILURE = {devam | KAPATMA | FAIL_OPERATION}
    Hedef için yazma örneği başarısız, devam veya durdurmak gösterir SQL ServerDenetim \Kütüğü yazılamıyor

    • CONTINUE
      SQL ServerOperasyonlar devam. Denetim kayıtları korunmaz. Denetim olaylarını girişimi devam eder ve hata koşulu giderilip giderilmediğini devam edecek. Devam et seçeneğini seçerek hangi güvenlik ilkelerini ihlal edebilir unaudited faaliyet izin verebilirsiniz. İşlemi devam eden bu seçeneği kullanın Veritabanı Altyapısıdaha tam bir denetim korumak daha önemli.

    • KAPATMA
      Ne zaman yazma için hedef sunucu örneği için denetim hedef veri yazamaz kuvvetler bir sunucu kapanmıştır. Bu verme giriş olmalıdır SHUTDOWNizni. Oturum açma bu izin yoksa işlev başarısız olur ve bir hata iletisi artırılacaktır. Hiçbir denetlenen olayları oluşur. Bir denetim hatası güvenlik veya sistemin bütünlüğünü tehlikeye seçeneğini kullanın.

    • FAIL_OPERATION
      Denetlenen olaylar neden veritabanı eylemleri başarısız. Denetlenen olaylar neden eylemleri devam edebilirsiniz, ancak hiçbir Denetlenen olaylar meydana gelebilir. Denetim olaylarını girişimi devam eder ve hata koşulu giderilip giderilmediğini devam edecek. Tam bir denetim sağlamak için tam erişim daha önemlidir bu seçeneği kullanın Veritabanı Altyapısı.

  • STATE = { ON | KAPALI}
    Etkinleştirir veya kayıtlar toplanıyor gelen denetim devre dışı bırakır. (Dan off on) çalışan bir denetim durumunu değiştirme denetim durdurulmuş olan bir denetim girişi, Denetim durduruldu anapara ve Denetim durduruldu süresi oluşturur.

  • DOSYAYI DEĞİŞTİRMEnew_audit_name
    Denetim adını değiştirir. Diğer bir seçenek ile kullanılamaz.

  • predicate_expression
    Koşul ifadesi bir olay veya işlenmesi durumunda belirlemek için kullanılan belirtir. Doğrulama deyimleri dizesi değişkenleri sınırlar 3000 karakter ile sınırlıdır.

  • event_field_name
    Koşul kaynağını tanımlayan olay alan adıdır. Denetim alanları içinde açıklanan sys.fn_get_audit_file (Transact-sql). Tüm alanları dışında denetlenebilir file_nameve audit_file_offset.

  • Sayı
    Herhangi bir sayısal tür dahil olduğu decimal. Kullanılabilir fiziksel bellek veya 64-bit bir tamsayı gösterilemeyecek kadar büyük bir sayı eksikliği sınırlamalardır.

  • ' string '
    Doğrulama Karşılaştır gerektirdiği bir ANSI veya UNICODE dize. Örtülü dize türü dönüştürme doğrulama karşılaştırma işlevleri için gerçekleştirilir. Yanlış tür sonuçları bir hata gönderiliyor.

Açıklamalar

Kime, en az birini belirtmelisiniz WITH veya adını değiştirmek alter DENETIM çağırdığınızda yan tümceleri.

Bir denetim için değişiklik yapmak için off seçeneği bir denetim durumu ayarlamalısınız. Devlet dışındaki tüm seçenekleriyle bir denetim etkinleştirildiğinde DENETIM alter çalıştırılırsa = off, bir MSG_NEED_AUDIT_DISABLED hata iletisi alırsınız.

Sen-ebilmek eklemek, değiştirmek ve denetim durdurmadan denetim belirtimleri kaldırabilirsiniz.

Denetim oluşturulduktan sonra Denetim 's GUID değiştiremezsiniz.

İzinler

Oluşturmak, değiştirmek veya sunucu denetim sorumlusunun bırak için alter any server denetlemek veya control server izni olması gerekir.

Örnekler

A.Sunucu denetim adını değiştirme

Aşağıdaki örnek, sunucu denetim adını değiştirir HIPPA_Auditiçin HIPAA_Audit_Old.

USE master
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = OFF);
GO
ALTER SERVER AUDIT HIPAA_Audit
MODIFY NAME = HIPAA_Audit_Old;
GO
ALTER SERVER AUDIT HIPAA_Audit_Old
WITH (STATE = ON);
GO

USE master
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = OFF);
GO
ALTER SERVER AUDIT HIPAA_Audit
MODIFY NAME = HIPAA_Audit_Old;
GO
ALTER SERVER AUDIT HIPAA_Audit_Old
WITH (STATE = ON);
GO

B.Sunucu denetim hedef değiştirme

Aşağıdaki örnek olarak adlandırılan sunucu denetim değiştirir HIPPA_Audithedef için.

USE master
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = OFF);
GO
ALTER SERVER AUDIT HIPAA_Audit
TO FILE (FILEPATH ='\\SQLPROD_1\Audit\',
          MAXSIZE = 1000 MB,
          RESERVE_DISK_SPACE=OFF)
WITH (QUEUE_DELAY = 1000,
       ON_FAILURE = CONTINUE);
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = ON);
GO

USE master
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = OFF);
GO
ALTER SERVER AUDIT HIPAA_Audit
TO FILE (FILEPATH ='\\SQLPROD_1\Audit\',
          MAXSIZE = 1000 MB,
          RESERVE_DISK_SPACE=OFF)
WITH (QUEUE_DELAY = 1000,
       ON_FAILURE = CONTINUE);
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = ON);
GO

C.where yan tümcesi sunucu denetim değiştirme

Aşağıdaki örnekte where değiştirir c oluşturulan yan server DENETIM (Transact-sql) oluştur. NEREDE yan tümcesi için kullanıcı filtreleri yeni olay 27, tanımlı.

ALTER SERVER AUDIT [FilterForSensitiveData] WITH (STATE = OFF)
GO
ALTER SERVER AUDIT [FilterForSensitiveData]
WHERE user_defined_event_id = 27;
GO
ALTER SERVER AUDIT [FilterForSensitiveData] WITH (STATE = ON);
GO

ALTER SERVER AUDIT [FilterForSensitiveData] WITH (STATE = OFF)
GO
ALTER SERVER AUDIT [FilterForSensitiveData]
WHERE user_defined_event_id = 27;
GO
ALTER SERVER AUDIT [FilterForSensitiveData] WITH (STATE = ON);
GO

D.where yan tümcesi kaldırma

Aşağıdaki örnek, bir where yan tümcesinde koşul ifadesi kaldırır.

ALTER SERVER AUDIT [FilterForSensitiveData] WITH (STATE = OFF)
GO
ALTER SERVER AUDIT [FilterForSensitiveData]
REMOVE WHERE;
GO
ALTER SERVER AUDIT [FilterForSensitiveData] WITH (STATE = ON);
GO

ALTER SERVER AUDIT [FilterForSensitiveData] WITH (STATE = OFF)
GO
ALTER SERVER AUDIT [FilterForSensitiveData]
REMOVE WHERE;
GO
ALTER SERVER AUDIT [FilterForSensitiveData] WITH (STATE = ON);
GO

E.Sunucu denetim yeniden adlandırma

Aşağıdaki örnek sunucu denetim adını değiştirir FilterForSensitiveDataiçin AuditDataAccess.

ALTER SERVER AUDIT [FilterForSensitiveData] WITH (STATE = OFF)
GO
ALTER SERVER AUDIT [FilterForSensitiveData]
MODIFY NAME = AuditDataAccess;
GO
ALTER SERVER AUDIT [AuditDataAccess] WITH (STATE = ON);
GO

ALTER SERVER AUDIT [FilterForSensitiveData] WITH (STATE = OFF)
GO
ALTER SERVER AUDIT [FilterForSensitiveData]
MODIFY NAME = AuditDataAccess;
GO
ALTER SERVER AUDIT [AuditDataAccess] WITH (STATE = ON);
GO

Ayrıca bkz.

Başvuru

drop server DENETIM (Transact-sql)

server DENETIM BELIRTIM (Transact-sql) oluştur

alter server DENETIM BELIRTIM (Transact-sql)

drop server DENETIM BELIRTIM (Transact-sql)

database DENETIM BELIRTIM (Transact-sql) oluştur

alter database DENETIM BELIRTIM (Transact-sql)

drop database DENETIM BELIRTIM (Transact-sql)

YETKILENDIRME (Transact-sql)

sys.fn_get_audit_file (Transact-sql)

verirsys.server_auditsKatalog (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)

Kavramlar

Server denetim ve sunucu denetim belirtimi oluşturmak