`
编程足球
  • 浏览: 261604 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

SQL 限制账号登入时间

    博客分类:
  • SQL
 
阅读更多
使用触发器来限制账号是否能登入

1. 创建一张表来保存非法时间登入的账号信息
CREATE TABLE [dbo].[sys_login_blocked_log] (
  [Id] int IDENTITY(1, 1) NOT NULL,
  [session_id] smallint NULL,
  [login_time] datetime NULL,
  [host_name] nvarchar(128) COLLATE Chinese_PRC_CI_AS NULL,
  [original_login_name] nvarchar(128) COLLATE Chinese_PRC_CI_AS NULL,
  [client_net_address] varchar(48) COLLATE Chinese_PRC_CI_AS NULL,
  CONSTRAINT [PK_LogonLog] PRIMARY KEY CLUSTERED ([Id])
)
ON [PRIMARY]
GO


2. 创建限制登入触发器,
   账号 test  登入时间限制为7-17点无法登入

CREATE TRIGGER [tr_logon_CheckTime] ON ALL SERVER
WITH EXECUTE AS 'sa'
FOR LOGON
AS
BEGIN
    IF ORIGINAL_LOGIN()='test' AND DATEPART(hh,GETDATE()) BETWEEN 7 AND 17
    BEGIN
        ROLLBACK;
        INSERT INTO [mig_bug].[dbo].[sys_login_blocked_log]
            ([session_id]
            ,[login_time]
            ,[host_name]
            ,[original_login_name]
            ,[client_net_address])
        SELECT 
            a.[session_id],a.[login_time],a.[host_name],
            a.[original_login_name],b.[client_net_address]
            FROM MASTER.sys.dm_exec_sessions a 
            INNER JOIN MASTER.sys.dm_exec_connections b 
            ON a.session_id=b.session_id
            WHERE a.session_id = @@SPID
    END;
END;
GO

  • 大小: 175.2 KB
分享到:
评论

相关推荐

    J2EE限制同一账号同一时刻只能一个用户登录使用,向QQ一样

    6. **优化措施**:为了防止恶意用户尝试登录并强制下线其他用户,可以设置登录失败次数限制,超过次数则锁定账号一段时间。此外,可以使用分布式Session存储,如Redis或Memcached,以支持大规模并发和高可用性。 ...

    C/S一个帐号只能同时只能一个用户登录

    在我们开发商务软件的时候,常常会遇到这样的一个问题:怎样防止用户重复登录我们的系统?特别是对于银行或是财务部门,更是要限制用户以其工号身份多次登入。 利用SQL Server的全局临时表防止用户重复登录

    智睿网络投票评选管理系统 v10.7.1.rar

    授权版:一健单,多选切换,动态IP防刷,CC防注,IP自动校验,时间防注,自动防刷锁IP,COOKIE防注,SQL防注,时间控制,IP封锁,最大有效票数控制,间隔控制,外链控制,票数控制等 智睿网络投票评选管理系统特点...

    星辰飞飞登录器源码

    6. **反作弊与安全防护**:登录器可能包含一些防作弊机制,如检查客户端版本、防止模拟器登录、限制异常登录行为等。同时,它还需要防止SQL注入、XSS等常见的网络安全威胁。 7. **多线程与并发处理**:登录器在处理...

    Python简单实现一个可以注册、登录、登出的系统

    限制手机号码长度11位,不满足则抛出异常给调用方;密码、确认密码长度为6位,不符合则抛出异常给调用方;密码、确认密码不相同,也抛出异常给调用方。 (4)注册信息保存到本地一个文件中。 (5)提供登录功能:...

    qq自动登录 java

    在Java中,由于安全限制,不能直接操作注册表。不过,可以通过JNI(Java Native Interface)或者使用第三方库如JRegKey来实现。JRegKey是一个Java库,允许程序员在Java代码中读写Windows注册表。首先,你需要理解...

    华兴行政事业资产管理系统安装使用手册.docx

    套账的基本信息包括套账号(建议从001开始)、套账名称(以单位名称命名)、开始时间(如2010-01-01)以及套账主管信息。建账过程可能需要3到5分钟。 4. 安装CELL插件:最后,选择安装向导中的“”进行CELL插件的...

    Shopnc b2b2c 好商城V5 33hao-V5完整源码.zip

    商家商品分类和平台商品分类分开 √ 商家商品分类不再受到平台限制,使用更灵活 商家后台增加实体店经纬度获取坐标功能 √ 商家填写经纬度获取坐标后,手机端用户可在店铺街查看商家具体坐标。 商家后台PC成交情况...

Global site tag (gtag.js) - Google Analytics