我是否有任何安全原因无法将通过密码授予发出的访问令牌设置为30天?
如果这不是一个坏主意,那么我应该怎么做才能缓解这种情况?例如,
答案 0 :(得分:0)
不建议使令牌具有长寿命。是的,因为它们可能被盗。
它可能被盗了,但是与您的密码相同。
隐藏访问令牌比窃取密码更好。这就是OAuth 2.0试图解决的问题。通常,通常使用用户密码(例如:Facebook和电子邮件帐户的密码相同)。因此,窃取一个具有更多的安全隐患。但是,窃取访问令牌是不好的。限制其使用寿命是减轻风险的一种方法。
我可以添加一个GUI,以允许撤消为缓解1而发行的访问令牌。
可以,但是到检测到这一点时,可能已经太迟了!例如30天的时间很多,恶意方可以在其范围内获得一切。
我可以确保更改密码后,所有以前的访问令牌都被撤销。
默认情况下必须这样做。因此,这不是针对您的方案的解决方案,而是一种标准做法。
解决方案?
使用刷新令牌刷新过期的访问令牌。通常,刷新令牌的寿命会延长。与访问令牌不同,您很少使用它,因此,如果安全地存储它,就可以保护它。另外,如果您的客户端属于机密类型,则可以添加另一级保护。因此,短期访问令牌和长期刷新令牌是更好的解决方案。