检查用户是否存在于AD B2C中(使用自定义策略),如果存在,则显示登录选项,否则,如果不存在,则显示注册表格
我尝试了以下政策,但无法使其正常工作 https://github.com/azure-ad-b2c/samples/tree/master/policies/split-email-verification-and-signup
<ClaimsTransformation Id="AssertObjectIdObjectIdNotFoundAreEqual" TransformationMethod="CompareClaims">
<InputClaims>
<InputClaim ClaimTypeReferenceId="objectId" TransformationClaimType="inputClaim1" />
<InputClaim ClaimTypeReferenceId="objectIdNotFound" TransformationClaimType="inputClaim2" />
</InputClaims>
<InputParameters>
<InputParameter Id="operator" DataType="string" Value="NOT EQUAL" />
<InputParameter Id="ignoreCase" DataType="string" Value="true" />
<!-- <InputParameter Id="stringComparison" DataType="string" Value="ordinalIgnoreCase" /> -->
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="EmailExists" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
我正在尝试比较objectid,因此我可以让EmailExists声明,但它不会基于存在的objectid给出true / false
任何人都知道该怎么做,请帮助
答案 0 :(得分:0)
“已知电子邮件”步骤->逻辑应为“是否存在ObjectId”。 在业务流程步骤中,在代码验证步骤之后,使用给定的电子邮件阅读目录。在AAD技术资料中,如果找不到用户,则使用元数据配置不会引发错误。
现在您将拥有或没有一个objectId。 后续的编排步骤应使用对ObjectId使用ClaimExists逻辑的前提条件,以驱动后续的逻辑。
您甚至可以使用两个子旅程来绕开objectId是否存在。