使用 oauth2-client 作为隐式授权类型时解决 [authorization_request_not_found]
Posted
技术标签:
【中文标题】使用 oauth2-client 作为隐式授权类型时解决 [authorization_request_not_found]【英文标题】:resolve [authorization_request_not_found] when using oauth2-client as implicit grant-type 【发布时间】:2019-12-28 20:35:06 【问题描述】:我得到 OAuth2AuthorizationException:[authorization_request_not_found]
当尝试将授权授权类型从授权代码替换为隐式时
spring:
security:
oauth2:
client:
registration:
mobile:
provider: auth
client-id: revo
authorization-grant-type: implicit
redirect-uri: "baseUrl/login/oauth2/code/registrationId"
scope: read
这个结果将我重定向到 /login/oauth2/code/mobile#access_token=++++&token_type=bearer&state=++++&expires_in=++++
但它是白标签错误页面 我可以解决这个 Whitelabel 错误页面吗
【问题讨论】:
你有 WebSecurityConfigurerAdapter 吗? 我正在使用来自 spring webflux 的 ServerHttpSecurity 【参考方案1】:根据源代码,authorization_request_not_found
可能是由以下原因引起的:
以上内容应保存在ClientRegistrationRepository
。检查客户端和身份验证服务器配置后,第三种可能性是服务器和客户端使用相同的baseUrl
,就像 localhost 或相同的 ip,即使它们位于不同的端口。然后您可以将其中一个更改为使用本地配置的域名(例如 /etc/host)。这是因为当客户端和服务器都使用相同的域名时,它们会删除刚刚在 cookie 中设置的另一个会话 ID。
【讨论】:
以上是关于使用 oauth2-client 作为隐式授权类型时解决 [authorization_request_not_found]的主要内容,如果未能解决你的问题,请参考以下文章