s.assembly_modules 目录视图的 execute_as_principal_id 列查看。 execute as 登录名
--FOR | AFTER --AFTER 指定 DML 触发器仅在触发 SQL 语句中指定的所有操作都已成功执行时才被触发。 所有的引用级联操作和约束检查也必须在激发此触发器之前成功完成。 --如果仅指定 FOR 关键字,则 AFTER 为默认值。 --不能对视图定义 AFTER 触发器。 for
--登录触发器标识符 logon as begin if (select count(1) from sys.dm_exec_sessions where is_user_process=1 and original_login_name=登录名) >3 and original_login()=登录名 begin rollback; end end
示例结果:
LOGON登录触发器优缺点
优点:
1、可以使用登录触发器来审核和控制服务器会话。
2、通过跟踪登录活动、限制 SQL Server的登录名或限制特定登录名的会话数。
3、防止数据库账号密码泄露或者不合法的IP登录。
缺点:
1、登录可能引起不必要的触发逻辑。
2、登录触发器创建的会话是实例级别,并且应用于所有服务器,可能会对新建数据库和会话产生不必要的影响。
|