Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
检测active directory用户是否必须通过Java重置其密码_Java_Active Directory_Ldap - Fatal编程技术网

检测active directory用户是否必须通过Java重置其密码

检测active directory用户是否必须通过Java重置其密码,java,active-directory,ldap,Java,Active Directory,Ldap,我们在windows服务器上设置了一个active directory(它不是一个合适的LDAP),我们的应用程序通过相同的方法对用户进行身份验证 我想知道用户是否是第一次登录以强制他重置密码 我们无法在应用程序级别维护标志,因为用户可以通过使用相同身份验证的任何应用程序登录。根据,如果用户从未登录过,lastLogonTimestampldap属性没有值。所以你可以用这个来确定用户是否已经登录。我被这个场景误导了。如果设置了用户的“下次登录时更改密码”标志,则通过Java登录时会出现错误 找到

我们在windows服务器上设置了一个active directory(它不是一个合适的LDAP),我们的应用程序通过相同的方法对用户进行身份验证

我想知道用户是否是第一次登录以强制他重置密码


我们无法在应用程序级别维护标志,因为用户可以通过使用相同身份验证的任何应用程序登录。

根据,如果用户从未登录过,
lastLogonTimestamp
ldap属性没有值。所以你可以用这个来确定用户是否已经登录。

我被这个场景误导了。如果设置了用户的“下次登录时更改密码”标志,则通过Java登录时会出现错误


找到解决办法了。非常感谢您抽出时间。

lastLogonTimeStamp只保证在14天内复制。所以它在DC上可能是正确的,而不是在另一个上。@jeemster,你能详细说明一下,走这条路有用吗?Pavan,jeemster说这个属性保证只在14天内被复制。因此,当您有多个DC时,可能会得到一个旧值,因为它尚未更新。下面的链接建议,如果你想像HYS所说的那样实时获取登录信息,就使用安全日志。您可以从一个DC获取旧值或无值,从另一个DC获取当前值。