问题描述
我正在尝试配置 Azure B2C 登录,旨在检查用户的现有 IDP,如果它们当前不作为本地帐户存在,则将它们添加为本地帐户。基本上我想:
- 查看B2C中的本地账号是否存在(确认匹配邮箱即可)
- 如果它们存在于本地帐户中,请继续登录
- 如果它们尚不存在,请向外部 IDP 调用 REST API,传递用户名(电子邮件)和密码并验证其身份验证。
- 如果对外部 IDP 的调用失败,请假设它们在任一系统中都不存在,并提示它们创建一个帐户(应该是本地帐户)。
- 如果呼叫外部 IDP 成功,请使用他们的电子邮件地址和他们输入的密码在 B2C 中创建一个本地帐户。
我认为这将被视为及时迁移。我看过这个 read me: https://github.com/azure-ad-b2c/user-migration/blob/master/jit-migration-v2/readme.md 并且它似乎是我需要的。然而,它似乎比我需要的更多,而且我在其他细节中迷失了方向。我真的只想停止迁移的登录。该示例还包括注册和密码重置流程。这篇文章似乎也很接近:Continue Azure B2C user journey on authentication failure 但它太稀疏了,我不知道它的解决方案有多完整。
所以我试图弄清楚逻辑的一部分需要什么符号。 jit-migration-v2 中的示例代码包含 5 个 XML 文件。都是需要的吗?或者,更好的是,需要示例中的哪些文件?
似乎有很多活动部分,我只想将其减少到最低限度,以便我能够完全了解正在发生的事情以及原因。
解决方法
这五个文件是标准的入门包。
总是有四个流程:
- 密码重置
- 个人资料编辑
- 注册/登录 (SUSI)
加:
- 基础
- 扩展
您不需要重置和编辑。您不需要上传它们。
您可以通过元数据标志将 SUSI 更改为仅执行 SU 或 SI。
SUSI 文件只是 RP,基本上定义了 JWT 中返回的声明。
它在基本文件中调用用户旅程“SignUpOrSignIn”,因此请按照此操作,您将看到流程如何进行。