【发布时间】:2021-10-14 07:18:32
【问题描述】:
我有一个在某些先决条件下工作的编排步骤,即使满足其中一个先决条件,编排步骤也会被跳过,但我希望它以另一种方式工作。
如果不满足任何前提条件,我希望执行该编排步骤。
以下是我的编排步骤,如果未选中记住我复选框 (kmsiValue),那么我想运行编排步骤,而不管其他先决条件,但我无法实现。
<OrchestrationStep Order="7" Type="ClaimsExchange">
<Preconditions>
<Precondition Type="ClaimsExist" ExecuteActionsIf="true">
<Value>isActiveMFASession</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
<Precondition Type="ClaimEquals" ExecuteActionsIf="true">
<Value>kmsiValue</Value>
<Value>True</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
<Precondition Type="ClaimEquals" ExecuteActionsIf="true">
<Value>isLastMFATimeGreaterThanWindow</Value>
<Value>False</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
</Preconditions>
<ClaimsExchanges>
<ClaimsExchange Id="PhoneFactor-Verify-MFATimeWindow" TechnicalProfileReferenceId="PhoneFactor-InputOrVerify" />
</ClaimsExchanges>
</OrchestrationStep>
更新:
对不起,我现在有点困惑,我已经有一个记住我的 TP,复选框选择时值会相应变化
<ClaimsProvider>
<DisplayName>Local Account</DisplayName>
<TechnicalProfiles>
<TechnicalProfile Id="SelfAsserted-LocalAccountSignin-Email">
<Metadata>
<Item Key="setting.enableRememberMe">True</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="kmsiValue" DefaultValue="{Context:KMSI}" AlwaysUseDefaultValue="true"/>
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="kmsiValue" DefaultValue="{Context:KMSI}" AlwaysUseDefaultValue="true" />
</OutputClaims>
</TechnicalProfile>
</TechnicalProfiles>
</ClaimsProvider>
我的问题是我现在如何拆分编排步骤以使其正常工作?
【问题讨论】:
标签: azure-ad-b2c azure-ad-b2c-custom-policy