Condividi tramite


Trasformazioni delle attestazioni booleane

Importante

A partire dal 1° maggio 2025, Azure AD B2C non sarà più disponibile per l'acquisto per i nuovi clienti. Altre informazioni sono disponibili nelle domande frequenti.

Questo articolo fornisce esempi per l'uso delle trasformazioni di attestazioni booleane dello schema di Identity Experience Framework in Azure Active Directory B2C (Azure AD B2C). Per altre informazioni, vedere Trasformazioni delle attestazioni.

EReclami

Calcola un'operazione And di due attestazioni di input booleane e imposta l'attestazione di output con il risultato dell'operazione. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim inputClaim1 booleano Prima attestazione da valutare.
InputClaim inputClaim2 booleano Seconda attestazione da valutare.
Attestazione di produzione Richiesta di uscita booleano Attestazione che verrà generata dopo che questa trasformazione delle attestazioni è stata richiamata (true o false).

Esempio di AndClaims

La trasformazione delle attestazioni seguente illustra come due And attestazioni booleane: isEmailNotExiste isSocialAccount. L'attestazione presentEmailSelfAsserted di output è impostata true su se i valori di entrambe le attestazioni di input sono 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>
  • Attestazioni di input:
    • inputClaim1: true
    • inputClaim2: false
  • Attestazioni di output:
    • outputClaim: false

AssertBooleanClaimIsEqualToValue

Verifica che i valori booleani di due attestazioni siano uguali e generi un'eccezione se non lo sono. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
inputClaim inputClaim booleano Attestazione da controllare.
Parametro di Input valoreAConfrontaA booleano Valore da confrontare (true o false).

La trasformazione delle attestazioni AssertBooleanClaimIsEqualToValue viene sempre eseguita da un profilo tecnico di convalida chiamato da un profilo tecnico autocertificato. I metadati del profilo tecnico autocertificato UserMessageIfClaimsTransformationBooleanValueIsNotEqual controllano il messaggio di errore che il profilo tecnico presenta all'utente. I messaggi di errore possono essere localizzati.

Diagramma che mostra come usare la trasformazione delle attestazioni AssertStringClaimsAreEqual.

Esempio di AssertBooleanClaimIsEqualToValue

La trasformazione delle attestazioni seguente illustra come controllare il valore di un'attestazione booleana con un true valore. Se il valore dell'attestazione accountEnabled è false, viene generato un messaggio di errore.

<ClaimsTransformation Id="AssertAccountEnabledIsTrue" TransformationMethod="AssertBooleanClaimIsEqualToValue">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="accountEnabled" TransformationClaimType="inputClaim" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="valueToCompareTo" DataType="boolean" Value="true" />
  </InputParameters>
</ClaimsTransformation>
  • Attestazioni di input:
    • inputClaim: false
    • valueToCompareTo: true
  • Risultato: errore generato

Chiamata della trasformazione delle attestazioni AssertBooleanClaimIsEqualToValue

Il profilo tecnico di convalida seguente Example-AssertBoolean chiama la AssertAccountEnabledIsTrue trasformazione delle attestazioni.

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

Il profilo tecnico autocertificato chiama il profilo tecnico di convalida 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>

ConfrontaBooleanClaimToValue

Verifica che il valore booleano di un'attestazione sia uguale a true o falsee restituisca il risultato della compressione. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim inputClaim booleano Attestazione da confrontare.
Parametro di Input valoreAConfrontaA booleano Valore da confrontare (true o false).
Attestazione di produzione confrontaRisultato booleano Attestazione generata dopo che è stata richiamata la trasformazione delle attestazioni.

Esempio di CompareBooleanClaimToValue

La trasformazione delle attestazioni seguente illustra come controllare il valore di un'attestazione booleana con un true valore. Se il valore dell'attestazione IsAgeOver21Years è uguale a true, la trasformazione delle attestazioni restituisce true, in caso contrario 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>
  • Attestazioni di input:
    • inputClaim: false
  • Parametri di input:
    • valueToCompareTo: true
  • Attestazioni di output:
    • compareResult: false

NotClaims

Calcola un'operazione Not dell'attestazione di input booleana e imposta l'attestazione di output con il risultato dell'operazione. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim inputClaim booleano Attestazione da gestire.
Attestazione di produzione Richiesta di uscita booleano Attestazione generata dopo che questa trasformazione delle attestazioni è stata richiamata (true o false).

Esempio di NotClaims

La trasformazione delle attestazioni seguente illustra come eseguire la negazione logica in un'attestazione.

<ClaimsTransformation Id="CheckWhetherEmailBePresented" TransformationMethod="NotClaims">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="userExists" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="userExists" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Attestazioni di input:
    • inputClaim: false
  • Attestazioni di output:
    • outputClaim: true

Attestazioni OrClaims

Calcola una Or di due attestazioni booleane e imposta l'attestazione di output con il risultato dell'operazione. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim inputClaim1 booleano Prima attestazione da valutare.
InputClaim inputClaim2 booleano Seconda attestazione da valutare.
Attestazione di produzione Richiesta di uscita booleano Attestazione che verrà generata dopo che questa trasformazione delle attestazioni è stata richiamata (true o false).

Esempio di OrClaims

La trasformazione delle attestazioni seguente illustra come due Or attestazioni booleane.

<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>
  • Attestazioni di input:
    • inputClaim1: true
    • inputClaim2: false
  • Attestazioni di output:
    • outputClaim: true

Passaggi successivi