繁体   English   中英

为什么 Azure AD B2C 使用代码而不是 id_token 重定向?

[英]Why does Azure AD B2C redirect with a code instead of id_token?

我正在尝试设置 AD B2C,并且正在关注我在网上找到的各种教程。 我正在测试用户流。 我可以成功登录,但是当我被重定向到https://jwt.ms时,它什么也没显示:

在此处输入图像描述

但是,我注意到我的 URL 与教程中显示的不同。 它有一个code而不是id_token

https://jwt.ms/?code=eyJraW...

我一直在试图找出导致 B2C 使用代码而不是 ID 令牌重定向的原因,但没有成功。 谁能告诉我为什么会发生这种情况?

更新

好的,我现在知道是什么原因造成的,但我真的不明白我的设置与我在教程中看到的不同。 我发现如果我在我的应用注册中启用隐式授权,如下所示:

赠款

然后一切都按预期工作。 请注意,我必须同时启用 .

我还注意到,当我测试用户流时,这些隐式授权的状态决定了它在授权 URL 中是否有response_type=coderesponse_type=id_token id_token:

在此处输入图像描述

除了更改隐式授权的状态外,似乎没有办法从测试用户流 UI 中设置所需的response_type 也许这是自制作教程以来 Azure 门户网站中的行为变化......?

如您所见,如果我们在 Azure AD 应用程序中设置隐式授权,用户流端点将生成response_type=id_token而不是response_type=code 它是 Azure AD B2C 用户流程的设计。

如果我们不这样做, response_type=code表示它是授权码流,这就是你得到这个的原因: https://jwt.ms/?code=eyJraW...

我不确定您为什么要以其他方式更改 response_type。 这应该是最简单的。 但如果要手动更改,只需点击复制按钮,更改 response_type 值,然后在浏览器中访问即可。

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM