校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > SQL Server 2008中的代碼安全(二) DDL觸發器與登錄觸發器

SQL Server 2008中的代碼安全(二) DDL觸發器與登錄觸發器

熱門標簽:九鹿林外呼系統怎么收費 滄州營銷外呼系統軟件 創業電銷機器人 舞鋼市地圖標注app 浙江地圖標注 沈陽智能外呼系統代理 海南自動外呼系統價格 松原導航地圖標注 電銷機器人虛擬號碼

本文主要 涉及DDL觸發器和登錄觸發器的應用實例。

MicrosoftSQL Server 提供兩種主要機制來強制使用業務規則和數據完整性:約束和觸發器。觸發器為特殊類型的存儲過程,可在執行語言事件時自動生效。SQL Server 包括三種常規類型的觸發器:DML 觸發器DDL 觸發器登錄觸發器

1、當數據庫中發生數據操作語言 (DML) 事件時將調用 DML 觸發器。DML 事件包括在指定表或視圖中修改數據的 INSERT 語句、UPDATE 語句或 DELETE 語句。DML 觸發器可以查詢其他表,還可以包含復雜的 Transact-SQL 語句。將觸發器和觸發它的語句作為可在觸發器內回滾的單個事務對待。如果檢測到錯誤(例如,磁盤空間不足),則整個事務即自動回滾。

關于DML觸發器應用最為廣泛。這里不再贅述。MSDN官方說明:http://msdn.microsoft.com/zh-cn/library/ms189799.aspx

2、當服務器或數據庫中發生數據定義語言 (DDL) 事件時將調用 DDL 觸發器。DDL 觸發器是一種特殊的觸發器,它在響應數據定義語言 (DDL) 語句時觸發。它們可以用于在數據庫中執行管理任務,例如,審核以及規范數據庫操作。

下面我們用舉例說明DDL觸發器(http://technet.microsoft.com/zh-cn/library/ms189799%28SQL.90%29.aspx)的應用:

     示例一:創建一個DDL觸發器審核數據庫級事件

復制代碼 代碼如下:

/***************
創建一個審核表,其中EventData是一個XML數據列
3w@live.cn
*******************/

USE master
GO
CREATE TABLE dbo.ChangeAttempt
(EventData xml NOT NULL,
AttemptDate datetime NOT NULL DEFAULT GETDATE(),
DBUser char(50) NOT NULL)
GO

/***************
在目標數據庫上創建一個觸發器,以記錄該數據庫的索引變化動作,
包括Create|alter|Drop
3w@live.cn
*******************/

CREATE TRIGGER db_trg_RestrictINDEXChanges
ON DATABASE
FOR CREATE_INDEX, ALTER_INDEX, DROP_INDEX
AS
SET NOCOUNT ON
INSERT dbo.ChangeAttempt
(EventData, DBUser)
VALUES (EVENTDATA(), USER)
GO

/***************
創建一個索引,以測試觸發器
3w@live.cn
*******************/

CREATE NONCLUSTERED INDEX ni_ChangeAttempt_DBUser ON
dbo.ChangeAttempt(DBUser)
GO

/***************
查看審核記錄
3w@live.cn
*******************/

SELECT EventData
FROM dbo.ChangeAttempt



--------/***************
--------刪除測試觸發器和記錄表
--------3w@live.cn
--------*******************/

----drop TRIGGER [db_trg_RestrictINDEXChanges]
----ON DATABASE
----go
----drop table dbo.ChangeAttempt
----go

執行結果:

邀月工作室

    示例二:創建一個DDL觸發器審核服務器級事件 

復制代碼 代碼如下:

--------/***************
--------在目標數據庫服務器上創建一個觸發器,以防止添加登錄賬號,
--------3w@live.cn
--------*******************/
USE master
GO
-- Disallow new Logins on the SQL instance
CREATE TRIGGER srv_trg_RestrictNewLogins
ON ALL SERVER
FOR CREATE_LOGIN
AS
PRINT 'No login creations without DBA involvement.'
ROLLBACK
GO

--------/***************
--------試圖創建一個登錄賬號
--------3w@live.cn
--------*******************/
CREATE LOGIN johny WITH PASSWORD = '123456'
GO

--------/***************
--------刪除演示觸發器
--------3w@live.cn
--------*******************/

drop TRIGGER srv_trg_RestrictNewLogins
ON ALL SERVER
go

效果:

邀月工作室

注意:要特別謹慎使用DDL觸發器。如果設置不當,將會在數據庫級甚至服務器級引發不可預知的后果。

 

3、登錄觸發器(http://msdn.microsoft.com/zh-cn/library/bb326598.aspx)將為響應 LOGON 事件而激發存儲過程。與 SQL Server 實例建立用戶會話時將引發此事件。

如果你有這樣的需求:在某個特定的時間只允許某個賬號登錄服務器(如單位和家里使用不同的賬號遠程登錄服務器),那么登錄觸發器是一個不錯的選擇。

    示例三:創建一個登錄觸發器審核登錄事件

復制代碼 代碼如下:

--------/***************
--------創建登錄賬號
--------3w@live.cn
--------*******************/

CREATE LOGIN nightworker WITH PASSWORD = '123b3b4'
GO

--------/***************
--------演示數據庫和審核表
--------3w@live.cn
--------*******************/

CREATE DATABASE ExampleAuditDB
GO
USE ExampleAuditDB
GO

CREATE TABLE dbo.RestrictedLogonAttempt
(LoginNM sysname NOT NULL,
AttemptDT datetime NOT NULL)
GO

--------/***************
--------創建登錄觸發器,如果不是在7:00-17:00登錄,則記錄審核日志,并提示失敗
--------3w@live.cn
--------*******************/

USE master
GO
Create TRIGGER trg_logon_attempt
ON ALL SERVER
WITH EXECUTE AS 'sa'
FOR LOGON
AS
BEGIN
IF ORIGINAL_LOGIN()='nightworker' AND
DATEPART(hh,GETDATE()) BETWEEN 7 AND 17
BEGIN
ROLLBACK
INSERT ExampleAuditDB.dbo.RestrictedLogonAttempt
(LoginNM, AttemptDT)
VALUES (ORIGINAL_LOGIN(), GETDATE())
END
END
GO

--------/***************
--------查看審核記錄
--------3w@live.cn
--------*******************/
USE ExampleAuditDB
GO
select * from dbo.RestrictedLogonAttempt
go

--------/***************
--------刪除演示數據庫及演示觸發器
--------3w@live.cn
--------*******************/
use master
go

drop TRIGGER trg_logon_attempt
ON ALL SERVER
go

drop database ExampleAuditDB
go

結果:

邀月工作室

邀月工作室

當然,你也可以使用應用程序或類似于log4net的日志機制記錄類似的登錄事件,但SQL server 2008已經為我們做到了,你所做的僅僅是有勇氣來試一試。

小結:作為對數據DDL操作和登錄事件的審核和監控,SQL Server提供了比較完善的事件處理機制。這也是SQL server安全機制的一部分。下文將涉及SQL server數據庫級的透明加密,敬請關注。
http://www.cnblogs.com/downmoon

您可能感興趣的文章:
  • sql server連接不上怎么辦 SQL Server2008R無法登錄的解決方案(1814\18456)
  • SQL Server 2008用''sa''登錄失敗,啟用''sa''登錄的解決辦法
  • sql server 2008 用戶 NT AUTHORITY\IUSR 登錄失敗的解決方法
  • SQL Server 2008+ Reporting Services (SSRS)使用USER登錄問題
  • SQL Server 2008登錄錯誤:無法連接到(local)解決方法
  • Sql server 2008 express遠程登錄實例設置 圖文教程
  • SQL server 2008 更改登錄驗證方式的方法

標簽:寶雞 西藏 海口 日喀則 臺灣 商洛 咸寧 公主嶺

巨人網絡通訊聲明:本文標題《SQL Server 2008中的代碼安全(二) DDL觸發器與登錄觸發器》,本文關鍵詞  SQL,Server,2008,中的,代碼,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《SQL Server 2008中的代碼安全(二) DDL觸發器與登錄觸發器》相關的同類信息!
  • 本頁收集關于SQL Server 2008中的代碼安全(二) DDL觸發器與登錄觸發器的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    午夜精品久久久久久久99樱桃| 亚洲女同女同女同女同女同69| 国产欧美日韩综合精品一区二区| 久久av资源网| 3d动漫精品啪啪1区2区免费 | 一区二区三区在线免费视频| 国产综合久久久久影院| 欧美在线视频日韩| 久久综合精品国产一区二区三区| 激情文学综合网| 久久9热精品视频| 色婷婷综合久久久中文字幕| 国产蜜臀av在线一区二区三区| 久久国内精品视频| 91麻豆精品国产91久久久资源速度| 最新国产の精品合集bt伙计| 粉嫩嫩av羞羞动漫久久久| 久久精品一区蜜桃臀影院| 免费av成人在线| 欧美丰满嫩嫩电影| 精品国产免费人成在线观看| 久久狠狠亚洲综合| 91精品国产综合久久蜜臀| 五月天亚洲精品| 欧美一区二区成人6969| 日韩精品色哟哟| 欧美二区乱c少妇| 免费高清在线一区| 欧美r级电影在线观看| 精品一区二区三区日韩| 亚洲精品在线免费观看视频| 久久99精品国产麻豆婷婷洗澡| 日韩精品一区二区在线| 亚洲精品国产无套在线观| 国产精品99久久久久久似苏梦涵 | 97超碰欧美中文字幕| 日韩欧美国产一二三区| 99re这里只有精品视频首页| 亚洲欧美激情小说另类| 日韩欧美色电影| 国产精品亚洲午夜一区二区三区 | 国产精品卡一卡二| 欧美一二三四在线| 国产美女精品一区二区三区| 香蕉乱码成人久久天堂爱免费| 日韩一区国产二区欧美三区| 99久久精品国产一区二区三区| 一区二区三区日韩欧美| 国产日产欧美一区| 在线观看一区二区视频| 国产成人av一区| 亚洲精品精品亚洲| 亚洲美腿欧美偷拍| 国产亚洲成年网址在线观看| 91影视在线播放| 成人综合日日夜夜| 亚洲成年人网站在线观看| 久久久久久一级片| 91蜜桃婷婷狠狠久久综合9色| 黄色日韩三级电影| 亚洲啪啪综合av一区二区三区| 日韩一区二区三区在线| av在线不卡电影| 成人一区二区三区中文字幕| 亚洲国产精品久久人人爱 | 国产精品国产三级国产aⅴ原创| 91久久免费观看| 色先锋aa成人| 国产精品原创巨作av| 黑人精品欧美一区二区蜜桃 | 亚洲尤物在线视频观看| 日韩欧美国产高清| 欧美一区二区三区在线看| 成人深夜视频在线观看| 久久国产夜色精品鲁鲁99| 国产午夜精品一区二区三区嫩草| 色综合一个色综合| 国产麻豆一精品一av一免费| 中文字幕视频一区二区三区久| 欧美成人性福生活免费看| 日韩欧美国产小视频| 在线观看三级视频欧美| 欧美午夜精品免费| 成人的网站免费观看| 久久国产精品99久久人人澡| 亚洲精品伦理在线| 樱花草国产18久久久久| 国产欧美日韩亚州综合| 日韩女优毛片在线| 91久久久免费一区二区| 老汉av免费一区二区三区| 一区二区在线观看不卡| 国产精品拍天天在线| 久久久久久久久99精品| 欧美一区二区网站| 欧美精品一区二区三区一线天视频| 欧美日韩国产首页在线观看| 色综合久久久久综合体桃花网| 成人免费视频播放| 国产成人亚洲综合色影视| 狠狠色综合播放一区二区| 日本va欧美va欧美va精品| 香蕉乱码成人久久天堂爱免费| 亚洲在线一区二区三区| 亚洲女爱视频在线| 久久亚洲综合色一区二区三区 | 日韩成人精品在线观看| 色一区在线观看| 一本色道久久综合亚洲aⅴ蜜桃 | 91麻豆精品91久久久久同性| 欧美色图免费看| 97精品国产露脸对白| 欧美亚洲一区三区| 欧美亚洲禁片免费| av不卡免费电影| 日本电影亚洲天堂一区| 色噜噜偷拍精品综合在线| 在线观看亚洲精品| 欧美乱妇20p| 日韩欧美卡一卡二| 欧美精品乱码久久久久久按摩| 日韩欧美亚洲国产精品字幕久久久| 日韩欧美电影一区| 亚洲精选免费视频| 一区二区视频在线| 精品一区二区三区视频| 国产一区999| 欧美日韩高清在线| 成人av在线看| 理论电影国产精品| 丁香激情综合五月| 91丝袜呻吟高潮美腿白嫩在线观看| 久久福利资源站| 国产福利不卡视频| 成人动漫在线一区| 99这里都是精品| 欧美日韩亚洲综合一区| 中文字幕第一区第二区| 亚洲美女精品一区| 国内成+人亚洲+欧美+综合在线 | 欧美电影免费观看高清完整版在| 日韩欧美激情一区| 夜夜爽夜夜爽精品视频| 麻豆精品精品国产自在97香蕉| 色婷婷综合在线| 欧美成人女星排行榜| 亚洲国产精品一区二区久久| 国产麻豆成人传媒免费观看| 91精品国产欧美一区二区成人| 国产欧美一区二区精品性色| 精品写真视频在线观看| 99久久久久免费精品国产 | 欧美精品亚洲一区二区在线播放| 国产精品久久久久精k8| 亚洲超碰精品一区二区| 91久久精品一区二区三区| 91在线观看视频| 久久精品欧美一区二区三区麻豆| 蜜桃一区二区三区四区| 91视频免费播放| 自拍av一区二区三区| 韩国一区二区三区| 欧美大片在线观看一区| 亚洲免费色视频| jiyouzz国产精品久久| 日韩精品一区二| 国产呦精品一区二区三区网站| 国产不卡视频在线播放| 欧美高清在线精品一区| 麻豆一区二区三区| 看国产成人h片视频| 欧美一区二区三区视频免费| 亚洲欧美一区二区在线观看| 成人a区在线观看| 久久欧美一区二区| 国产成人精品一区二| 日韩欧美国产精品| 久久精品国产99国产| 91高清视频在线| 亚洲第一精品在线| 在线播放视频一区| 亚洲免费看黄网站| 欧美一激情一区二区三区| 国产自产视频一区二区三区| 色综合久久久久综合| 日韩欧美国产一区二区在线播放| 日韩精品久久久久久| 国内精品视频一区二区三区八戒| 国产视频911| 韩国成人精品a∨在线观看| 国产亚洲一区二区三区四区 | 青青草国产精品97视觉盛宴| 国内精品嫩模私拍在线| 91精品福利在线一区二区三区| 香蕉久久夜色精品国产使用方法 | 韩国成人在线视频| 日韩精品一区二区三区swag| 夫妻av一区二区| 亚洲欧美综合色| 色综合视频在线观看|