我目前正在尝试使用this library将OpenID与Node.js服务器集成。登录非常简单,但我真的很难弄清楚如何检测用户何时从他们的OpenID提供商退出。
例如,我目前正在使用Google作为提供商。如果用户使用Google登录我的应用程序,然后在其他网站上从Google注销,我需要有办法解决这个问题,以便我也可以在我的应用程序中签名。
我的第一个方法就是坚持断言,然后定期验证它是否已经过期。这不适用于OpenID,因为openid.response_nonce
对每个请求都应该是唯一的。我不能得到一个新的断言,因为这需要另一个重定向到谷歌,所以我不能在幕后使用ajax。这通常是如何使用OpenID完成的?它可以完成吗?感谢。
答案 0 :(得分:0)
您无法知道用户何时退出; OpenID中的依赖方(客户端)和提供者(服务器)之间没有这种联系。
您可以做的最好的事情是跟踪断言何时到期和/或重新认证。