Spring Security OAuth 2隐式授权 - 不支持刷新令牌

Pun*_*ora 4 oauth spring-security access-token

Spring Security OAuth 2隐式授权不支持刷新令牌.当访问令牌在客户端到期时,如何处理场景?

小智 8

隐式流不会向客户端授予刷新令牌.这意味着当访问令牌过期时,客户端必须再次重定向到授权链接.

当访问令牌过期时,您将在请求受保护资源时收到401 Unauthorized(例如API方法):

HTTP/1.1 401 Unauthorized
WWW-Authenticate: Bearer realm="Some Realm Name", error="invalid_token",error_description="Invalid token: 12f55216-0fe0-422e-a473-356e03a3489b"
Content-Type: application/xhtml+xml;charset=UTF-8

<oauth><error_description>Invalid token: 12f55216-0fe0-422e-a473-356e03a3489b</error_description><error>invalid_token</error></oauth>
Run Code Online (Sandbox Code Playgroud)

您的应用程序必须通过调用来响应并请求新的访问令牌

/oauth/authorize?response_type=token&client_id=your-client-id
Run Code Online (Sandbox Code Playgroud)

再次.

4.2.隐含的格兰特

"隐式授权类型用于获取访问令牌(它不支持刷新令牌的发布),并且针对已知操作特定重定向URI的公共客户端进行了优化.这些客户端通常使用脚本语言在浏览器中实现,例如: JavaScript的".

4.2.2隐式拨款响应

"授权服务器不得发出刷新令牌."