Transformace celočíselných deklarací identity
Tento článek obsahuje příklady použití celočísých transformací deklarací identity schématu architektury prostředí identit v Azure Active Directory B2C (Azure AD B2C). Další informace najdete v tématu ClaimsTransformations.
Upravit číslo
Zvýší nebo sníží číselnou deklaraci identity a vrátí novou deklaraci identity. Podívejte se na živou ukázku této transformace deklarací identity.
Prvek | TransformationClaimType | Typ dat | Poznámky |
---|---|---|---|
InputClaim | inputClaim | int | Typ deklarace identity, který obsahuje číslo, které chcete zvýšit nebo snížit.
inputClaim Pokud je hodnota deklarace identity null, použije se výchozí hodnota 0. |
InputParameter | Operátor | řetězec | Možné hodnoty: INCREMENT (výchozí) nebo DECREMENT . |
OutputClaim | outputClaim | int | Byl vyvolán typ deklarace identity, který se vytvoří po transformaci deklarací identity. |
Příklad příkazu AdjustNumber
Pomocí této transformace deklarace identity můžete zvýšit nebo snížit číselnou hodnotu deklarace identity. Následující transformace deklarace identity zvýší čí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 příkazu AdjustNumber s hodnotou null
Pokud má vstupní deklarace identity hodnotu null, výstupní deklarace identity bude jedna.
- Vstupní deklarace identity:
- inputClaim: NULL
- Vstupní parametry:
- Operátor: INCREMENT
- Výstupní deklarace identity:
- outputClaim: 1
AssertNumber
Určuje, zda je číselná deklarace identity větší, menší, rovna nebo nerovná se číslu. Podívejte se na živou ukázku této transformace deklarací identity.
Prvek | TransformationClaimType | Typ dat | Poznámky |
---|---|---|---|
InputClaim | inputClaim | int | První číselná deklarace identity k porovnání, jestli je větší, menší, rovná se nebo nerovná druhému číslu. Hodnota Null vyvolá výjimku. |
InputParameter | Porovnat Na Hodnotu | int | Druhé číslo pro porovnání, zda je větší, menší, rovno nebo nerovná se prvnímu číslu. |
InputParameter | Operátor | řetězec | Možné hodnoty: LessThan , GreaterThan , , LessThanOrEqual GreaterThanOrEqual , , Equal , . NotEqual |
InputParameter | throwError | boolean | Určuje, jestli má tento kontrolní výraz vyvolat chybu, pokud je true vý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 true , vyvolá se výjimka. Při nastavení na false (režim vyhodnocení) je výsledkem nový logický typ deklarace identity s hodnotou true , nebo false . |
OutputClaim | outputClaim | boolean | Pokud ThrowError je nastavená hodnota false , tato výstupní deklarace identity obsahuje true , nebo false 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 technického profilu ověření , který je volán vlastním technickým profilem.
Metadata vlastního technického profilu AssertNumberError řídí chybovou zprávu, kterou technický profil zobrazí 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í identity v režimu kontrolního výrazu najdete v tématech AssertStringClaimsAreEqual, AssertBooleanClaimIsEqualToValue a AssertDateTimeIsGreaterThan transformace deklarací identity.
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
- CompareToValue: 5
- throwError: true
- Výsledek: Vyvolání chyby
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
- CompareToValue: 5
- throwError: false
- Výstupní deklarace identity:
- outputClaim: true
ConvertNumberToStringClaim
Převede datový typ typu long na datový typ řetězec. Podívejte se na živou ukázku této transformace deklarací identity.
Prvek | TransformationClaimType | Typ dat | Poznámky |
---|---|---|---|
InputClaim | inputClaim | long | Typ deklarace identity, který se má převést na řetězec. |
OutputClaim | outputClaim | řetězec | Byl vyvolán typ deklarace identity, který se vytvoří po transformaci deklarací identity. |
Příklad příkazu ConvertNumberToStringClaim
V tomto příkladu numericUserId
se deklarace identity s typem hodnoty long převede na UserId
deklaraci identity s typem hodnoty string.
<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 githubu komunity Azure AD B2C.