所以,我有一个独立的 OAuth2 身份验证服务器和客户端应用程序(基于 Web),都使用 Spring OAuth2。
我在 Auth 服务器上有一个登录表单主机,使用 Spring 设置(通过登录表单)从客户端应用程序重定向等。
到目前为止一切都很好。
我在客户端上添加了一个注销设置:
.and()
.logout()
.addLogoutHandler(oauth2LogoutHandler())
.logoutSuccessUrl("/")
.clearAuthentication(true)
.deleteCookies("JSESSIONID")
.invalidateHttpSession(true)
.permitAll()
这一切“似乎”都很好。
但是,如果我然后点击我的客户端上的“登录”链接,当它重定向到授权应用程序时,我没有得到登录屏幕,而只是发生了重定向握手,我又回到了客户端应用程序中。
所以,问题是,当我在客户端应用程序上注销时,需要在 Auth 服务器中“清除”什么?会话信息以某种方式保留在身份验证应用程序上,但是当我点击登录时,我无法找到该会话是如何被拾取的?是否有一种干净的方法可以将“注销”传播到 Auth 服务器?
非常感谢
马丁