c# - Azure Active Directory 导致注销时出现 CORS 错误

标签 c# asp.net-mvc azure azure-active-directory

我有一个 ASP MVC Web 应用程序,它使用 Azure AD 作为用户登录和注销的一种形式。该应用程序已在 Azure AD 中注册,并且登录工作正常。

值得注意的是,我使用 OWIN 界面进行登录和注销。

问题是,当我按下应用程序上的注销按钮时,会执行以下代码:

HttpContext.GetOwinContext().Authentication.SignOut(
            OpenIdConnectAuthenticationDefaults.AuthenticationType, 
            CookieAuthenticationDefaults.AuthenticationType);

此处用户已成功注销,但网页未重定向到登录页面。相反,当从 https://login.windows.net/.../oauth2/logout?post_logout_redirect_uri= 重定向时,它会导致两个 Microsoft 站点之间出现 CORS 错误。 ...到https://login.microsoftonline.com/.../oauth2/logout?post_logout_redirect_uri= ...

CORS 错误为:从 {url 1} 到 {url 2} 的重定向已被 CORS 策略阻止:请求的资源上不存在“Access-Control-Allow-Origin” header 。来源'http://localhost:1089 ' 因此不允许访问。

我有点不知所措,这是否是我的应用程序或 azure 设置中的问题,因为我无法控制此重定向。

最佳答案

Here是一个可以很好地与 Azure AD 集成的代码示例。要解决该问题,您可以共享您正在开发的代码。

分享前请删除敏感信息,您可以在GitHub上公开代码示例。

更新

enter image description here

关于c# - Azure Active Directory 导致注销时出现 CORS 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41724852/

相关文章:

c# - 将正则表达式转换为 SQL

c# - 用于在另一个字符串中查找部分字符串的正则表达式

c# - 使用 Html.BeginForm 呈现表单时不显示 TextBox

azure - 我可以从 Azure 容器注册表中清除所有存储库,而不需要逐一输入所有存储库吗

c# - 如何实现 EMS 竞争消费者和分销商

c# - 将 ASP.NET 网站连接到 SQL 数据库

asp.net-mvc - 根据 ASP.NET MVC 4 中的资源文件更改语言

asp.net - 设置ASP.NET MVC开发环境

javascript - 从共享点页面 javascript 调用 Office 365 经过身份验证的 Web api

azure - 独立的暂存和生产管道