2012-07-23 55 views
1

OAuth 2.0 v30定义了expires_in来指定在令牌过期之前的客户端时间。如果您对客户要求的所有范围有单个持续时间,则这种方法很有效。当有多种类型的示波器时:例如离线 - 在线(例如,如果您愿意,可以短期生活或长期生活)OAuth提供商返回的过期时间?expirers_in和多个作用域类型

回答

-1

用户授予客户端代表他在某些范围内访问资源的权限。这个许可基本上被授予所有范围的无限时间(因为他对提供者处理方式没有影响),至少在用户手动撤销提供者方面的权限之前。如果他只撤销部分示波器,则当前发行的access_token将失效,客户必须使用refresh_token请求新的(其范围有限)。

过期令牌的原因是,当它们被盗时,攻击者只能在有限的时间内访问。因此,您设置为提供商的时间应该取决于您信任客户的程度,如果他可以保留代币的秘密而不是范围。

+0

要么我写错了,要么就是我没有打算这样写。正如所写的,假设您无法在客户端请求的凭证类型(它是第三方代表用户访问受保护的资源)之间做出选择。所以这个问题更具技术性:包含解释或建议仔细选择返回的时间:长/短/有些混合。 – 2012-07-23 23:01:49

+0

对不起,那我还是不明白。我对你的问题的理解是这样的:你有不同的范围,取决于客户端(第三方)请求的范围,你想返回不同的'expires_in'值。所以我试着向你解释,为什么恕我直言,没有理由让expires_in依赖于范围,因为所有范围都是由用户授予无限时间的。如果这不是你所要求的,你可以尝试用其他语言来描述还是更详细些? – 2012-07-24 09:34:56

相关问题