0

我正在 Azure AD B2C 中创建自定义策略,让受邀用户通过另一个 Azure AD(甚至 ADFS)登录。我遇到的问题是在他们登录时创建了一个新用户(而不是受邀用户)。我发现我一直在尝试使用alternativesecurityid 或objectid 在我的AAD 中查找现有用户,但两者都不匹配。所以我认为我需要通过电子邮件找到现有用户,而不是任何 ID。这也不起作用,因为我可以看到受邀用户的电子邮件位于 otherMails 和邮件属性中(通过 GraphAPI),显然我无法通过这些字段查询 B2C。

<TechnicalProfile Id="AAD-ReadUserByEmail">
  <Metadata>
    <Item Key="Operation">Read</Item>
    <Item Key="RaiseErrorIfClaimsPrincipalDoesNotExist">false</Item>
  </Metadata>
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="emailFromSocialAccount" PartnerClaimType="mail" Required="true" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="objectId" />
    <OutputClaim ClaimTypeReferenceId="displayName" />
    <OutputClaim ClaimTypeReferenceId="givenName" />
    <OutputClaim ClaimTypeReferenceId="surname" />
    <OutputClaim ClaimTypeReferenceId="userPrincipalName" />
  </OutputClaims>
  <IncludeTechnicalProfile ReferenceId="AAD-Common" />
</TechnicalProfile>

<InputClaim ClaimTypeReferenceId="emailFromSocialAccount" PartnerClaimType="signInNames.emailAddress" Required="true" />通过验证,但该字段没有任何数据。

如何找到受邀用户?

4

0 回答 0