sql登录触发器限制登录账户名及ip地址及登录时间

sql登录触发器限制登录账户名及ip地址及登录时间

转自 http://www.greensoftcode.net/techntxt/2011610235318377133663、


if   exists (SELECT * FROM  sys.server_triggers  where   name= 'logon_verif')
 Drop Trigger  logon_verif On All Server
go
CREATE TRIGGER logon_verif
ON ALL SERVER 
FOR LOGON
AS
BEGIN
declare @ip nvarchar(60)
declare @loginName nvarchar(60)
declare @timev int
set @ip=EVENTDATA().value ('(/EVENT_INSTANCE/ClientHost)[1]','nvarchar(60)')
set @loginName=EVENTDATA().value('(/EVENT_INSTANCE/LoginName)[1]','nvarchar(60)')
set @timev=cast( convert(varchar(2),getdate(),8) as int)
 if  ( (@loginName='shop') and  (@timev>18 or @timev<9  ))
  BEGIN
  ---if not exists(select 1 from ipTable where ip=@ip)
  rollback
  End
 if ( (@loginName='sa') and  (@ip!='127.0.0.1')and  (@ip!='<local machine>')and  (@ip!='218.25.20.72'))
   BEGIN 
  rollback
  End
end

   rollback
  End
end


  •  


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值