Azure B2C声明交换能否用于访问令牌?自定义声明添加疑问
如何将自定义声明放入Azure AD B2C的Access令牌?
兄弟,我来给你捋清楚这个问题——你现在遇到的情况很常见:用自定义REST API加的声明默认只会进ID令牌,不会自动同步到Access令牌里,所以得调整策略配置才能把自定义声明塞进Access令牌里。
下面是具体的调整要点:
- 首先,打开你的Azure AD B2C自定义策略,找到
<RelyingParty>节点下负责令牌输出的<TechnicalProfile>。你需要把自定义声明添加到它的<OutputClaims>列表中,并且要通过设置IncludeInAccessToken="true"来明确指定该声明要包含在Access令牌里(如果没写这个属性,默认可能只输出到ID令牌)。 - 其次,要确认你的自定义声明已经在策略的
<ClaimsSchema>里完成了定义,而且REST API返回的声明名称和策略里的声明名称完全匹配,这样策略才能正确识别并传递这个声明。 - 另外,别忘了Access令牌的受众是你的目标服务(API)的应用ID,所以要确保你的策略是针对该API的权限范围配置的,只有这样,自定义声明才会被包含在发给这个API的Access令牌里。
其实你参考的那份文档里也隐含了这个逻辑:当你把自定义REST API作为编排步骤加入流程后,必须在依赖方的技术配置文件里明确指定哪些声明要输出到Access令牌,而不是只默认输出到ID令牌。
内容的提问来源于stack exchange,提问作者MikeDouglasDev
相关产品推荐
相关产品推荐

