如果我每次都可以刷新令牌,设置客户端令牌过期的目的是什么?



我使用的是Dailymotion API,它使用Oauth2,它们的客户端令牌将在36000秒(10小时(后过期,因此我考虑使用提供的刷新令牌URL为每个调用创建新令牌。此外,我在文档中没有发现任何阻止我这样做的警告,这是一种糟糕的做法吗?

在每个请求上创建一个新令牌并不是最好的方法。

在请求期间,您可以检查(例如:使用"尝试"(您的访问令牌是否已过期,然后仅在必要时使用给定的刷新令牌请求新的访问令牌。

如果您使用的是PHP、Python、Javascript等语言。。。使用已经实现这些机制的可用SDK可以节省大量时间。

cf。https://developer.dailymotion.com/tools/sdks/

是的,这是一种糟糕的做法,尽管它是可行的。授权服务器可能会对您的客户端施加速率限制,因此在某个时刻您将无法刷新令牌。

出于安全原因,访问令牌必须具有过期时间。如果有人设法获得该令牌,他们将只能在指定的时间内使用它。良好的做法是尽可能短的到期时间,例如5或15分钟。在我看来,Dailymotion使用的10个小时有点多,但这是他们的决定。

刷新令牌应由客户端安全保存,通常需要客户端机密才能发出刷新请求。这意味着攻击者通常更难获得刷新令牌(或在成功窃取后使用它(。

最新更新