Delen via


Booleaanse claimtransformaties

Belangrijk

Vanaf 1 mei 2025 is Azure AD B2C niet meer beschikbaar voor nieuwe klanten. Meer informatie vindt u in onze veelgestelde vragen.

Dit artikel bevat voorbeelden voor het gebruik van booleaanse claimstransformaties van het Identity Experience Framework-schema in Azure Active Directory B2C (Azure AD B2C). Zie claimtransformaties voor meer informatie.

En claims

Berekent een And bewerking van twee Booleaanse invoerclaims en stelt de uitvoerclaim in met het resultaat van de bewerking. Bekijk de livedemo van deze claimtransformatie.

Onderdeel TransformatieClaimType Gegevenssoort Opmerkingen
Invoer claimen invoerBewering1 booleaan De eerste claim die moet worden geëvalueerd.
Invoer claimen invoerClaim2 booleaan De tweede claim die moet worden geëvalueerd.
Uitvoer claimen outputClaim booleaan De claim die wordt geproduceerd nadat deze claimtransformatie is aangeroepen (waar of onwaar).

Voorbeeld van AndClaims

De volgende claimtransformatie laat zien hoe And u twee Booleaanse claims kunt claimen: isEmailNotExisten isSocialAccount. De uitvoerclaim presentEmailSelfAsserted wordt ingesteld op true als de waarden van beide invoerclaims zijn 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>
  • Invoerclaims:
    • inputClaim1: waar
    • inputClaim2: onwaar
  • Uitvoerclaims:
    • outputClaim: onwaar

AssertBooleanClaimIsEqualToValue

Controleert of booleaanse waarden van twee claims gelijk zijn en genereert een uitzondering als dat niet het is. Bekijk de livedemo van deze claimtransformatie.

Onderdeel TransformatieClaimType Gegevenssoort Opmerkingen
invoerClaim invoerClaim booleaan De claim die moet worden gecontroleerd.
Invoerparameter waardeNaarVergelijken booleaan De waarde die moet worden vergeleken (waar of onwaar).

De claimtransformatie AssertBooleanClaimIsEqualToValue wordt altijd uitgevoerd vanuit een validatie technisch profiel dat wordt aangeroepen door een zelfbeëdigd technisch profiel. De metagegevens van het technische profiel UserMessageIfClaimsTransformationBooleanValueIsNotEqual beheren het foutbericht dat het technische profiel aan de gebruiker presenteert. De foutberichten kunnen worden gelokaliseerd.

Diagram laat zien hoe u de claimtransformatie AssertStringClaimsAreEqual gebruikt.

Voorbeeld van AssertBooleanClaimIsEqualToValue

De volgende claimtransformatie laat zien hoe u de waarde van een Booleaanse claim met een true waarde controleert. Als de waarde van de accountEnabled claim onwaar is, wordt er een foutbericht gegenereerd.

<ClaimsTransformation Id="AssertAccountEnabledIsTrue" TransformationMethod="AssertBooleanClaimIsEqualToValue">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="accountEnabled" TransformationClaimType="inputClaim" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="valueToCompareTo" DataType="boolean" Value="true" />
  </InputParameters>
</ClaimsTransformation>
  • Invoerclaims:
    • inputClaim: onwaar
    • valueToCompareTo: waar
  • Resultaat: fout gegenereerd

De claimtransformatie AssertBooleanClaimIsEqualToValue aanroepen

Het volgende Example-AssertBoolean technische validatieprofiel roept de AssertAccountEnabledIsTrue claimtransformatie aan.

<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>

Het zelfbeweert technische profiel roept het technische validatieprofiel Example-AssertBoolean aan.

<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>

BooleanClaimToValue vergelijken

Hiermee wordt gecontroleerd of de Booleaanse waarde van een claim gelijk is aan true of false, en wordt het resultaat van de compressie geretourneerd. Bekijk de livedemo van deze claimtransformatie.

Onderdeel TransformatieClaimType Gegevenssoort Opmerkingen
Invoer claimen invoerClaim booleaan De claim die moet worden vergeleken.
Invoerparameter waardeNaarVergelijken booleaan De waarde die moet worden vergeleken (waar of onwaar).
Uitvoer claimen compareResult booleaan De claim die wordt geproduceerd nadat deze claimtransformatie is aangeroepen.

Voorbeeld van CompareBooleanClaimToValue

De volgende claimtransformatie laat zien hoe u de waarde van een Booleaanse claim met een true waarde controleert. Als de waarde van de IsAgeOver21Years claim gelijk is aan true, retourneert truede claimtransformatie , anders 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>
  • Invoerclaims:
    • inputClaim: onwaar
  • Invoerparameters:
    • valueToCompareTo: waar
  • Uitvoerclaims:
    • compareResultaat: onwaar

Niet-claims

Berekent een Not bewerking van de Booleaanse invoerclaim en stelt de uitvoerclaim in met het resultaat van de bewerking. Bekijk de livedemo van deze claimtransformatie.

Onderdeel TransformatieClaimType Gegevenssoort Opmerkingen
Invoer claimen invoerClaim booleaan De claim die moet worden uitgevoerd.
Uitvoer claimen outputClaim booleaan De claim die wordt geproduceerd nadat deze claimtransformatie is aangeroepen (waar of onwaar).

Voorbeeld van NotClaims

De volgende claimtransformatie laat zien hoe u logische negatie uitvoert voor een claim.

<ClaimsTransformation Id="CheckWhetherEmailBePresented" TransformationMethod="NotClaims">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="userExists" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="userExists" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Invoerclaims:
    • inputClaim: onwaar
  • Uitvoerclaims:
    • outputClaim: waar

Of Claims

Berekent een Or van twee Booleaanse claims en stelt de uitvoerclaim in met het resultaat van de bewerking. Bekijk de livedemo van deze claimtransformatie.

Onderdeel TransformatieClaimType Gegevenssoort Opmerkingen
Invoer claimen invoerBewering1 booleaan De eerste claim die moet worden geëvalueerd.
Invoer claimen invoerClaim2 booleaan De tweede claim die moet worden geëvalueerd.
Uitvoer claimen outputClaim booleaan De claim die wordt geproduceerd nadat deze claimtransformatie is aangeroepen (waar of onwaar).

Voorbeeld van OrClaims

De volgende claimtransformatie laat zien hoe Or u twee Booleaanse claims kunt claimen.

<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>
  • Invoerclaims:
    • inputClaim1: waar
    • inputClaim2: onwaar
  • Uitvoerclaims:
    • outputClaim: waar

Volgende stappen