首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >持久化OAuth凭据的好理由是什么?

持久化OAuth凭据的好理由是什么?
EN

Security用户
提问于 2017-01-24 14:10:25
回答 1查看 192关注 0票数 0

在查看某些网站的数据库时,我注意到在数据库中存储着OAuth凭据(例如令牌、刷新令牌)和其他信息的表。

我的理解是,这些信息主要是用户会话时间所必需的,之后就不再需要了,所以我的问题是,为什么要将这些信息保存在数据库中,或者存储在任何媒体中?

它是否能被存储,以节省会话过期后重新验证的成本?

EN

回答 1

Security用户

回答已采纳

发布于 2017-01-24 14:41:57

有访问令牌和刷新令牌。

访问令牌通常是短暂的(比如30或60分钟),并且没有理由在它过期后持久化它。对任何人都没用。

刷新令牌是获得新访问令牌所必需的,并且通常寿命较长;至少与活动会话一样长。

如果攻击者获得刷新令牌,则他们拥有用户在登录该令牌时所拥有的所有访问权限。但是,他们可以访问特定刷新令牌授权的会话(S)。(这意味着,如果该令牌被授予的权限低于该用户的正常权限,则攻击者将处于相同的降低权限)。

另外,由于它不是散列密码,所以他们不能用彩虹表从它派生明文密码。

刷新令牌可以在任何时候收回,而无需用户更改其密码。

从安全的角度来看,使用刷新令牌而不是要求用户再次登录可以防止肩部冲浪。缺点是,如果攻击者对包含刷新令牌的设备具有物理访问权限,则它们也不需要进行身份验证。

删除刷新令牌时要小心。过期的刷新令牌对任何人都没有用处,可以安全地删除。但是,删除活动刷新令牌需要用户再次登录,给他们带来不必要的不便。

确保包含活动刷新令牌的数据库已被正确保护。它们通常不会像密码那样被散列。

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

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

复制
相关文章

相似问题

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