Azure AD B2C Microsoft帐户redirect_uri故障

时间:2018-09-19 21:55:57

标签: azure azure-ad-b2c microsoft-account

我无法在AspNet Core 2.1网站上获得Microsoft帐户身份验证(我的Google身份验证工作)。

当我从社交登录页面上单击“ Microsoft帐户”按钮时,最终我进入了“技术问题”错误页面。我的网络浏览器是Windows 10下的Google Chrome最新更新。

为了诊断正在发生的事情,我安装了LinkResearchTools链接重定向跟踪,以尝试并遵循最终使我进入该错误页面的重定向。我不确定这是调试/跟踪正在发生的事情的最佳方法,但这就是我能想到的。

点击网站标题中的“登录”链接,第一个重定向为:

  

https://ridemonitor.b2clogin.com/ridemonitor.onmicrosoft.com/b2c_1_signupin/oauth2/v2.0/authorize?client_id=035ba5c4-d1a6-41c4-9425-0985bb4aa5de&redirect_uri=https%3A%2F%2Flocalhost%3A44305%2Fsignin-oidc&response_type=id_token&scope=openid%20profile&response_mode=form_post&nonce=636729887963798999.OTllOWQ4MDEtZDc0YS00MjUxLWE4ZDAtODAwMThmYzllNmVkNjUxNWU0OTktYmMzNS00MmQwLWFiYmUtNjgwMDJhNzFjOWIy&state=CfDJ8DUZTACb0dBAqZ5KhCEik9SlgAhmUgNWHdhe3rNb-d3M1xYGQlIDMzSq5UyB1P-3d3jziI06Mj94rQcnyGpiykGdDqvy588DrhR-wi0bj2SLVyRoyTclszwbBdXKgXfukRJ0Soif1eJzWBUbZU6_osWgzmh8hgvlGIUON62n3MidLRTgJ4Ca0VN_VJe_9vpfWF6TGUBOAuODlXTZAEEDbopqSuzKXweE0nUR-jv-aAj7v3vgV0NHC6rJKvHVaRyw7oYkD1-my6-AOWq1-U5ttokJfCjMKMYDD8dr_UM3jg_P&x-client-SKU=ID_NETSTANDARD1_4&x-client-ver=5.2.0.0

那将我带到“社交登录”页面,在这里我可以选择Google(有效)或MicrosoftAccount(无效)。

下一个重定向是:

  

https://login.live.com/oauth20_authorize.srf?client_id=704398a8-908a-4512-9cc0-4453014b4714&redirect_uri=https%3a%2f%2fridemonitor.b2clogin.com%2fridemonitor.onmicrosoft.com%2foauth2%2fauthresp&response_type=code&scope=openid+profile+email&response_mode=form_post&nonce=OVJptuLcHfkYUCTk36vO6g%3d%3d&state=StateProperties%3deyJTSUQiOiJ4LW1zLWNwaW0tcmM6ZTU1MDdhMzYtMmJjYy00Y2Y4LWFlNGEtNmVjY2VkNjU0MWZkIiwiVElEIjoiNDkwNTEwYTctNDAwYy00MjI3LThlODMtNmRhOTUxZTQyMmI1In0

然后将我重定向到:

  

https://login.live.com/err.srf?lc=1033#error=invalid_request&error_description=The+provided+value+for+the+input+parameter+'redirect_uri'+是+无效+有效。+ The + expected + value + is +'https://login.live.com/oauth20_desktop.srf'+或+ a + URL + which + matches + the + redirect + URI +已为该客户+应用程序注册了此应用程序。

显示错误页面。

请注意,埋在最后一个链接中的是错误描述字段(由于某些原因,它不会显示在错误页面上)。如果我正确解释了它,则表示我与Azure门户网站,我的网站应用程序或两者中设置的redirect_uri不匹配。

但是我认为重定向设置是一致的:

因此,我显然在某处缺少某些东西。有想法吗?

2 个答案:

答案 0 :(得分:1)

the "Set up sign-up and sign-in with a Microsoft account using Azure Active Directory B2C" article所述,您必须在Microsoft身份提供程序中注册以下重定向URL:

https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp

此重定向URL从Azure AD B2C发送到Microsoft身份提供程序,以在Microsoft登录后返回到Azure AD B2C。

答案 1 :(得分:0)

我发现,如果您使用以下格式的链接并使用.NET Core模板

https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp

然后还需要如下更新appsettings.json:

“ AzureAdB2C”:{     “ Instance”:“ https://your-tenant-name.b2clogin.com/tfp/”,