我是安全新手。我正在我的网站上实施 oauth,我想问一下我应该在哪里保存我的访问令牌:
- 饼干
- 会话(将通过 ajax 请求从服务器获取)
我有后端(restful)和前端(SPA)。只有他们之间的交流。
顺便说一下,oauth 的推荐过期时间是多少?
我是安全新手。我正在我的网站上实施 oauth,我想问一下我应该在哪里保存我的访问令牌:
我有后端(restful)和前端(SPA)。只有他们之间的交流。
顺便说一下,oauth 的推荐过期时间是多少?
将访问令牌存储在 cookie 中可能容易受到某些客户端攻击(例如窃取用户 cookie)。请改用会话和 HTTPS 进行通信。
根据您想要或必须使用的不同流(授权代码、隐式大、资源所有者密码或客户端凭据流),您可能需要授权令牌,并且最终需要访问令牌。授权令牌可以存储在数据库中,并且可以有更多天的 TTL,而访问令牌(大约 5 分钟或可配置)的寿命更短,可以存储在服务器上的列表中,可供不同客户端访问(同步!)。OAuth2 不使用签名,因此 HTTPS 是必须的。令牌不应该作为 cookie 存储在里面,因为它不是出于不同的原因(缓存、传输漏洞等)。由于访问令牌链接到用户,它可以保存在客户端应用程序的会话中。
也许使用为您正确管理它的库会更简单。
检查这个javascript 库