Microsoft MVC 5身份验证无法正常工作

时间:2015-10-28 11:36:08

标签: c# asp.net-mvc authentication oauth-2.0 asp.net-authentication

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

我已将主机文件设置为将127.0.0.1路由到www.mysite.com。

我已经在Windows Live上为应用程序配置了重定向网址,以转到www.mysite.com/signin-microsoft

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

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

Auth在Startup.Auth中设置 如

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

        };
options.Scope.Add(scope);

        app.UseMicrosoftAccountAuthentication(options);

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

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

我无法解决我所缺少的问题。

非常感谢任何帮助。

谢谢

1 个答案:

答案 0 :(得分:1)

您可以通过在项目的web.config中打开OWIN中间件的跟踪来获得有关错误的线索:

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

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