Oauth 2.0 密码授予中的长寿命访问令牌有什么问题?

Oauth 2.0 密码授予中的长寿命访问令牌有什么问题?,oauth-2.0,doorkeeper,Oauth 2.0,Doorkeeper,我不能将通过密码授予颁发的访问令牌设置为30天,有什么安全原因吗 如果这不是一个坏主意,那么我应该做些什么来缓解这种情况?比如说, 它可能被盗,但这和你的密码一样 我可以添加一个GUI来允许撤销为缓解1而发布的访问令牌 我可以确保在密码更改后撤销所有以前的访问令牌 不建议使用长寿命访问令牌。是的,那是因为它们可能会被偷 它可能被盗,但这与您的密码相同。 窃取访问令牌比窃取密码好。这就是OAuth2.0试图解决的问题。通常使用用户密码(例如:Facebook和电子邮件帐户的密码相同)。因此,偷一个

我不能将通过密码授予颁发的访问令牌设置为30天,有什么安全原因吗

如果这不是一个坏主意,那么我应该做些什么来缓解这种情况?比如说,

  • 它可能被盗,但这和你的密码一样
  • 我可以添加一个GUI来允许撤销为缓解1而发布的访问令牌
  • 我可以确保在密码更改后撤销所有以前的访问令牌

  • 不建议使用长寿命访问令牌。是的,那是因为它们可能会被偷

    它可能被盗,但这与您的密码相同。

    窃取访问令牌比窃取密码好。这就是OAuth2.0试图解决的问题。通常使用用户密码(例如:Facebook和电子邮件帐户的密码相同)。因此,偷一个有更多的安全问题。但偷取访问令牌是不好的。限制其寿命是降低风险的一种方法

    我可以添加GUI以允许撤销为缓解1而发行的访问令牌。

    你可以,但当你发现这一点时,可能已经太晚了。!例如,30天是很长的时间,恶意方可以获得其范围内的一切

    我可以确保在更改密码后撤销所有以前的访问令牌。

    默认情况下,必须执行此操作。!因此,这不是针对您的场景的解决方案,而是一种标准实践

    解决方案?

    使用刷新令牌刷新过期的访问令牌。通常刷新令牌具有延长的生命周期。与访问令牌不同,您很少使用它,因此如果您安全地存储它,您可以保护它。此外,如果您的客户属于机密类型,则您可以添加另一级别的保护。所以短期访问令牌和长期刷新令牌是更好的解决方案