1

我在使用普通 MVC 5 站点的开箱即用 Microsoft 身份验证方面遇到了一些问题。

我已经设置了我的主机文件以将 127.0.0.1 路由到 www.mysite.com。

我已将 Windows Live 上的应用程序的重定向 URL 配置为转到 www.mysite.com/signin-microsoft

在 Visual Studio 2015 中,我将网站的属性设置为使用本地 IIS 和 www.mysite.com

当我尝试通过 Microsoft 进行身份验证时,它会显示实时登录屏幕,当我输入我的详细信息时,它会重定向回帐户控制器端点 ExternalLoginCallback(string returnUrl) 但是 - returnUrl 为 null 并且它尝试获取 loginInfo 的下一行总是返回无效的。

Auth 在 Startup.Auth 中设置为

var options = new MicrosoftAccountAuthenticationOptions
            {
                ClientId = "<redacted>",
                ClientSecret = "<redacted>",
                CallbackPath = new PathString("/signin-microsoft")

        };
options.Scope.Add(scope);

        app.UseMicrosoftAccountAuthentication(options);

我在提琴手中点击了这个网址 - “Account/ExternalLoginCallback?error=access_denied”

我已经按照这篇文章中的答案 - ASP.NET MVC Microsoft Live Account Authentication on Localhost

我无法弄清楚我错过了什么。

任何帮助将不胜感激。

谢谢

4

1 回答 1

1

您可以通过在项目的 web.config 中打开对 OWIN 中间件的跟踪来了解问题所在:

<configuration>
  <system.diagnostics>
    <switches>
      <add name="Microsoft.Owin" value="Verbose" />
    </switches>
  </system.diagnostics>
</configuration>

默认情况下,输出将显示在调试控制台窗口中,但您可以通过添加跟踪侦听器来更改它。有关 OWIN 日志记录的更多信息,请参阅这篇文章

于 2015-10-28T15:12:06.830 回答