Sdílet prostřednictvím


Celočíselné transformace deklarací identity

Důležité

Od 1. května 2025 už nebude Azure AD B2C k dispozici k nákupu pro nové zákazníky. Další informace najdete v našich nejčastějších dotazech.

Tento článek obsahuje příklady použití celočísných transformací deklarací identity schématu Identity Experience Framework v Azure Active Directory B2C (Azure AD B2C). Další informace naleznete v tématu ClaimsTransformations.

Číslo úpravy

Zvýší nebo zmenší číselnou deklaraci a vrátí novou deklaraci identity. Podívejte se na živou ukázku této transformace deklarací identity.

prvek TransformaceClaimType Datový typ Poznámky
Vstupní deklarace Požadavek vstupu int (integer) Typ deklarace identity, který obsahuje číslo ke zvýšení nebo snížení. inputClaim Pokud je hodnota deklarace identity null, použije se výchozí hodnota 0.
VstupníParametr Operátor řetězec Možné hodnoty: INCREMENT (výchozí) nebo DECREMENT.
Výstupní deklarace Deklarace výstupu int (integer) Typ deklarace identity vytvořený po vyvolání této transformace deklarací identity.

Příklad argumentu AdjustNumber

Pomocí této transformace deklarací identity můžete zvýšit nebo snížit hodnotu číselné deklarace identity. Následující transformace deklarací identity zvyšuje číselnou hodnotu deklarace identity.

<ClaimsTransformation Id="UpdateSteps" TransformationMethod="AdjustNumber">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="steps" TransformationClaimType="inputClaim" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="Operator" DataType="string" Value="INCREMENT" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="steps" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Vstupní deklarace identity:
    • inputClaim: 1
  • Vstupní parametry:
    • Operátor: INCREMENT
  • Výstupní deklarace identity:
    • outputClaim: 2

Příklad AdjustNumber s hodnotou null

Pokud je vstupní deklarace identity null, výstupní deklarace identity bude jedna.

  • Vstupní deklarace identity:
    • inputClaim: NULL
  • Vstupní parametry:
    • Operátor: INCREMENT
  • Výstupní deklarace identity:
    • outputClaim: 1

Číslo výrazu

Určuje, zda je číselná deklarace větší, menší, rovna nebo nerovná se číslu. Podívejte se na živou ukázku této transformace deklarací identity.

prvek TransformaceClaimType Datový typ Poznámky
Vstupní deklarace Požadavek vstupu int (integer) První číselná deklarace identity, která porovná, jestli je větší, menší, rovna nebo nerovná se druhému číslu. Hodnota Null vyvolá výjimku.
VstupníParametr Porovnávat_hodnotu int (integer) Druhé číslo, které porovná, jestli je větší, menší, rovno nebo nerovná se prvnímu číslu.
VstupníParametr Operátor řetězec Možné hodnoty: LessThan, GreaterThan, GreaterThanOrEqual, LessThanOrEqual, Equal, NotEqual.
VstupníParametr Chyba při házení Boolean Určuje, zda má tento kontrolní výraz vyvolat chybu, pokud je truevýsledek porovnání . Možné hodnoty: true (výchozí) nebo false.
 
Při nastavení na true (režim kontrolního výrazu) a výsledek porovnání je truevyvolán výjimka. Při nastavení na false hodnotu (režim vyhodnocení) je výsledkem nový logický typ deklarace identity s hodnotou truenebo false.
Výstupní deklarace Deklarace výstupu Boolean Pokud ThrowError je tato výstupní deklarace identity nastavena na falsehodnotu , nebo truefalse podle výsledku porovnání.

Režim kontrolního výrazu

Pokud throwError je true vstupní parametr (výchozí), transformace deklarací identity AssertNumber se vždy provádí z ověřovacího technického profilu , který je volán vlastním technickým profilem.

Metadata technického profilu asserted AssertNumberError řídí chybovou zprávu, že technický profil prezentuje uživateli. Chybové zprávy lze lokalizovat.

<TechnicalProfile Id="SelfAsserted-LocalAccountSignin-Email">
  <Metadata>
    <Item Key="AssertNumberError">You've reached the maximum logon attempts</Item>
  </Metadata>
  ...
</TechnicalProfile>

Další informace o volání transformace deklarací v režimu kontrolního výrazu naleznete v tématu AssertStringClaimsAreEqual, AssertBooleanClaimIsEqualToValue a AssertDateTimeIsGreaterThan transformace deklarací.

Příklad AssertNumber

Následující příklad tvrdí, že počet pokusů je více než pět. Transformace deklarací identity vyvolá chybu podle výsledku porovnání.

<ClaimsTransformation Id="isOverLimit" TransformationMethod="AssertNumber">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="attempts" TransformationClaimType="inputClaim" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="Operator" DataType="string" Value="GreaterThan" />
    <InputParameter Id="CompareToValue" DataType="int" Value="5" />
    <InputParameter Id="throwError" DataType="boolean" Value="true" />
  </InputParameters>
</ClaimsTransformation>
  • Vstupní deklarace identity:
    • inputClaim: 10
  • Vstupní parametry:
    • Operátor: GreaterThan
    • Hodnota porovnání: 5
    • throwError: true
  • Výsledek: Došlo k chybě

Příklad režimu vyhodnocení AssertNumber

Následující příklad vyhodnotí, jestli je počet pokusů více než pět. Výstupní deklarace identity obsahuje logickou hodnotu podle výsledku porovnání. Transformace deklarací identity nevyvolá chybu.

<ClaimsTransformation Id="isOverLimit" TransformationMethod="AssertNumber">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="attempts" TransformationClaimType="inputClaim" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="Operator" DataType="string" Value="GreaterThan" />
    <InputParameter Id="CompareToValue" DataType="int" Value="5" />
    <InputParameter Id="throwError" DataType="boolean" Value="false" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="attemptsCountExceeded" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Vstupní deklarace identity:
    • inputClaim: 10
  • Vstupní parametry:
    • Operátor: GreaterThan
    • Hodnota porovnání: 5
    • throwError: false
  • Výstupní deklarace identity:
    • outputClaim: true

Atribut ConvertNumberToStringClaim

Převede dlouhý datový typ na datový typ řetězce. Podívejte se na živou ukázku této transformace deklarací identity.

prvek TransformaceClaimType Datový typ Poznámky
Vstupní deklarace Požadavek vstupu dlouhý Typ deklarace identity, který se má převést na řetězec.
Výstupní deklarace Deklarace výstupu řetězec Typ deklarace identity vytvořený po vyvolání této transformace deklarací identity.

Příklad convertNumberToStringClaim

V tomto příkladu se numericUserId deklarace identity s typem hodnoty long převede na UserId deklaraci identity s typem hodnoty řetězce.

<ClaimsTransformation Id="CreateUserId" TransformationMethod="ConvertNumberToStringClaim">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="numericUserId" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="UserId" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Vstupní deklarace identity:
    • inputClaim: 12334 (dlouhý)
  • Výstupní deklarace identity:
    • outputClaim: "12334" (řetězec)

Další kroky

  • Další ukázky transformace deklarací identity najdete v úložišti GitHub komunity Azure AD B2C.