我可以使用OAuth2访问令牌为其他客户端获取访问令牌吗?

问题描述:

在我们的项目中,我们希望有一个“主”客户端,用户必须获得一次访问令牌。任何需要访问令牌的客户端都将通过“主”客户端进行访问。我可以使用OAuth2访问令牌为其他客户端获取访问令牌吗?

当前用户每次客户端需要访问令牌时都必须登录。如果我们的“主”客户端有一个有效的令牌,并且我尝试使用它到达授权端点,那么我要么转到登录页面,要么得到一个“InsufficientAuthenticationException:在授权完成之前,用户必须使用Spring Security进行身份验证。

在这一点上,我想知道它是否打算以这种方式访问​​授权端点,或者如果我们只是做错了什么。

我有同样的问题。基本上,我所做的是将AbstractTokenGranter扩展为新的grant_type,其中我从令牌存储中获得了认证,并使用第二个clientIds创建了新的TokenRequest。此外,您需要使用您的检查来创建新的AbstractUserDetailsAuthenticationProvider,并且扩展UsernamePasswordAuthenticationToken以将其挂钩在链中。 剩下的就是在设置中添加granter和提供者,并在oauth主服务器的请求中使用全新的grant_type。祝你好运!