HTTP密码更改导致Web用户被锁定

时间:2014-09-17 11:43:35

标签: xpages lotus-notes lotus-domino xpages-ssjs

我在xpages中写了一个更改密码模块,而不是使用?changepassword功能,我能够让管理进程更改密码才能工作,并且能够使用xpage和ssjs更改http密码。发表here。问题是,在Web用户更改其http密码后,在管理进程执行密码更改请求后约1分钟或更短时间内,用户将被锁定在服务器之外。服务器显示以下错误14次:

nHTTP: user@emailaddress.com [192.168.0.197] authentication failure using internet password

然后,它显示以下消息:

nHTTP: user@emailaddress.com [192.168.0.197] has just been locked out via internet password lockout: User is locked out

服务器设置为使用单服务器会话身份验证,大多数其他设置是vanilla。它设置为使用自我证书(用于测试),锁定设置为15次尝试。我们还使用OAuth令牌存储进行FaceBook和LinkedIn身份验证。

如果我删除了锁定记录并尝试重新登录,服务器会立即再次锁定我,服务器控制台会显示多次尝试,即使我只是尝试登录一次。如果我删除了锁定记录并切换到其他浏览器(foxfire或chrome),那么我可以正常登录。我假设这是一个身份验证令牌问题,当我在服务器上更改我的互联网http密码时,客户端没有获得更新的信息,当客户端将密钥信息传递给服务器时,它不再匹配并导致它把我锁起来。

带有$$ ChangePasswordForm的dbname.nsf?changepassword功能可以使用,我可能会使用它,但希望如果有人在他们找到解决方法之前已经看过这个。

1 个答案:

答案 0 :(得分:2)

我认为问题的关键在于你的评论

如果我删除了锁定记录并切换到其他浏览器(foxfire或chrome),那么我就可以正常登录了。

我认为问题是用户在更改密码后有一个无效的令牌,表示他们在cookie LTPAToken中的身份验证详细信息。在成功更改密码后的响应中,使用setCookie调用或其他方法使cookie无效/删除,并强制用户重新进行身份验证。