azure - 为什么 Azure AD B2C 使用代码而不是 id_token 重定向?
问题描述
我正在尝试设置 AD B2C,并且正在关注我在网上找到的各种教程。我正在测试用户流。我可以成功登录,但是当我被重定向到 时https://jwt.ms
,它什么也没显示:
但是,我注意到我的 URL 与教程中显示的不同。它有一个code
而不是id_token
:
https://jwt.ms/?code=eyJraW...
我一直在试图找出导致 B2C 使用代码而不是 ID 令牌重定向的原因,但没有成功。谁能告诉我为什么会发生这种情况?
更新
好的,我现在知道是什么原因造成的,但我真的不明白我的设置与我在教程中看到的不同。我发现如果我在我的应用注册中启用隐式授权,如下所示:
然后一切都按预期工作。请注意,我必须同时启用.
我还注意到,当我测试用户流时,这些隐式授权的状态决定了它是否具有response_type=code
授权response_type=id_token
URL:
response_type
除了更改隐式授权的状态外,似乎没有办法从测试用户流 UI 中设置期望值。也许这是自制作教程以来 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 值,然后在浏览器中访问即可。
推荐阅读
- python - Pyinstaller 无法访问数据文件夹
- spring-boot - ignore_row_on_dupkey_index 不适用于 Spring Boot
- apache-flink - JSON 到 Avro 解码 - AvroTypeException:未找到预期的字段名称
- python - 如何修改字典中的值?
- wordpress - 如果帖子类型名称为“媒体”,则 WordPress 古腾堡编辑器不适用于自定义帖子类型
- google-apps-script - 显示包含来自另一个单元格的值的消息的自定义函数 Google 表格
- javascript - Javascript从对应的键列表中获取对象值
- javascript - daterangepicker.js 选择当前日期
- matlab - 如何在 Matlab 中使用 randsample 而不会耗尽内存?
- mongodb - Mongodb Aggregrate -unwind 然后分组(查找唯一计数)