我有一个问题,关于如何/什么是使用 OpenId 并提供保持登录状态的最佳方法。
例如,如果我查看 Stackoverflow,我已经使用 Google 登录,如果我关闭浏览器并返回,它仍然显示我已登录。
However,我没有登录谷歌,而且我已经登录了removedstackoverflow 从有权访问您的 Google 帐户的授权服务列表中。我天真地期望 stackoverflow 会提示我再次登录,但事实并非如此。
所以我的问题是,关于 OpenId 和跨会话记住经过身份验证的用户的最佳实践是什么?
OpenID 仍然很新,一些依赖方正在尝试新的、不同的方法来实施 OpenID。有一项工作正在进行中依赖方最佳实践文件 http://wiki.openid.net/Relying-Party-Best-Practices由 OpenID 基金会主办。特别是,他们解决了 cookie 和会话长度的问题最后一节 http://wiki.openid.net/Relying-Party-Best-Practices#StoreprimaryOpenIDinacookieandcheckimmediateatnextsession。使用持久的 Claimed_id cookie 而不是持久的会话 cookie 绝对是一个有趣的想法,以使用户的生活更轻松 - 他们只需退出他们的 OP 并关闭浏览器。
就我个人而言,我发现您在 StackOverflow 上描述的行为非常自然。如果 OpenID 不适用,并且您使用持久 cookie(一种非常常见的情况)在两台不同的计算机上登录了用户名/密码网站,并且您在其中一台计算机上更改了密码,那么如果另一台计算机上的密码被更改,我也不会感到惊讶电脑仍然让我登录。你could称其为安全漏洞,但这仍然是正常做法。事实上,这很正常,Gmail 最近在您的收件箱屏幕底部添加了一个显示,告诉您您在其他位置登录,并让您有机会使他们的会话 cookie 失效。
我建议任何 RP 都可以采取类似的方法,无论身份验证方法如何。这可能会减轻您的安全担忧。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)