在电子邮件验证ADB2C自定义策略上调用Rest API

时间:2018-07-18 07:43:33

标签: azure-ad-b2c identity-experience-framework

ADB2C的电子邮件验证默认功能是验证发送到相应电子邮件的验证码。 但是,它不会检查该电子邮件是否已注册。到目前为止,我们一直通过单击“创建”来调用Rest API来执行此操作。但是现在需要在电子邮件验证步骤中检查该电子邮件是否已经注册。 有没有办法在电子邮件验证步骤中调用Rest API?如果是,那该怎么办?

1 个答案:

答案 0 :(得分:1)

您可以将电子邮件地址和用户数据的输入分隔到另一个页面,然后仅在下一页进行电子邮件验证。这样,您可以检查用户是否在上一页上,并在下一页上验证电子邮件。

您也不需要调出REST端点来检查它们是否存在。您可以使用继承AAD通用技术资料的技术资料来查看它们是否存在。

<TechnicalProfile Id="DoesUserExist">
      <Metadata>
        <Item Key="Operation">Read</Item>
        <Item Key="RaiseErrorIfClaimsPrincipalDoesNotExist">false</Item>
      </Metadata>
      <InputClaims>
        <InputClaim ClaimTypeReferenceId="email" Required="true" PartnerClaimType="signInNames" />
      </InputClaims>
      <OutputClaims>
        <OutputClaim ClaimTypeReferenceId="UserSearchOID" PartnerClaimType="objectId" />
      </OutputClaims>
      <IncludeTechnicalProfile ReferenceId="AAD-Common" />
</TechnicalProfile>