Azure AD B2C自定义策略嵌套子旅程:文档表述是否过时或不支持?
Azure AD B2C 子旅程嵌套调用的困惑解答
问题背景
微软官方文档曾明确说明,Azure AD B2C的子旅程仅能从用户旅程中调用,不应调用其他子旅程。但从开发实践来看,将可复用步骤拆分为子旅程并按需调用是更合理的架构方式,且微软自身的base-v1策略正是采用这种模式——其片段显示子旅程
TotpFactor-Verify通过InvokeSubJourney步骤调用了另一个子旅程SetTotpInitialValue,整体由可互相引用的小型可复用子旅程构成。现咨询:该文档表述是否已过时,或是仅对客户自定义策略不支持此类嵌套调用?
解答
- 文档表述存在滞后性,但未完全过时:早期Azure AD B2C自定义策略版本中,子旅程嵌套调用确实存在兼容性或稳定性隐患,官方文档的建议是为了帮助开发者规避这些风险。但随着平台功能迭代,子旅程嵌套调用已经被官方正式支持,只是文档更新节奏跟不上功能升级速度。
- 嵌套调用全场景支持:当前版本的Azure AD B2C自定义策略,不管是官方内置的base-v1这类策略,还是客户自行编写的自定义策略,都完全支持子旅程之间的嵌套调用。微软自身的base-v1策略就是官方认可的最佳实践范例,证明这种架构方式是被允许且推荐的。
- 实操建议:只要使用base-v1及以上的策略基础版本,就可以放心采用子旅程嵌套的方式拆分可复用逻辑,以此提升策略的可维护性和复用效率。
内容的提问来源于stack exchange,提问作者NigelW61
相关产品推荐
相关产品推荐

