Oauth 2.0 Azure B2C登录-颁发者URL无法正确解析web访问

Oauth 2.0 Azure B2C登录-颁发者URL无法正确解析web访问,oauth-2.0,azure-active-directory,postman,azure-ad-b2c,postman-native-app,Oauth 2.0,Azure Active Directory,Postman,Azure Ad B2c,Postman Native App,我正在使用Azure B2C对本机Xamarin表单应用程序进行身份验证。使用正确的b2clogin.com域返回访问令牌,这一切都可以完美地工作 当我尝试使用Postman返回令牌时,如果我使用b2clogin-only-login.microsoftonline.com,它将不起作用 在对此困惑了一段时间后,我查看了Fiddler,注意到URL在提交时发生了更改 只有当我从一个域切换到另一个域时才会发生这种情况 这将引导我找到发卡机构URL,该URL是在您在AAD中为应用程序服务启用B2C身

我正在使用Azure B2C对本机Xamarin表单应用程序进行身份验证。使用正确的b2clogin.com域返回访问令牌,这一切都可以完美地工作

当我尝试使用Postman返回令牌时,如果我使用b2clogin-only-login.microsoftonline.com,它将不起作用

在对此困惑了一段时间后,我查看了Fiddler,注意到URL在提交时发生了更改

只有当我从一个域切换到另一个域时才会发生这种情况

这将引导我找到发卡机构URL,该URL是在您在AAD中为应用程序服务启用B2C身份验证时设置的,它是为b2clogin而不是为live.microsoftonline.com配置的

另一个问题是microsoftonline域返回一个令牌,但它不会向我的受保护应用程序进行身份验证

我正在使用Postman返回与我的应用程序一起使用的令牌。它没有,如上所述

当我在Fiddler中查看时,我作为权威传递的URL在Postman中看起来像这样

{租户域名}/oauth2/v2.0/authorize?p=B2C_1_SiUpIn

已转换为此

{租户域名}/oauth2/v2.0/authorize

正如您所看到的,它采用了策略并将其放在URL的其他位置

这只发生在b2clogin上,而不是microsoftonline


如上所述,所发布的URL完全是错误的,因此《邮递员》中的效果是不断地重新加载页面,而该页面永远不会到达登录位置。

我发现使用Fiddler可以更深入地挖掘错误消息

问题是,当使用login.microsoftonline.com时,您将获得一个不适用于b2clogin目录的令牌

当您切换到B2C登录目录时,您必须确保仔细检查回调URL


这就是我的问题所在——我必须将我注册的本地应用程序中的回复URL替换为通常的邮递员或microsoft oauth URL(通常位于那里)

Hi@Journeyman1234。策略名称是在租户名称之前还是之后插入的?在我配置的auth URL字段中,它位于租户名称之后。但当我用小提琴手检查它时,情况正好相反。之前:之后:@ChrisPadgett-刚刚注意到这与邮递员无关。如果我进入xxxx.azurewebsites.net域,我的应用程序服务所在的域,该站点试图将我重定向到同一断开的链接,因此从未完成加载-到底是什么原因造成的?@ChrisPadgett-进一步调查表明,当您配置应用程序服务和身份验证时,该问题与颁发者Url字段有关。为了让Xamarin应用程序正常工作,我做了本链接中描述的事情,但这似乎就是为什么web访问被破坏的原因?