Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular ADFS 2016:注销后无法重定向到登录页面_Angular_Oauth 2.0_Logout_Adfs4.0 - Fatal编程技术网

Angular ADFS 2016:注销后无法重定向到登录页面

Angular ADFS 2016:注销后无法重定向到登录页面,angular,oauth-2.0,logout,adfs4.0,Angular,Oauth 2.0,Logout,Adfs4.0,我使用OpenID Connect和OAuth 2.0直接针对AD FS 4.0对用户进行身份验证和授权。我将Angular+ASP.NET核心应用程序作为本机应用程序和Wep API应用程序添加到应用程序组,并提供了本机应用程序的重定向URI列表 当用户从应用程序注销时,他们不会重定向到登录页面。我检查了答案,但在我的例子中,指定了id\u令牌\u提示和post\u注销\u重定向\u Uri: GET https://<server-name>/adfs/ls/?wa=wsigno

我使用OpenID Connect和OAuth 2.0直接针对AD FS 4.0对用户进行身份验证和授权。我将Angular+ASP.NET核心应用程序作为本机应用程序和Wep API应用程序添加到应用程序组,并提供了本机应用程序的重定向URI列表

当用户从应用程序注销时,他们不会重定向到登录页面。我检查了答案,但在我的例子中,指定了id\u令牌\u提示和post\u注销\u重定向\u Uri:

GET https://<server-name>/adfs/ls/?wa=wsignoutcleanup1.0&id_token_hint=<current_Id_Token>&post_logout_redirect_uri=http://localhost:5000 HTTP/1.1
GEThttps:///adfs/ls/?wa=wsignoutcleanup1.0&id_token_hint=&post_logout_redirect_uri=http://localhost:5000 HTTP/1.1
http:/localhost:5000已添加到本机应用程序属性中的重定向URI列表中。在启用跟踪的adfs日志中也找不到错误或警告


在设置一些adfs属性时,我可能会错过一些东西吗?

我多年前在adfs 2.1上遇到过这个问题-我似乎记得注销后重定向uri必须与正常登录重定向uri位于同一个域上

尝试重定向回您自己的应用程序,然后进行响应。重定向到最终位置。

如前所述,您可以尝试使用ADFS支持的Open ID Connect Frontchannel注销机制

转到并通过验证是否存在以下条目来检查是否支持前端注销机制:

end_session_endpoint: "https://<server-name>/adfs/oauth2/logout",
...
frontchannel_logout_supported: true,
frontchannel_logout_session_supported: true,
结束会话\u端点:”https:///adfs/oauth2/logout",
...
frontchannel\支持注销\正确,
frontchannel_注销_会话_支持:true,
然后,通过执行以下操作,将注销uri添加到adfs中的服务器/本机应用程序:

 Set-AdfsServerApplication -TargetIdentifier <id> -LogoutUri http://localhost:5000/logout
Set AdfsServerApplication-TargetIdentifier-LogoutUrihttp://localhost:5000/logout
最后,您可以通过调用以下命令注销:

https://<server-name>/adfs/oauth2/logout?id_token_hint=XXXXX&post_logout_redirect_uri=http://localhost:5080
https:///adfs/oauth2/logout?id_token_hint=XXXXX&post_logout_redirect_uri=http://localhost:5080