自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SQL Server 2008中的審核

數(shù)據(jù)庫(kù) SQL Server
任何安全解決方案的一個(gè)重要組成部分就是出于可說(shuō)明性和法規(guī)遵從性的考慮而進(jìn)行審核的能力。SQL Server 2008包含很多特性,使審核活動(dòng)成為可能。

任何安全解決方案的一個(gè)重要組成部分就是出于可說(shuō)明性和法規(guī)遵從性的考慮而進(jìn)行審核的能力。SQL Server 2008包含很多特性,使審核活動(dòng)成為可能。

所有動(dòng)作審核

SQL Server 2008通過(guò)Audit對(duì)象提供審核支持,這使管理員能夠捕獲數(shù)據(jù)庫(kù)服務(wù)器中的活動(dòng)并將其存儲(chǔ)在日志中。使用SQL Server 2008,您可以將審核信息存儲(chǔ)在以下目標(biāo)中:

文件
Windows應(yīng)用程序日志
Windows安全日志

要寫(xiě)入Windows安全日志,必須將SQL Server服務(wù)配置為作為L(zhǎng)ocal System、Local Service、Network Service或擁有SeAuditPrivilege權(quán)限且不是交互用戶(hù)的域帳戶(hù)運(yùn)行。

要?jiǎng)?chuàng)建Audit對(duì)象,必須使用CREATE SERVER AUDIT語(yǔ)句。該語(yǔ)句定義Audit對(duì)象并將其與目標(biāo)關(guān)聯(lián)。用于配置Audit對(duì)象的特定選項(xiàng)取決于審核目標(biāo)。例如,以下Transact-SQL代碼創(chuàng)建了兩個(gè)Audit對(duì)象;一個(gè)將活動(dòng)記錄到文件,另一個(gè)將活動(dòng)記錄到 Windows應(yīng)用程序日志。

CREATE SERVER AUDIT HIPAA_File_Audit
TO FILE ( FILEPATH=’\\SQLPROD_1\Audit\’ );

CREATE SERVER AUDIT HIPAA_AppLog_Audit
TO APPLICATION_LOG
WITH ( QUEUE_DELAY = 500,  ON_FAILURE = SHUTDOWN);

 

注意當(dāng)記錄到文件目標(biāo)時(shí),文件名沒(méi)有在 CREATE SERVER AUDIT 語(yǔ)句中指定。審核文件名采用 AuditName_AuditGUID_nn_TS.sqlaudit 的形式,其中 AuditName是 Audit 對(duì)象的名稱(chēng),AuditGUID是與該 Audit 對(duì)象相關(guān)的惟一標(biāo)識(shí)符,nn是用于分區(qū)文件集的分區(qū)號(hào),而 TS是時(shí)間戳的值。例如,通過(guò)前面的代碼樣例創(chuàng)建的 HIPAA_FILE_Audit Audit 對(duì)象可以生成一個(gè)與以下名稱(chēng)類(lèi)似的日志文件:

HIPAA_File_Audit_{9***481F8-DEF3-40ad-B3C6-126B68257223}_00_29384.sqlaudit

可以使用 QUEUE_DELAY 審核選項(xiàng)實(shí)現(xiàn)出于性能原因的異步審核,可以使用 ON_FAILURE 選項(xiàng)確定無(wú)法向目標(biāo)寫(xiě)入審核信息時(shí)采取的操作。在前面展示的 HIPAA_AppLog_Audit 示例中,ON_FAILURE選項(xiàng)被配置為在無(wú)法寫(xiě)入日志時(shí)關(guān)閉 SQL Serve r實(shí)例;在這種情況下,執(zhí)行CREATE SERVER AUDIT 語(yǔ)句的用戶(hù)必須擁有 SHUTDOWN 權(quán)限。

在創(chuàng)建 Audit 對(duì)象之后,可以通過(guò)使用 CREATE SERVER AUDIT SPECIFICATION 和 CREATE DATABASE AUDIT SPECIFICATION 語(yǔ)句對(duì)其添加事件。CREATE SERVER AUDIT SPECIFICATION 向 Audit 添加服務(wù)器級(jí)的操作組(即可以在服務(wù)器級(jí)發(fā)生的預(yù)定義的相關(guān)操作集合)。例如,以下代碼將 FAILED_LOGIN_GROUP 操作組(它記錄了失敗的登錄嘗試)添加到HIPAA_File_Audit Audit。

CREATE SERVER AUDIT SPECIFICATION  Failed_Login_Spec
FOR SERVER AUDIT HIPAA_File_Audit
ADD (FAILED_LOGIN_GROUP);

 

CREATE DATABASE AUDIT SPECIFICATION 語(yǔ)句向 Audit 添加數(shù)據(jù)庫(kù)級(jí)的操作組和單個(gè)數(shù)據(jù)庫(kù)事件。添加單個(gè)操作使您能根據(jù)對(duì)象篩選記錄的操作以及操作涉及的用戶(hù)。例如,以下代碼樣例向HIPAA_AppLog_Audit Audit 添加了 DATABASE_OBJECT_CHANGE_GROUP 操作組(它記錄數(shù)據(jù)庫(kù)中的任何 CREATE、ALTER 或 DROP 操作)以及在 Sales 架構(gòu)中由 SalesUser SalesAdmin 用戶(hù)對(duì)對(duì)象執(zhí)行的 INSERT、UPDATE 或 DELETE 語(yǔ)句。

CREATE DATABASE AUDIT SPECIFICATION  Sales_Audit_Spec
FOR SERVER AUDIT HIPAA_AppLog_Audit
ADD (DATABASE_OBJECT_CHANGE_GROUP),
ADD (INSERT, UPDATE, DELETE
ON Schema::Sales
BY SalesUser, SalesAdmin);

 

Audit 對(duì)象提供了一個(gè)可管理的審核框架,該框架使定義應(yīng)記錄的事件和事件應(yīng)存儲(chǔ)的位置變得很容易。SQL Server 添加的這個(gè)功能幫助您實(shí)現(xiàn)綜合的審核解決方案以確保數(shù)據(jù)庫(kù)的安全并滿(mǎn)足法規(guī)遵從性的要求。

DDL觸發(fā)器

DDL 觸發(fā)器是在 SQL Server 2005 中引入的。與表中數(shù)據(jù)發(fā)生變化時(shí)執(zhí)行 Transact-SQL 代碼的DML 觸發(fā)器不同,DDL 觸發(fā)器在表結(jié)構(gòu)發(fā)生變化時(shí)激活。這是跟蹤和審核數(shù)據(jù)庫(kù)架構(gòu)的結(jié)構(gòu)性變化的***方式。

這些觸發(fā)器的語(yǔ)法與 DML 觸發(fā)器的類(lèi)似。DDL 觸發(fā)器是 AFTER 觸發(fā)器,為了響應(yīng) DDL 語(yǔ)言事件而激活;它們不會(huì)為了響應(yīng)執(zhí)行類(lèi)似 DDL 操作的系統(tǒng)存儲(chǔ)過(guò)程而激活。它們是完全事務(wù)性的,因此您可以 ROLLBACK 一個(gè) DDL 變更。您可以在 DDL 觸發(fā)器中運(yùn)行 Transact-SQL 或者 CLR代碼。 DDL 觸發(fā)器還支持類(lèi)似其他模塊的 EXECUTE AS 子句。 

SQL Server 將關(guān)于觸發(fā)器事件的信息作為非類(lèi)型化的 XML 提供。可以通過(guò)稱(chēng)為 EVENTDATA()的能夠發(fā)出 XML 數(shù)據(jù)的新內(nèi)置功能獲得這些信息??梢允褂?XQuery 表達(dá)式解析 EVENTDATA() XML 以發(fā)現(xiàn)事件屬性,如架構(gòu)名稱(chēng)、目標(biāo)對(duì)象名稱(chēng)、用戶(hù)名,以及導(dǎo)致觸發(fā)器***激活的整個(gè)Transact-SQL DDL語(yǔ)句。例如,請(qǐng)參見(jiàn) SQL Server Books Online 中的 EVENTDATA (Transact-SQL)。數(shù)據(jù)庫(kù)級(jí) DDL 觸發(fā)器由數(shù)據(jù)庫(kù)或更低級(jí)別的 DDL 語(yǔ)言事件激活。例如,CREATE_TABLE、 ALTER_USER等等。服務(wù)器級(jí) DDL 觸發(fā)器由服務(wù)器級(jí)的 DDL 語(yǔ)言事件激活,例如 CREATE_DATABASE、ALTER_LOGIN 等等。為了管理方便,您可以使用事件組,比如 DDL_TABLE_EVENTS,來(lái)簡(jiǎn)稱(chēng)所有 CREATE_TABLE、ALTER_TABLE 和 DROP_TABLE 事件。各種 DDL 事件組和事件類(lèi)型及其相關(guān) XML EVENTDATA()在SQL Server Books Online 上均有記述。
與 DML 觸發(fā)器名稱(chēng)不同(它是架構(gòu)范圍的),DDL 觸發(fā)器是數(shù)據(jù)庫(kù)范圍或服務(wù)器范圍的。

使用此目錄視圖發(fā)現(xiàn) DML 觸發(fā)器和數(shù)據(jù)庫(kù)級(jí) DDL 觸發(fā)器的觸發(fā)器元數(shù)據(jù):

SELECT * FROM sys.triggers ;
GO

 

如果 parent_class_desc 列中存在 'DATABASE' 的值,那么它就是 DDL 觸發(fā)器,并通過(guò)數(shù)據(jù)庫(kù)本身確定名稱(chēng)范圍。Transact-SQL 觸發(fā)器的代碼體可以在 sys.sql_modules 目錄視圖中找到,并且可以將它連接到 sys.triggers 的object_id 列中。 關(guān)于 CLR 觸發(fā)器的元數(shù)據(jù)可以在 sys.assembly_modules 目錄視圖中找到,同樣可以連接到 sys.triggers 的 object_id 列中。

使用此目錄視圖發(fā)現(xiàn)服務(wù)器范圍的 DDL 觸發(fā)器的元數(shù)據(jù):

SELECT * FROM sys.server_triggers ;
GO

 

Transact-SQL 服務(wù)器級(jí)別的觸發(fā)器的代碼體可以在 sys.server_sql_modules 目錄視圖中找到,可以將它連接到 sys.server_triggers 的 object_id 列上。關(guān)于一個(gè) CLR 服務(wù)器級(jí)別的觸發(fā)器的元數(shù)據(jù)可以在 sys.server_assembly_modules 目錄視圖中找到,同樣可以將它連接到 sys.server_triggers 的 object_id 列上。

可以使用 DDL 觸發(fā)器來(lái)捕捉和審核數(shù)據(jù)庫(kù)中的 DDL 活動(dòng)。創(chuàng)建一個(gè)帶有非類(lèi)型化的 XML 列的審核表。為 DDL 事件或您感興趣的事件組創(chuàng)建一個(gè) EXECUTE AS SELF DDL 觸發(fā)器。這個(gè)DDL 觸發(fā)器的代碼體可以簡(jiǎn)單地將 EVENTDATA() XML 插入到審核表中。

DDL 觸發(fā)器的另一個(gè)有趣的使用是由 CREATE_USER 事件激活然后添加代碼到自動(dòng)權(quán)限管理。例如,假設(shè)您想讓所有的數(shù)據(jù)庫(kù)用戶(hù)獲得一個(gè)對(duì)存儲(chǔ)過(guò)程 P1、P2 和 P3 的 GRANT EXECUTE 權(quán)限。DDL 觸發(fā)器可以從 EVENTDATA() XML 中提取用戶(hù)名稱(chēng),動(dòng)態(tài)地生成一個(gè)語(yǔ)句,像 ‘GRANT EXECUTE ON P1 TO someuser’,然后對(duì)它執(zhí)行EXEC()。

【編輯推薦】

  1. SQL Server 2008數(shù)據(jù)集成服務(wù)簡(jiǎn)介
  2. 在SQL Server 2008中管理報(bào)表服務(wù)
  3. 利用SQL Server 2008進(jìn)行自動(dòng)化管理
責(zé)任編輯:yangsai 來(lái)源: MSDN
相關(guān)推薦

2009-06-10 08:24:55

2009-04-16 17:44:31

2012-04-06 10:13:08

SQLSQL Server

2010-10-14 09:32:52

SQL Server

2012-04-16 09:55:38

SQL Server

2009-06-22 10:22:57

SQL Server

2013-03-13 09:53:50

SQL Server

2009-04-16 17:03:12

報(bào)表開(kāi)發(fā)工具報(bào)表制作SQL Server

2009-04-16 18:07:39

2011-04-02 14:06:46

SQL Server MERGE

2009-04-16 17:59:25

細(xì)粒度權(quán)限

2010-09-13 10:21:26

sql server2

2009-02-16 16:10:49

安全審計(jì)安裝SQL Server

2009-04-16 17:24:56

報(bào)表處理報(bào)表內(nèi)嵌SQL Server

2009-04-16 17:34:19

2011-03-29 12:42:25

SQL Server 高效性

2011-08-19 10:40:27

SQL Server Merge命令

2011-03-24 10:19:58

SQL Server2CPU性能監(jiān)控

2009-04-16 17:11:39

管理報(bào)表配置報(bào)表SQL Server

2011-03-29 13:56:12

SQL Server 數(shù)據(jù)壓縮
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)