我有一个远程访问 VPN,它通过 RSA SecurID 服务器和 Active Directory 进行身份验证。
由于复杂的内部政策原因,有人提出请求,要求我们在每个用户登录一定次数后暂停访问。
例如,用户 john.doe 可以登录 100 次,但此后,他的帐户将在 AD 中被禁用,直到手动恢复。
我很难弄清楚如何以及在何处最好地配置它。
有任何想法吗?
答案1
限制并发登录
抱歉,Microsoft 没有内置方法来限制并发用户登录。不过,第三方工具可以解决这个问题。如果你使用的是 Server 2003(真丢脸),那么免费的限制登录工具可能会有用。如果你使用的是 2008 R2 及以上版本,那么请查看用户锁。它不是免费的,但可以满足您的需求。最后,如果您的预算有限,您可能可以编写一些脚本。这里有一个例子这里。
例如,您可以创建一个 Windows 登录脚本组件,将驱动器映射到用户的主目录共享。如果无法创建映射,则出错并注销。在每个用户的主目录共享上,您可以将最大连接数设置为 1。当用户登录一次时,一切正常。但是,这样做两次会产生 1 级净使用错误。可以在登录脚本中捕获此错误,以重定向到注销命令并退出。
限制总登录次数
如果 - 正如@JacobEvans 建议的那样 - 你正在查看登录总数而不是并发数,那么你可以检查 AD 属性登录次数问题是,你必须将所有 DC 的 LogonCount 相加。我想你想看看这里有关如何计算 DC 并合并脚本的信息,请参见此处这里如何计算登录次数。示例。
Set objUser = GetObject _
(“LDAP://atl-dc-01/cn=ken myer, ou=Finance, dc=fabrikam, dc=com”)
Wscript.Echo objUser.LogonCount