限制域中账户在差别计算机上反复登录的脚本[网络技术]
本文“限制域中账户在差别计算机上反复登录的脚本[网络技术]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
在微软的AD域中,任何一个用户账户都可以在差别的客户机上登录,有时乃至同一个账户同一个时间在差别的计算机上反复登录.微软AD自带的账户掌握功效"登录到"设置仅仅能掌握某一个账户在某一台(或多台)计算机上登录,但是并不能掌握整个域中全部账户的反复登录.
除非管理员可以非常有耐烦的设置每一个账户的登录位置,并且此后今后这些账户的登录计算机被固定死了.那么若何到达限制账户同一时间只能登录一台计算机,并且登录位置不限制呢?
微软有一个软件叫LimitLogon,但是需求至少一台服务器作为 Web Server,需求扩大架构,成立一个利用程序分区(会影响恢复速度).客户端需求Dotnet 1.1和安装一个客户端软件以支持SAOP和Web Server通讯.这些条件普通公司很难承受.还有一个第三方软件叫UserLock,很好很强盛,但是收费的.
目前用脚本来实现这个功效,基本思惟是这样的:
1.当用户登录时,查抄数据库中全部当前用户登录记录,假如没有该账户信息,答应登录,并记录登录账户、客户机位置和时间;
2.当另一个用户利用一样的账户登录时,举行一样的查抄,由于已经有登录的信息记录,阐明目前登录的账户是反复登录,则禁止登录;
3.当用户注销或关机时,运行注销脚本,将数据库中的登录信息举行删除以备下一次登录;
4.假如由于网络缘由或客户机非常关机,招致注销或关机时用户登录信息没有正常删除,影响下一次登录,因此在登录查抄时,假如当前登录的账户和客户机与数据库中的信息是一致的,阐明是同一个账户在同一个计算机上登录,仍旧答应登录,仅仅是更新数据库中的登录时间信息.
本来实现办法是利用一个文本文件作为登录信息的记录,但是发现当登录用户较多时,由于文本的单用户操作性,多个用户不能同时举行登录信息的记录,造成登录耽误,因此改用SQL Server(也可以是MSDE)举行登录信息的记录.假如利用Access数据库,由于Access仍旧是单用户的,可以在前端利用一个Web承受用户登录信息(近似于某些网站).但是举行Web的开辟还不如利用MSDE简单,这里就不做注释了.
阐明:
1.首先要找一个SQL Server服务器,成立一个数据库(或利用现有数据库),在里面成立一个表adlogin,表构造以下:
create table adlogin
(currentloginuser varchar(20),
currentloginpc varchar(20),
logintime datetime)
这里需求记着服务器、数据库和表的名称,在脚本中需求用到.
2.由于脚本是用户登录/注销脚本,因此是用当前登录用户的账户权限运行的,假如SQL Server采取"仅Windows身份认证"需求该账户可以拜候SQL Server并在上述表中增添或删除记录,因此需求将SQL Server的安全情势改成混合情势,并且成立一个SQL登录标识并设定密码.
当然可以在数据库中举行权限设置,使该账户仅仅可以拜候上述表,而不是整个数据库.这一点在SQL Ser
以上是“限制域中账户在差别计算机上反复登录的脚本[网络技术]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |