Administración del acceso de usuario en Azure Active Directory B2CManage user access in Azure Active Directory B2C

Este artículo trata sobre cómo administrar el acceso de usuarios a las aplicaciones mediante Azure Active Directory B2C (Azure AD B2C).This article discusses how to manage user access to your applications by using Azure Active Directory B2C (Azure AD B2C). La administración de acceso de la aplicación incluye:Access management in your application includes:

  • Identificación de los menores y control del acceso de usuarios a la aplicación.Identifying minors and controlling user access to your application.
  • Solicitud del consentimiento parental para que los menores puedan usar las aplicaciones.Requiring parental consent for minors to use your applications.
  • Recopilación de datos de nacimiento y país o región de los usuarios.Gathering birth and country/region data from users.
  • Captura de un contrato de términos de uso y puerta de acceso.Capturing a terms-of-use agreement and gating access.

Nota

En Azure Active Directory B2C, las directivas personalizadas se han diseñado principalmente para abordar escenarios complejos.In Azure Active Directory B2C, custom policies are designed primarily to address complex scenarios. Para la mayoría de los escenarios, se recomienda usar flujos de usuario integrados.For most scenarios, we recommend that you use built-in user flows.

Control del acceso de menoresControl minor access

Las aplicaciones y organizaciones pueden decidir impedir a los menores el uso de aplicaciones y servicios que no están dirigidos a este tipo de audiencia.Applications and organizations may decide to block minors from using applications and services that are not targeted to this audience. Alternativamente, las aplicaciones y organizaciones pueden decidir aceptar a los menores y, posteriormente administrar el consentimiento de los padres, y proporcionar experiencias permitidas para los menores según lo dictado por las reglas de negocio y lo permitido por la ley.Alternatively, applications and organizations may decide to accept minors and subsequently manage the parental consent, and deliver permissible experiences for minors as dictated by business rules and allowed by regulation.

Si se identifica a un usuario como un menor, puede establecer el flujo de usuario de Azure AD B2C en una de estas tres opciones:If a user is identified as a minor, you can set the user flow in Azure AD B2C to one of three options:

  • Enviar un elemento id_token de JWT firmado a la aplicación: el usuario se registra en el directorio y se devuelve un token a la aplicación.Send a signed JWT id_token back to the application: The user is registered in the directory, and a token is returned to the application. A continuación, la aplicación empieza a aplicar reglas de negocio.The application then proceeds by applying business rules. Por ejemplo, la aplicación puede continuar con un proceso de consentimiento de los padres.For example, the application may proceed with a parental consent process. Para usar este método, elija recibir las notificaciones ageGroup y consentProvidedForMinor de la aplicación.To use this method, choose to receive the ageGroup and consentProvidedForMinor claims from the application.

  • Enviar un token JSON sin firmar a la aplicación: Azure AD B2C notifica a la aplicación que el usuario es un menor y proporciona el estado del consentimiento parental del usuario.Send an unsigned JSON token to the application: Azure AD B2C notifies the application that the user is a minor and provides the status of the user's parental consent. A continuación, la aplicación empieza a aplicar reglas de negocio.The application then proceeds by applying business rules. Un token JSON no completa una autenticación correcta con la aplicación.A JSON token does not complete a successful authentication with the application. La aplicación debe procesar al usuario no autenticado según las notificaciones incluidas en el token JSON, entre las cuales puede que se incluyan name, email, ageGroup y consentProvidedForMinor.The application must process the unauthenticated user according to the claims included in the JSON token, which may include name, email, ageGroup, and consentProvidedForMinor.

  • Bloquear al usuario: si un usuario es menor de edad y no se ha proporcionado el consentimiento parental, Azure AD B2C puede notificar al usuario que está bloqueado.Block the user: If a user is a minor, and parental consent has not been provided, Azure AD B2C can notify the user that they are blocked. No se emite ningún token, el acceso está bloqueado y no se crea la cuenta de usuario durante una operación de registro.No token is issued, access is blocked, and the user account is not created during a registration journey. Para implementar esta notificación, puede proporcionar una página de contenido HTML/CSS adecuada para informar al usuario y ofrecer las opciones apropiadas.To implement this notification, you provide a suitable HTML/CSS content page to inform the user and present appropriate options. La aplicación no necesita ninguna otra acción adicional para los nuevos registros.No further action is needed by the application for new registrations.

En función de la normativa de la aplicación, puede que un usuario verificado como adulto deba proporcional consentimiento parental.Depending on application regulation, parental consent might need to be granted by a user who is verified as an adult. Azure AD B2C no proporciona ninguna experiencia para verificar la edad de un individuo que, a continuación, permita que un adulto verificado pueda otorgar el consentimiento paterno a un menor.Azure AD B2C does not provide an experience to verify an individual's age and then allow a verified adult to grant parental consent to a minor. Esta experiencia la debe proporcionar la aplicación u otro proveedor de servicios.This experience must be provided by the application or another service provider.

El siguiente es un ejemplo de flujo de usuario para recopilar el consentimiento de los padres:The following is an example of a user flow for gathering parental consent:

  1. Una operación de Microsoft Graph API identifica al usuario como un menor y devuelve los datos del usuario a la aplicación como un token JSON sin firmar.A Microsoft Graph API operation identifies the user as a minor and returns the user data to the application in the form of an unsigned JSON token.

  2. La aplicación procesa el token JSON y muestra una pantalla al menor que le notifica que necesita consentimiento parental y le solicita el consentimiento de uno de los padres en línea.The application processes the JSON token and shows a screen to the minor, notifying them that parental consent is required and requesting the consent of a parent online.

  3. Azure AD B2C muestra un recorrido de inicio de sesión para que el usuario inicie sesión normalmente y emite un token a la aplicación que se establece para incluir legalAgeGroupClassification = "minorWithParentalConsent" .Azure AD B2C shows a sign-in journey that the user can sign in to normally and issues a token to the application that is set to include legalAgeGroupClassification = "minorWithParentalConsent". La aplicación recopila la dirección de correo electrónico del padre o la madre y verifica que sea una persona adulta.The application collects the email address of the parent and verifies that the parent is an adult. Para ello, usa una fuente de confianza, como un carnet de identidad, una verificación de la licencia o una prueba de la tarjeta de crédito.To do so, it uses a trusted source, such as a national ID office, license verification, or credit card proof. Si la verificación se realiza correctamente, la aplicación solicita al menor que inicie sesión mediante el uso del flujo de usuario de Azure AD B2C.If verification is successful, the application prompts the minor to sign in by using the Azure AD B2C user flow. Si se ha rechazado el consentimiento (por ejemplo, si legalAgeGroupClassification = "minorWithoutParentalConsent" ), Azure AD B2C devuelve un token JSON (no un inicio de sesión) a la aplicación para que vuelva a iniciar el proceso de consentimiento.If consent is denied (for example, if legalAgeGroupClassification = "minorWithoutParentalConsent"), Azure AD B2C returns a JSON token (not a login) to the application to restart the consent process. También se puede personalizar el flujo de usuario, de modo que un menor o un adulto pueda recuperar el acceso a la cuenta del menor enviando un código de registro a la dirección de correo electrónico del menor o a la dirección de correo electrónico registrada del adulto.It is optionally possible to customize the user flow so that a minor or an adult can regain access to a minor's account by sending a registration code to the minor's email address or the adult's email address on record.

  4. La aplicación ofrece una opción al menor para revocar el consentimiento.The application offers an option to the minor to revoke consent.

  5. Si el menor o el adulto revoca el consentimiento, se puede usar Microsoft Graph API para cambiar consentProvidedForMinor a denegado.When either the minor or the adult revokes consent, the Microsoft Graph API can be used to change consentProvidedForMinor to denied. Alternativamente, la aplicación puede elegir eliminar a un menor cuyo consentimiento se haya revocado.Alternatively, the application may choose to delete a minor whose consent has been revoked. También es posible personalizar el flujo de usuario de modo que el menor autenticado (o el padre que usa la cuenta del menor) pueda revocar el consentimiento.It is optionally possible to customize the user flow so that the authenticated minor (or parent that is using the minor's account) can revoke consent. Azure AD B2C registra consentProvidedForMinor como denegado.Azure AD B2C records consentProvidedForMinor as denied.

Para más información sobre legalAgeGroupClassification, consentProvidedForMinor y ageGroup, consulte el artículo User resource type (Tipo de recurso del usuario).For more information about legalAgeGroupClassification, consentProvidedForMinor, and ageGroup, see User resource type. Para más información acerca de los atributos personalizados, consulte Uso de atributos personalizados para recopilar información sobre los consumidores.For more information about custom attributes, see Use custom attributes to collect information about your consumers. Al dirigirse a atributos extendidos mediante Microsoft Graph API, se debe usar la versión extendida del atributo, como extension_18b70cf9bb834edd8f38521c2583cd86_dateOfBirth: 2011-01-01T00:00:00Z.When you address extended attributes by using the Microsoft Graph API, you must use the long version of the attribute, such as extension_18b70cf9bb834edd8f38521c2583cd86_dateOfBirth: 2011-01-01T00:00:00Z.

Recopilación de datos sobre la fecha y el país o región de nacimientoGather date of birth and country/region data

Algunas aplicaciones pueden depender de Azure AD B2C para recopilar la información de fecha de nacimiento (DOB) y el país o región de todos los usuarios durante el registro.Applications may rely on Azure AD B2C to gather the date of birth (DOB) and country/region information from all users during registration. Si esta información no existe, la aplicación puede solicitarla al usuario en la siguiente operación de autenticación (inicio de sesión).If this information does not already exist, the application can request it from the user during the next authentication (sign-in) journey. Los usuarios no pueden continuar sin proporcionar información sobre su fecha de nacimiento y país o región.Users cannot proceed without providing their DOB and country/region information. Azure AD B2C usa la información para determinar si la persona se considera un menor según la normativa reglamentaria de ese país o región.Azure AD B2C uses the information to determine whether the individual is considered a minor according to the regulatory standards of that country/region.

Un flujo de usuario personalizado puede recopilar la información sobre la fecha de nacimiento y el país o región y usar la transformación de notificaciones de Azure AD B2C para determinar ageGroup y conservar el resultado (o conservar directamente la información sobre la fecha de nacimiento y el país o región) en el directorio.A customized user flow can gather DOB and country/region information and use Azure AD B2C claims transformation to determine the ageGroup and persist the result (or persist the DOB and country/region information directly) in the directory.

Los pasos siguientes muestran la lógica que se usa para calcular ageGroup a partir de la fecha de nacimiento del usuario:The following steps show the logic that is used to calculate ageGroup from the user's date of birth:

  1. Intente buscar el país o la región por su código en la lista.Try to find the country/region by the country/region code in the list. Si no se encuentra el país o la región, revierta a la opción Predeterminado.If the country/region is not found, fall back to Default.

  2. Si el nodo MinorConsent existe en el elemento de país o región, haga lo siguiente:If the MinorConsent node is present in the country/region element:

    a.a. Calcule la fecha en la que el usuario debe haber nacido para que se considere un adulto.Calculate the date that the user must have been born on to be considered an adult. Por ejemplo, si la fecha actual es 14 de marzo de 2015, y MinorConsent es 18, la fecha de nacimiento no debe ser posterior al 14 de marzo de 2000.For example, if the current date is March 14, 2015, and MinorConsent is 18, the birth date must be no later than March 14, 2000.

    b.b. Compare la fecha de nacimiento mínima con la fecha de nacimiento real.Compare the minimum birth date with the actual birth date. Si la fecha de nacimiento mínima es anterior a la fecha de nacimiento del usuario, el cálculo devuelve Menor como grupo de edad.If the minimum birth date is before the user's birth date, the calculation returns Minor as the age group calculation.

  3. Si el nodo MinorNoConsentRequired se encuentra en el elemento de país o región, repita los pasos 2a y 2b utilizando el valor de MinorNoConsentRequired.If the MinorNoConsentRequired node is present in the country/region element, repeat steps 2a and 2b using the value from MinorNoConsentRequired. La salida de 2b devuelve MinorNoConsentRequired si la fecha de nacimiento mínima es anterior a la fecha de nacimiento del usuario.The output of 2b returns MinorNoConsentRequired if the minimum birth date is before the user's birth date.

  4. Si ninguno de los cálculos devuelve true, el cálculo devuelve Adult.If neither calculation returns true, the calculation returns Adult.

Si una aplicación ha recopilado de forma confiable la información sobre la fecha de nacimiento y el país o región con otros métodos, puede usar Graph API para actualizar el registro del usuario con esta información.If an application has reliably gathered DOB or country/region data by other methods, the application may use the Graph API to update the user record with this information. Por ejemplo:For example:

  • Si se sabe que un usuario es un adulto, actualice el atributo del directorio ageGroup con un valor de Adulto.If a user is known to be an adult, update the directory attribute ageGroup with a value of Adult.
  • Si se sabe que un usuario es menor, actualice el atributo del directorio ageGroup con un valor de Minor y establezca consentProvidedForMinor, según corresponda.If a user is known to be a minor, update the directory attribute ageGroup with a value of Minor and set consentProvidedForMinor, as appropriate.

Reglas de cálculo para la edad de un menorMinor calculation rules

La restricción de acceso por edad implica dos valores de edad: la edad en que alguien ya se no considera un menor y la edad en la que un menor debe tener consentimiento parental.Age gating involves two age values: the age that someone is no longer considered a minor, and the age at which a minor must have parental consent. En la tabla siguiente se enumeran las reglas de edad que se usan para la definición de un menor y de un menor que requiere consentimiento.The following table lists the age rules that are used for defining a minor and a minor requiring consent.

País/regiónCountry/Region Nombre del país o regiónCountry/Region name Edad de consentimiento de menoresMinor consent age Edad del menorMinor age
Valor predeterminadoDefault NoneNone NoneNone 1818
AEAE Emiratos Árabes UnidosUnited Arab Emirates NoneNone 2121
ATAT AustriaAustria 1414 1818
BEBE BélgicaBelgium 1414 1818
BGBG BulgariaBulgaria 1616 1818
BHBH BahréinBahrain NoneNone 2121
CMCM CamerúnCameroon NoneNone 2121
CYCY ChipreCyprus 1616 1818
CZCZ República ChecaCzech Republic 1616 1818
DEDE AlemaniaGermany 1616 1818
DKDK DinamarcaDenmark 1616 1818
EEEE EstoniaEstonia 1616 1818
EGEG EgiptoEgypt NoneNone 2121
ESES EspañaSpain 1313 1818
VFFR FranciaFrance 1616 1818
GBGB Reino UnidoUnited Kingdom 1313 1818
GRGR GreciaGreece 1616 1818
HRHR CroaciaCroatia 1616 1818
HUHU HungríaHungary 1616 1818
IEIE IrlandaIreland 1313 1818
ITIT ItaliaItaly 1616 1818
KRKR Corea, República deKorea, Republic of 1414 1818
LTLT LituaniaLithuania 1616 1818
LULU LuxemburgoLuxembourg 1616 1818
LVLV LetoniaLatvia 1616 1818
MTMT MaltaMalta 1616 1818
N/DNA NamibiaNamibia NoneNone 2121
NLNL Países BajosNetherlands 1616 1818
PLPL PoloniaPoland 1313 1818
PTPT PortugalPortugal 1616 1818
RORO RumaníaRomania 1616 1818
SESE SueciaSweden 1313 1818
SGSG SingapurSingapore NoneNone 2121
SISI EsloveniaSlovenia 1616 1818
SKSK EslovaquiaSlovakia 1616 1818
TDTD ChadChad NoneNone 2121
THTH TailandiaThailand NoneNone 2020
TWTW TaiwánTaiwan NoneNone 2020
USUS Estados UnidosUnited States 1313 1818

Captura del contrato de términos de usoCapture terms of use agreement

Cuando desarrolla la aplicación, normalmente obtiene la aceptación del usuario de los términos de uso dentro de sus aplicaciones sin necesidad de participación, o con una participación mínima, del directorio del usuario.When you develop your application, you ordinarily capture users' acceptance of terms of use within their applications with no, or only minor, participation from the user directory. Sin embargo, es posible usar un flujo de usuario de Azure AD B2C para recopilar la aceptación de los términos de uso de un usuario, restringir el acceso si no se ha otorgado la aceptación y aplicar la aceptación de cambios futuros en los términos de uso, según la fecha de la última aceptación y la fecha de la última versión de los términos de uso.It is possible, however, to use an Azure AD B2C user flow to gather a user's acceptance of terms of use, restrict access if acceptance is not granted, and enforce acceptance of future changes to the terms of use, based on the date of the latest acceptance and the date of the latest version of the terms of use.

Los términos de uso también pueden incluir la opción "Consent to share data with third parties" ("Acepto compartir los datos con terceros").Terms of Use may also include "Consent to share data with third parties." Según la normativa local y las reglas de negocio, puede recopilar la aceptación de un usuario de ambas condiciones combinadas o puede permitir que el usuario acepte una condición y no la otra.Depending on local regulations and business rules, you can gather a user's acceptance of both conditions combined, or you can allow the user to accept one condition and not the other.

En los pasos siguientes se describe cómo puede administrar los términos de uso:The following steps describe how you can manage terms of use:

  1. Registre la aceptación de los términos de uso y la fecha de esta mediante Graph API y los atributos extendidos.Record the acceptance of the terms of use and the date of acceptance by using the Graph API and extended attributes. Para ello, use los flujos de usuario integrados y personalizados.You can do so by using both built-in and custom user flows. Recomendamos que cree y use los atributos extension_termsOfUseConsentDateTime y extension_termsOfUseConsentVersion.We recommend that you create and use the extension_termsOfUseConsentDateTime and extension_termsOfUseConsentVersion attributes.

  2. Cree una casilla obligatoria que tenga la etiqueta "Aceptar términos de uso" y registre el resultado durante el proceso de registro.Create a required check box labeled "Accept Terms of Use," and record the result during signup. Para ello, use los flujos de usuario integrados y personalizados.You can do so by using both built-in and custom user flows.

  3. Azure AD B2C almacena el contrato de términos de uso y la aceptación del usuario.Azure AD B2C stores the terms of use agreement and the user's acceptance. Puede usar Graph API para consultar el estado de cualquier usuario mediante la lectura del atributo de extensión que se usó para registrar la respuesta (por ejemplo, la lectura de termsOfUseTestUpdateDateTime).You can use the Graph API to query for the status of any user by reading the extension attribute that's used to record the response (for example, read termsOfUseTestUpdateDateTime). Para ello, use los flujos de usuario integrados y personalizados.You can do so by using both built-in and custom user flows.

  4. Solicite la aceptación de los términos de uso actualizados mediante la comparación de la fecha de aceptación con la fecha de la última versión de los términos de uso.Require acceptance of updated terms of use by comparing the date of acceptance to the date of the latest version of the terms of use. Puede comparar las fechas mediante un flujo de usuario personalizado.You can compare the dates only by using a custom user flow. Utilice el atributo extendido extension_termsOfUseConsentDateTime y compare el valor con la notificación de termsOfUseTextUpdateDateTime.Use the extended attribute extension_termsOfUseConsentDateTime, and compare the value to the claim of termsOfUseTextUpdateDateTime. Si la aceptación es antigua, cree una nueva aceptación. Para ello, muestre una pantalla autoafirmada.If the acceptance is old, force a new acceptance by displaying a self-asserted screen. En caso contrario, bloquee el acceso mediante la lógica de directiva.Otherwise, block access by using policy logic.

  5. Solicite la aceptación de términos de uso actualizados comparando el número de versión de la aceptación con el número de versión más reciente aceptado.Require acceptance of updated terms of use by comparing the version number of the acceptance to the most recent accepted version number. Puede comparar números de versión solo mediante un flujo de usuario personalizado.You can compare version numbers only by using a custom user flow. Utilice el atributo extendido extension_termsOfUseConsentDateTime y compare el valor de la notificación de extension_termsOfUseConsentVersion.Use the extended attribute extension_termsOfUseConsentDateTime, and compare the value to the claim of extension_termsOfUseConsentVersion. Si la aceptación es antigua, cree una nueva aceptación. Para ello, muestre una pantalla autoafirmada.If the acceptance is old, force a new acceptance by displaying a self-asserted screen. En caso contrario, bloquee el acceso mediante la lógica de directiva.Otherwise, block access by using policy logic.

Puede obtener la aceptación de los términos de uso en los siguientes escenarios:You can capture terms of use acceptance under the following scenarios:

  • Se está registrando un nuevo usuario.A new user is signing up. Se muestran los términos de uso y se almacena el resultado de aceptación.The terms of use are displayed, and the acceptance result is stored.
  • Inicia sesión un usuario que ya ha aceptado anteriormente los términos de uso más recientes o activos.A user is signing in who has previously accepted the latest or active terms of use. No se muestran los términos de uso.The terms of use are not displayed.
  • Inicia sesión un usuario, que aún no ha aceptado los términos de uso más recientes o activos.A user is signing in who has not already accepted the latest or active terms of use. Se muestran los términos de uso y se almacena el resultado de aceptación.The terms of use are displayed, and the acceptance result is stored.
  • Inicia sesión un usuario, que ya ha aceptado una versión antigua de los términos de uso, que ahora se actualizaron a la versión más reciente.A user is signing in who has already accepted an older version of the terms of use, which are now updated to the latest version. Se muestran los términos de uso y se almacena el resultado de aceptación.The terms of use are displayed, and the acceptance result is stored.

En la imagen siguiente se muestra el flujo de usuario recomendado:The following image shows the recommended user flow:

Diagrama de flujo que muestra el flujo de usuario de aceptación recomendado

El siguiente es un ejemplo de consentimiento de términos de uso basado en la fecha de una notificación.The following is an example of a date-based terms of use consent in a claim. Si la notificación extension_termsOfUseConsentDateTime es anterior a 2025-01-15T00:00:00, fuerce una nueva aceptación comprobando la notificación booleana termsOfUseConsentRequired y mostrando una pantalla autoafirmada.If the extension_termsOfUseConsentDateTime claim is older than 2025-01-15T00:00:00, force a new acceptance by checking the termsOfUseConsentRequired Boolean claim, and displaying a self-asserted screen.

<ClaimsTransformations>
  <ClaimsTransformation Id="GetNewUserAgreeToTermsOfUseConsentDateTime" TransformationMethod="GetCurrentDateTime">
    <OutputClaims>
      <OutputClaim ClaimTypeReferenceId="extension_termsOfUseConsentDateTime" TransformationClaimType="currentDateTime" />
    </OutputClaims>
  </ClaimsTransformation>
  <ClaimsTransformation Id="IsTermsOfUseConsentRequired" TransformationMethod="IsTermsOfUseConsentRequired">
    <InputClaims>
      <InputClaim ClaimTypeReferenceId="extension_termsOfUseConsentDateTime" TransformationClaimType="termsOfUseConsentDateTime" />
    </InputClaims>
    <InputParameters>
      <InputParameter Id="termsOfUseTextUpdateDateTime" DataType="dateTime" Value="2025-01-15T00:00:00" />
    </InputParameters>
    <OutputClaims>
      <OutputClaim ClaimTypeReferenceId="termsOfUseConsentRequired" TransformationClaimType="result" />
    </OutputClaims>
  </ClaimsTransformation>
</ClaimsTransformations>

El siguiente es un ejemplo de consentimiento de términos de uso basado en la versión de una notificación.The following is an example of a version-based terms of use consent in a claim. Si la notificación extension_termsOfUseConsentVersion no es igual a V1, fuerce una nueva aceptación comprobando la notificación booleana termsOfUseConsentRequired y mostrando una pantalla autoafirmada.If the extension_termsOfUseConsentVersion claim is not equal to V1, force a new acceptance by checking the termsOfUseConsentRequired Boolean claim, and displaying a self-asserted screen.

<ClaimsTransformations>
  <ClaimsTransformation Id="GetEmptyTermsOfUseConsentVersionForNewUser" TransformationMethod="CreateStringClaim">
    <InputParameters>
      <InputParameter Id="value" DataType="string" Value=""/>
    </InputParameters>
    <OutputClaims>
      <OutputClaim ClaimTypeReferenceId="extension_termsOfUseConsentVersion" TransformationClaimType="createdClaim" />
    </OutputClaims>
  </ClaimsTransformation>
  <ClaimsTransformation Id="GetNewUserAgreeToTermsOfUseConsentVersion" TransformationMethod="CreateStringClaim">
    <InputParameters>
      <InputParameter Id="value" DataType="string" Value="V1"/>
    </InputParameters>
    <OutputClaims>
      <OutputClaim ClaimTypeReferenceId="extension_termsOfUseConsentVersion" TransformationClaimType="createdClaim" />
    </OutputClaims>
  </ClaimsTransformation>
  <ClaimsTransformation Id="IsTermsOfUseConsentRequiredForVersion" TransformationMethod="CompareClaimToValue">
    <InputClaims>
      <InputClaim ClaimTypeReferenceId="extension_termsOfUseConsentVersion" TransformationClaimType="inputClaim1" />
    </InputClaims>
    <InputParameters>
      <InputParameter Id="compareTo" DataType="string" Value="V1" />
      <InputParameter Id="operator" DataType="string" Value="not equal" />
      <InputParameter Id="ignoreCase" DataType="string" Value="true" />
    </InputParameters>
    <OutputClaims>
      <OutputClaim ClaimTypeReferenceId="termsOfUseConsentRequired" TransformationClaimType="outputClaim" />
    </OutputClaims>
  </ClaimsTransformation>
</ClaimsTransformations>

Pasos siguientesNext steps