Security 何时为oauth2流中的非交互客户端请求新的访问令牌?
我有一些与非交互式客户端相关的问题,比如基于oauth2流的后端应用程序 根据oauth2,对于非交互式客户端,流程为:Security 何时为oauth2流中的非交互客户端请求新的访问令牌?,security,oauth-2.0,access-token,auth0,Security,Oauth 2.0,Access Token,Auth0,我有一些与非交互式客户端相关的问题,比如基于oauth2流的后端应用程序 根据oauth2,对于非交互式客户端,流程为: 应用程序使用其客户端Id和客户端密码通过Auth0进行身份验证 Auth0验证此信息并返回访问令牌 应用程序可以使用access_令牌代表自身调用API 基于此,我的问题是: 后端应用程序应在本地存储access_令牌,或在客户端每次使用应用程序时为同一客户端请求新的access_令牌 如果访问令牌存储在本地,过期时间会发生什么 非交互式客户端的Access\u令牌应
- 应用程序使用其客户端Id和客户端密码通过Auth0进行身份验证
- Auth0验证此信息并返回访问令牌
- 应用程序可以使用access_令牌代表自身调用API
- 后端应用程序应在本地存储access_令牌,或在客户端每次使用应用程序时为同一客户端请求新的access_令牌
- 如果访问令牌存储在本地,过期时间会发生什么
- 非交互式客户端的Access\u令牌应与交互式用户(登录web)的Access\u令牌具有相同的过期时间
与第一个问题类似。由于使用客户机凭据授权流通常表示机密/受信任的客户机(您正在存储客户机机密),并且经常用于机器对机器的场景,因此使用更长的过期时间可能是有意义的。但是,如前所述,如果作用域可能会发生更改等,那么短时间的过期将导致配置更改(作用域)更快进行。谢谢@arceldon。(1) 当您说:“例如,如果作用域经常更改”,您是指业务和安全项目需求,还是从json响应()创建读写作用域??(2) 在稳定的企业环境中,为了不影响安全端点的所有应用程序客户端,安全项目要求不应更改。那么,假设有一个稳定的安全平台,一个具有高过期时间的访问令牌是否有效?或者出于安全目的,access_令牌到期时是否应续订(频繁)?谢谢。在这里,我要说明的是,如果您拥有相当“固定”的授权权限,例如,您分配给API的范围类似于
read:book write:book
,那么更长的过期时间是合适的(所有其他条件都是相同的-例如,受信任的客户端等)。但是,如果您知道授权权限可能会发生更改,并且希望您的非交互式客户机接收新的更改,那么更短的到期时间可能更合适-例如,您将deletebook
添加为作用域,并且您希望现有的非交互式客户机拾取该更改-因为exp.较短,他们会提前续订访问令牌。