在索赔清单中包括部门

Including department in the list of claims

我正在使用 Azure B2C 租户来存储用户。目前,我必须通过图 API 从我的 MVC 应用程序中检索用户详细信息。

然而,烦人的是,我感兴趣的大部分细节已经包含在 ClaimsPrincipal.Current 对象(在本例中为姓名、职位和电子邮件)的声明列表中,所以在大多数情况下,实际上并不需要此调用。默认情况下,部门是唯一不包括在内的部门,也是我打电话的唯一原因。此外,当 运行 站点在 Azure 上时,API 似乎会大大减慢速度。

是否有任何方法可以将部门包含在 ClaimsPrincipal.Current 对象中包含的声明列表中,以便我可以完全跳过对图 API 的调用?

如果我理解你的问题,听起来你是在问如何在 Azure AD B2C 返回的 ID 令牌中包含额外的声明。返回的声明是根据每个策略配置的。

  1. 导航到 Azure 门户上的 B2C 功能边栏选项卡。
  2. 单击所有策略。
  3. 点击您的注册政策将其打开。单击边栏选项卡顶部的“编辑”。
  4. 单击应用程序声明和 select 属性。 (例如 "Department")单击确定。
  5. 单击注册属性并确保 "Department" 是从用户收集的属性之一。
  6. 单击边栏选项卡顶部的“保存”。

单击政策上的 "Run now" 以验证消费者体验。您可以使用“http://jwt.ms”作为重定向 URI 来检查 Azure AD B2C 返回的令牌。您现在应该在消费者注册期间收集的属性列表中看到 "Department",并在发送回您的应用程序的令牌中看到它。