我正在开发 jsp-springboot 应用程序,我已经使用 azure 实现了 sso,并且它按预期工作。我已经配置了
azure.activedirectory.tenant-id
azure.activedirectory.client-id
azure.activedirectory.client-secret
我还添加了重定向网址 在 application.properties 中,除了这些更改之外,我没有添加任何配置类,我能够成功登录。 对于注销我使用
https://login.microsoftonline.com/${azure.activedirectory.tenant-id}/oauth2/v2.0/logout
但是,如果我打开一个新选项卡并尝试访问该应用程序,我将能够访问该应用程序而无需请求登录。我不确定我必须做出哪些改变来防止这种情况
最佳答案
如果您需要单点注销,请尝试设置注销URL。为了使单点登录正常工作,必须在应用程序注册期间向 Azure AD 显式注册应用程序的 LogoutURL。
Azure AD 支持重定向绑定(bind) (HTTP GET),但不支持 HTTP POST 绑定(bind)
但如果这不起作用,则可能来自 v2 端点,因为这似乎是 azure saml sso 中 v2 端点的已知问题。
尝试使用 v1 注销端点
例如:https://login.microsoftonline.com/common/oauth2/logout
并在应用程序中的任何需要的地方进行更改。
请检查此引用
Microsoft Q&A .
另请参阅是否需要在应用程序注册下的 list 编辑器中编辑注销 URL。
引用文献:
关于java - Azure 单点登录无法正确注销,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70943623/