2011年12月14日 星期三

利用 Trigger 來限制登錄 SQL Server


網路找到的文章

不從特定 IP 不准某帳號登入 SQL Server

CREATE TRIGGER [connection_limit_trigger]
ON ALL SERVER
WITH EXECUTE AS 'I7Administrator'
FOR LOGON
AS
BEGIN
IF ORIGINAL_LOGIN()= 'sa' AND
not exists  (SELECT * FROM sys.dm_exec_connections
            WHERE client_net_address = ’127.0.0.1′
            and session_id=@@SPID)
    ROLLBACK;
END;

–ENABLE TRIGGER [connection_limit_trigger] ON ALL SERVER

其中
ORIGINAL_LOGIN() -- 系統函數, 目前登錄的 帳號
sYS.DM_EXEC_CONNECTIONS -- 目前連線的動態表格
@@SPID -- 目前登錄的 Session ID

沒有留言:

張貼留言