Transformations de revendications booléennes
Cet article fournit des exemples pour l’utilisation de transformations de revendications booléennes du schéma Identity Experience Framework dans Azure Active Directory B2C (Azure AD B2C). Pour plus d’informations, consultez Transformations de revendications.
AndClaims
Calcule une opération And
de deux inputClaims booléennes et définit la revendication de sortie avec le résultat de l’opération. Découvrez la démonstration en direct de cette transformation de revendication.
Élément | TransformationClaimType | Type de données | Notes |
---|---|---|---|
InputClaim | inputClaim1 | boolean | Première revendication à évaluer. |
InputClaim | inputClaim2 | boolean | Deuxième revendication à évaluer. |
OutputClaim | outputClaim | boolean | La revendication qui sera produite après l’appel de cette transformation de revendication (true ou false). |
Exemple d’AndClaims
La transformation de revendication suivante montre comment effectuer une opération And
sur deux revendications booléennes : isEmailNotExist
et isSocialAccount
. La revendication de sortie presentEmailSelfAsserted
prend la valeur true
si la valeur de ces deux revendications d’entrée est true
.
<ClaimsTransformation Id="CheckWhetherEmailBePresented" TransformationMethod="AndClaims">
<InputClaims>
<InputClaim ClaimTypeReferenceId="isEmailNotExist" TransformationClaimType="inputClaim1" />
<InputClaim ClaimTypeReferenceId="isSocialAccount" TransformationClaimType="inputClaim2" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="presentEmailSelfAsserted" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
- Revendications d’entrée :
- inputClaim1 : true
- inputClaim2 : false
- Revendications de sortie :
- outputClaim : false
AssertBooleanClaimIsEqualToValue
Vérifie que les valeurs booléennes de deux revendications sont égales et lève une exception si elles ne le sont pas. Découvrez la démonstration en direct de cette transformation de revendication.
Élément | TransformationClaimType | Type de données | Notes |
---|---|---|---|
inputClaim | inputClaim | boolean | Revendication à vérifier. |
InputParameter | valueToCompareTo | boolean | Valeur à comparer (true ou false). |
La transformation de revendication AssertBooleanClaimIsEqualToValue est toujours exécutée à partir d’un profil technique de validation qui est appelé par un profil technique autodéclaré. Les métadonnées de profil technique autodéclaré UserMessageIfClaimsTransformationBooleanValueIsNotEqual contrôlent le message d’erreur présenté à l’utilisateur par le profil technique. Les messages d’erreur peuvent être localisés.
Exemple d’AssertBooleanClaimIsEqualToValue
La transformation de revendication suivante montre comment vérifier la valeur d’une revendication booléenne avec une valeur true
. Si la valeur de la revendication accountEnabled
est false, un message d’erreur est levé.
<ClaimsTransformation Id="AssertAccountEnabledIsTrue" TransformationMethod="AssertBooleanClaimIsEqualToValue">
<InputClaims>
<InputClaim ClaimTypeReferenceId="accountEnabled" TransformationClaimType="inputClaim" />
</InputClaims>
<InputParameters>
<InputParameter Id="valueToCompareTo" DataType="boolean" Value="true" />
</InputParameters>
</ClaimsTransformation>
- Revendications d’entrée :
- inputClaim : false
- valueToCompareTo : true
- Résultat : Erreur levée
Appel de la transformation de revendications AssertBooleanClaimIsEqualToValue
Le profil technique de validation Example-AssertBoolean
suivant appelle la transformation de revendication AssertAccountEnabledIsTrue
.
<TechnicalProfile Id="Example-AssertBoolean">
<DisplayName>Unit test</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.ClaimsTransformationProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="ComparisonResult" DefaultValue="false" />
</OutputClaims>
<OutputClaimsTransformations>
<OutputClaimsTransformation ReferenceId="AssertAccountEnabledIsTrue" />
</OutputClaimsTransformations>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>
Le profil technique autodéclaré appelle le profil technique de validation Example-AssertBoolean
.
<TechnicalProfile Id="SelfAsserted-AssertDateTimeIsGreaterThan">
<DisplayName>Example</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
<Item Key="UserMessageIfClaimsTransformationBooleanValueIsNotEqual">Custom error message if account is disabled.</Item>
</Metadata>
...
<ValidationTechnicalProfiles>
<ValidationTechnicalProfile ReferenceId="Example-AssertBoolean" />
</ValidationTechnicalProfiles>
</TechnicalProfile>
CompareBooleanClaimToValue
Vérifie que la valeur booléenne d’une revendication est égale à true
ou false
, et retourne le résultat de la compression. Découvrez la démonstration en direct de cette transformation de revendication.
Élément | TransformationClaimType | Type de données | Notes |
---|---|---|---|
InputClaim | inputClaim | boolean | Revendication à comparer. |
InputParameter | valueToCompareTo | boolean | Valeur à comparer (true ou false). |
OutputClaim | compareResult | boolean | Revendication générée une fois que cette transformation de revendications a été appelée. |
Exemple de CompareBooleanClaimToValue
La transformation de revendication suivante montre comment vérifier la valeur d’une revendication booléenne avec une valeur true
. Si la valeur de la revendication IsAgeOver21Years
est égale à true
, la transformation de revendication retourne la valeur true
, sinon false
.
<ClaimsTransformation Id="AssertAccountEnabled" TransformationMethod="CompareBooleanClaimToValue">
<InputClaims>
<InputClaim ClaimTypeReferenceId="IsAgeOver21Years" TransformationClaimType="inputClaim" />
</InputClaims>
<InputParameters>
<InputParameter Id="valueToCompareTo" DataType="boolean" Value="true" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="accountEnabled" TransformationClaimType="compareResult"/>
</OutputClaims>
</ClaimsTransformation>
- Revendications d’entrée :
- inputClaim : false
- Paramètres d’entrée :
- valueToCompareTo : true
- Revendications de sortie :
- compareResult : false
NotClaims
Calcule une opération Not
de la revendication d’entrée booléenne et définit la revendication de sortie avec le résultat de l’opération. Découvrez la démonstration en direct de cette transformation de revendication.
Élément | TransformationClaimType | Type de données | Notes |
---|---|---|---|
InputClaim | inputClaim | boolean | Revendication à traiter. |
OutputClaim | outputClaim | boolean | La revendication qui sera produite après l’appel de cette transformation de revendication (true ou false). |
Exemple de NotClaims
La transformation de revendications suivante montre comment effectuer une négation logique sur une revendication.
<ClaimsTransformation Id="CheckWhetherEmailBePresented" TransformationMethod="NotClaims">
<InputClaims>
<InputClaim ClaimTypeReferenceId="userExists" TransformationClaimType="inputClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="userExists" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
- Revendications d’entrée :
- inputClaim : false
- Revendications de sortie :
- outputClaim : true
OrClaims
Calcule Or
de deux revendications d’entrée booléennes et définit la revendication de sortie avec le résultat de l’opération. Découvrez la démonstration en direct de cette transformation de revendication.
Élément | TransformationClaimType | Type de données | Notes |
---|---|---|---|
InputClaim | inputClaim1 | boolean | Première revendication à évaluer. |
InputClaim | inputClaim2 | boolean | Deuxième revendication à évaluer. |
OutputClaim | outputClaim | boolean | La revendication qui sera produite après l’appel de cette transformation de revendication (true ou false). |
Exemple d’OrClaims
La transformation de revendication suivante montre comment effectuer une opération Or
sur deux revendications booléennes.
<ClaimsTransformation Id="CheckWhetherEmailBePresented" TransformationMethod="OrClaims">
<InputClaims>
<InputClaim ClaimTypeReferenceId="isLastTOSAcceptedNotExists" TransformationClaimType="inputClaim1" />
<InputClaim ClaimTypeReferenceId="isLastTOSAcceptedGreaterThanNow" TransformationClaimType="inputClaim2" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="presentTOSSelfAsserted" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
- Revendications d’entrée :
- inputClaim1 : true
- inputClaim2 : false
- Revendications de sortie :
- outputClaim : true
Étapes suivantes
- Vous trouverez d’autres exemples de transformation de revendications dans le dépôt GitHub de la communauté Azure AD B2C