我正在尝试在我的 MVC 5 Web 应用程序上使用 OAuth2,但我在使用 Microsoft 的 OAuth2 时遇到了问题。当我使用 Microsoft 登录时,它返回 error=access_denied。以下是我的配置:
设置公钥、私钥和密码http://apps.dev.microsoft.com/。 (您必须创建密钥对和密码)
将这些密钥对(即应用程序 ID 和密钥)添加到 Startup.Auth.cs
app.UseMicrosoftAccountAuthentication( new MicrosoftAccountAuthenticationOptions() { ClientId = "xxxx", ClientSecret = "xxx", Scope = { "wl.basic", "wl.emails" } });
[HttpPost] [AllowAnonymous] [ValidateAntiForgeryToken] public ActionResult ExternalLogin(string provider, string returnUrl) { if (provider.Equals("Microsoft")) returnUrl = "https://localhost:44300/signin-microsoft"; // Request a redirect to the external login provider return new ChallengeResult(provider, Url.Action("ExternalLoginCallback", "Account", new { ReturnUrl =
returnUrl })); }
我环顾四周,有人遇到了麻烦,并通过使用 https 解决了。我已经花了好几天了,但找不到问题所在。
检查您的 Client ID 和 Secret 是否已过期。