Compartir a través de


Transformaciones de notificaciones de enteros

Importante

A partir del 1 de mayo de 2025, Azure AD B2C ya no estará disponible para la compra por parte de nuevos clientes. Obtenga más información en nuestras preguntas más frecuentes.

En este artículo se proporcionan ejemplos para usar las transformaciones de notificaciones de enteros del esquema de Identity Experience Framework en Azure Active Directory B2C (Azure AD B2C). Para obtener más información, vea ClaimsTransformations.

AdjustNumber

Aumenta o disminuye una notificación numérica y devuelve una nueva notificación. Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim inputClaim Int El tipo de notificación, que contiene el número que se va a aumentar o disminuir. Si el valor de la inputClaim notificación es nulo, se utiliza el valor predeterminado de 0.
InputParameter Operador cuerda / cadena Valores posibles: INCREMENT (opción predeterminada) o DECREMENT.
OutputClaim (Reclamo de salida) outputClaim Int El tipo de notificación que se genera después de que se haya invocado esta transformación de notificaciones.

Ejemplo de AdjustNumber

Utilice esta transformación de notificación para aumentar o disminuir un valor de notificación numérico. La siguiente transformación de notificación aumenta un valor de notificación numérico.

<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>
  • Notificaciones de entrada:
    • inputClaim: 1
  • Parámetros de entrada:
    • Operador: INCREMENT
  • Notificaciones de salida:
    • outputClaim: 2

Ejemplo de AdjustNumber con valor nulo

Si la notificación de entrada es nula, la notificación de salida será uno.

  • Notificaciones de entrada:
    • inputClaim: NULL
  • Parámetros de entrada:
    • Operador: INCREMENT
  • Notificaciones de salida:
    • outputClaim: 1

AssertNumber

Determina si una notificación numérica es mayor, menor, igual o no igual a un número. Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim inputClaim Int La primera afirmación numérica para comparar si es mayor, menor, igual o no igual que el segundo número. Un valor nulo inicia una excepción.
InputParameter CompareToValue Int El segundo número para comparar, ya sea mayor, menor, igual o no igual que el primer número.
InputParameter Operador cuerda / cadena Valores posibles: LessThan, GreaterThan, GreaterThanOrEqual, LessThanOrEqual, Equal, NotEqual.
InputParameter throwError booleano Especifica si esta aserción debe producir un error si el resultado de la comparación es true. Valores posibles: true (opción predeterminada) o false.
 
Cuando se establece en true (Modo de aserción) y el resultado de la comparación es true, se producirá una excepción. Cuando se establece en false (Modo de evaluación), el resultado es un nuevo tipo de notificación booleana con un valor de true, o false.
OutputClaim (Reclamo de salida) outputClaim booleano Si ThrowError se establece en false, esta notificación de salida contiene true, o false según el resultado de la comparación.

Modo de aserción

Cuando throwError el parámetro de entrada es true (valor predeterminado), la transformación de notificaciones AssertNumber siempre se ejecuta desde un perfil técnico de validación al que llama un perfil técnico autoafirmado.

Los metadatos del perfil técnico autoafirmados AssertNumberError controlan el mensaje de error que el perfil técnico presenta al usuario. Los mensajes de error se pueden localizar.

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

Para obtener más información sobre cómo llamar a la transformación de notificaciones en un modo de aserción, vea las transformaciones de notificaciones AssertStringClaimsAreEqual, AssertBooleanClaimIsEqualToValue y AssertDateTimeIsGreaterThan.

Ejemplo de AssertNumber

En el ejemplo siguiente se afirma que el número de intentos es superior a cinco. La transformación de notificaciones produce un error según el resultado de la comparació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>
  • Notificaciones de entrada:
    • inputClaim: 10
  • Parámetros de entrada:
    • Operador: GreaterThan
    • CompareToValue: 5
    • throwError: verdadero
  • Resultado: aparece un error

Ejemplo del modo de evaluación AssertNumber

En el ejemplo siguiente se evalúa si el número de intentos es superior a cinco. La notificación de salida contiene un valor booleano según el resultado de la comparación. La transformación de notificaciones no producirá un error.

<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>
  • Notificaciones de entrada:
    • inputClaim: 10
  • Parámetros de entrada:
    • Operador: GreaterThan
    • CompareToValue: 5
    • throwError: falso
  • Notificaciones de salida:
    • outputClaim: true

ConvertNumberToStringClaim

Convierte un tipo de datos long en un tipo de datos de cadena. Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim inputClaim largo Tipo de notificación que se va a convertir en una cadena.
OutputClaim (Reclamo de salida) outputClaim cuerda / cadena El tipo de notificación que se genera después de que se haya invocado esta transformación de notificaciones.

Ejemplo de ConvertNumberToStringClaim

En este ejemplo, la numericUserId notificación con un tipo de valor long se convierte en una UserId notificación con un tipo de valor de string.

<ClaimsTransformation Id="CreateUserId" TransformationMethod="ConvertNumberToStringClaim">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="numericUserId" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="UserId" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Notificaciones de entrada:
    • inputClaim: 12334 (largo)
  • Notificaciones de salida:
    • outputClaim: "12334" (cadena)

Pasos siguientes