首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对于OpenID,我应该刷新/重新验证吗?

对于OpenID,我应该刷新/重新验证吗?
EN

Security用户
提问于 2016-08-25 05:56:22
回答 2查看 244关注 0票数 0

我正在使用谷歌OAuth 2.0为我的网站提供登录(我的公司的其他开发者可以使用一个rinkydink内部工具,所以安全性并不是最重要的,但有一些访问限制)然而,一旦登录,我就不需要访问任何额外的谷歌资源--我只需要收到用户电子邮件,并考虑用户登录。这通常是怎么做到的?我看到的选择是..。

将此登录存储在cookie中,并不再与Google联系(至少在cookie超时或用户手动注销之前)

让长期cookie存储密钥(服务器存储OAuth代码),并在用户想要执行敏感操作时重新进行身份验证。

让一个长期cookie存储一个密钥(服务器存储OAuth代码),以及一个在关闭浏览器时过期的短期会话cookie。每当他们第一次访问页面时,我都会重新验证一次,并给他们这个会话cookie。

EN

回答 2

Security用户

回答已采纳

发布于 2016-08-25 14:21:20

通常,对于基于令牌的身份验证,您有两种类型的令牌:

访问令牌

这些是传递给实际请求访问资源的令牌。它们的寿命很短。

刷新令牌

这些令牌用于在新的访问令牌过期后获得它。它们具有较长的过期时间,并且安全地存储在系统上。

这背后的想法是,访问令牌将用于授予您对资源的访问权限。它们在短时间内过期,因此,如果受到破坏,对系统的访问是有限的。刷新令牌只需要在需要新的访问令牌时使用,所以不要经常通过线路传输。强调安全地存储刷新令牌。

会话管理

有两种方法可以用来存储令牌,即Web存储和Cookies。在这两种选择中,我目前的首选是带有标志HttpOnly和安全集的Cookies。

票数 1
EN

Security用户

发布于 2016-08-25 18:09:08

如果您没有使用第三方进行身份验证,我建议您采取相同的方法:一旦会话过期,重新身份验证。

一旦用户通过认证,就没有理由再联系谷歌了。在使用access_token访问身份验证所需的资源之后,甚至不需要存储它。

这样,您需要担心的唯一参数是会话应该持续多长时间。这将取决于您的安全要求。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/134895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档