0

我在 ADFS 2016 上遇到了一个奇怪的问题。我有一个 Angular 应用程序,它使用 ng2-adal js 来处理应用程序的身份验证和授权。当用户从应用程序注销时,他们不会被重定向回登录页面。我在事件查看器中为 ADFS 启用了调试跟踪,错误是:

OAuthSignoutProtocolHandler.ValidatePostLogoutRedirectUri:验证结果:False。重定向网址:http://localhost:4200/login

指定的重定向 URL 与任何 OAuth 客户端的重定向 URI 都不匹配。注销成功,但客户端不会被重定向。

网址:http://localhost:4200/login

我使用了 ADFS 2016 应用程序组,我的 Native Client 带有这个重定向 URL。如果 URL 不存在,用户将无法首先登录。

任何帮助深表感谢。

4

1 回答 1

1

基于这个 github 问题: https ://github.com/AzureAD/azure-activedirectory-library-for-js/issues/677

通过在注销 url 中添加 id_token_hint 作为 url 参数,我能够注销并重定向回登录。

id_token_hint 的值必须是 ADFS 接收到的令牌。它存储在 SessionStorage 中(默认情况下),可以像 sessionStorage.getItem('adal.idtoken') 一样读取

于 2018-01-17T21:46:47.930 回答