如何从B2C UserJourney获取Azure AD组?

时间:2018-04-25 20:09:57

标签: azure-ad-b2c

我尝试在登录我的B2C应用程序时检索AAD用户的群组成员资格。

我做了什么:

  1. 按照https://docs.microsoft.com/en-gb/azure/active-directory-b2c/active-directory-b2c-get-started-custom#add-the-application-ids-to-your-custom-policy
  2. 中列出的步骤进行操作
  3. 根据说明在我的Azure AD租户中创建了一个应用程序:https://docs.microsoft.com/en-gb/azure/active-directory-b2c/active-directory-b2c-setup-aad-custom
  4. 修改了应用程序的清单,以支持此处讨论的组 - https://www.red-gate.com/simple-talk/cloud/security-and-compliance/azure-active-directory-part-4-group-claims/
  5. 在我的B2C租户中创建了一个属性extension_groups来存储组(我不知道是否有必要这样做?)
  6. 向TrustFrameworkBase.xml添加了声明类型以支持群组:

    <ClaimType Id="extension_groups"> <DisplayName>Groups</DisplayName> <DataType>string</DataType> <DefaultPartnerClaimTypes> <Protocol Name="OAuth2" PartnerClaimType="groups" /> <Protocol Name="OpenIdConnect" PartnerClaimType="groups" /> <Protocol Name="SAML2" PartnerClaimType="http://schemas.microsoft.com/ws/2008/06/identity/claims/groups" /> </DefaultPartnerClaimTypes> <UserHelpText /> </ClaimType>

  7. 修改了TrustFrameworkExtensions.xml中的声明提供程序,以包含组声明:<OutputClaim ClaimTypeReferenceId="extension_groups" PartnerClaimType="groups"/>

  8. 修改了我的仅登录政策的信赖部分中的输出声明:

    <OutputClaim ClaimTypeReferenceId="extension_groups"/>

  9. 当我使用Azure AD帐户登录时,出现以下错误:

      

    抱歉,我们在登录时遇到问题。我们会跟踪这些错误   自动,但如果问题仍然存在,请随时与我们联系。在   同时,请再试一次。相关ID:   e782c5c8-0e08-481b-b2c1-458b3855af7b时间戳:2018-04-25 20:07:27Z   AADB2C:发生了异常。

    我甚至不知道从哪里开始 - 基于上述配置片段暴露堆栈跟踪或提示的任何提示都会很棒。