El contenido de estos documentos no pretende ofrecer asesoramiento legal ni debe considerarse un sustituto de la asistencia legal. La responsabilidad final de comprender y cumplir el RGPD recae en ti, aunque Auth0 te ayudará a cumplir los requisitos del RGPD siempre que sea posible.
Descripción general
- una propiedad
consentGiven, con valores true/false, que indica si el usuario ha dado su consentimiento (true) o no (false) - una propiedad
consentTimestamp, que contiene la marca de tiempo Unix de cuándo el usuario dio su consentimiento
- una que muestra enlaces a otras páginas donde se pueden consultar los Términos y Condiciones y/o la información de la política de privacidad
- una que añade campos personalizados al widget de registro y funciona con conexiones de base de datos
- una que redirige a otra página donde el usuario puede otorgar su consentimiento y funciona con conexiones sociales
Configura la aplicación
-
Ve a Auth0 Dashboard > Applications > Applications y crea una nueva aplicación. Elige
Single Web Page Applicationscomo tipo. -
Ve a Settings y configura Allowed Callback URLs como
http://localhost:3000. Este campo contiene el conjunto de URL a las que Auth0 puede redirigir a los usuarios después de autenticarse. Nuestra aplicación de ejemplo se ejecutará enhttp://localhost:3000, por eso configuramos este valor. - Copia los valores de ID de cliente y dominio. Los necesitarás en breve.
- Ve a Auth0 Dashboard > Authentication > Database y crea una nueva conexión. Haz clic en Create DB Connection, asigna un nombre a la nueva conexión y haz clic en Save. También puedes habilitar una conexión social en Auth0 Dashboard > Authentication > Social (vamos a habilitar el inicio de sesión con Google para este tutorial).
- Ve a la pestaña Applications de la conexión y asegúrate de que tu aplicación recién creada esté habilitada.
- Descarga el ejemplo de SPA de JavaScript.
Opción 1: Mostrar el enlace de Términos y condiciones
- Ve a Auth0 Dashboard > Branding > Universal Login.
- Selecciona la vista Login y habilita el interruptor Customize Login Page.
-
Busca el menú desplegable Default Templates y selecciona
Lock. El bloque de código se completará automáticamente. -
Para agregar un campo para el metadato
consentGiven, usa la opciónmustAcceptTerms. Para incluir enlaces a tus páginas de Términos y condiciones y/o política de privacidad, usa la opciónlanguageDictionary. Para obtener más información, consulta Lock Configuration Options. En el siguiente ejemplo, se muestra el textoI agree to the terms of service and privacy policy(incluidos enlaces a ambas páginas) junto a la casilla:Para ver cómo quedará, selecciona la vista Preview y, cuando se cargue Lock, selecciona Sign Up. -
Esta casilla obliga a los usuarios a aceptar los términos antes de poder registrarse, pero no establece ningún metadato. Para guardar la selección del usuario en la propiedad de metadatos
consentGiven, crea una nueva Action. Introduce un nombre descriptivo para tu Action (por ejemplo,Set consent flag upon signup), selecciona el triggerLogin / Post Loginporque vas a agregar la Action al flujo Login y, a continuación, selecciona Create. -
La siguiente pantalla es el editor de código de Actions. Copia en él el siguiente código JavaScript y, a continuación, selecciona Save Draft para guardar los cambios:
Este código establece el metadato
consentGivenentruesi todavía no está establecido (lo que significa que es el primer inicio de sesión después del registro). - En la barra lateral del editor de código de Actions, selecciona Test (icono de reproducción) y, a continuación, selecciona Run para probar tu código.
- Cuando estés listo para implementar la Action, selecciona Deploy.
Opción 2: Agregue campos personalizados para conexiones de base de datos
- Vaya a Auth0 Dashboard > Branding > Universal Login.
- Seleccione la vista Login y active el interruptor Customize Login Page.
-
Busque el menú desplegable Default Templates y seleccione
Lock. El bloque de código se completará automáticamente. -
Para agregar un campo para los metadatos
consentGiven, use la opciónadditionalSignUpFields. Para obtener más información, consulte Lock Configuration Options. En el siguiente ejemplo, el tipo se establece encheckbox(para mostrar una casilla), la etiqueta enI consent to data processingy el valor predeterminado enchecked. - Para ver cómo se mostrará, seleccione la vista Preview y, cuando se cargue Lock, seleccione Sign Up.
consentGiven y establezca el metadato adicional consentTimestamp con la marca de tiempo actual.
Opción 3: Redirigir a otra página
-
Cree una nueva Action. Introduzca un Nombre descriptivo para su Action (por ejemplo,
Redirect to consent form), seleccione el triggerLogin / Post Loginporque va a agregar la Action al flujo de Login y, a continuación, seleccione Create. -
Localice el editor de código de Actions y seleccione el icono de Secrets (llave) en la barra lateral. Agregue la URL del formulario de consentimiento como un Secret creando un par clave/valor:
- Key:
CONSENT_FORM_URL - Value:
your-consent-form-url.com(Asegúrese de proporcionar la URL de acceso público donde se encuentra su formulario de consentimiento).
- Key:
-
Copie el siguiente código JavaScript en el editor de código de Actions y seleccione Save Draft para guardar los cambios:
- En la barra lateral del editor de código de Actions, seleccione Test (icono de reproducción) y, a continuación, seleccione Run para probar su código.
- Cuando esté listo para que la Action entre en producción, seleccione Deploy.
Pruebe la configuración
-
Vaya a la carpeta donde descargó la aplicación y ejecútela.
-
Vaya a
http://localhost:3000. Haga clic en Login. Cuando se muestre Lock, haga clic en Sign Up. La página de inicio de sesión estará disponible de forma predeterminada enYOUR_DOMAIN/login. Para obtener información sobre cómo usar su propio dominio, consulte Custom Domains. - Si siguió la primera opción de implementación, debería ver la casilla para aceptar los términos de servicio y la política de privacidad. Tenga en cuenta que el botón Sign up permanece deshabilitado hasta que marque la casilla. Siga los enlaces para comprobar que funcionen. Introduzca un correo electrónico y una contraseña, acepte los términos y haga clic en Sign Up. Como alternativa, si usa una conexión social, acepte los términos y elija Sign Up with Google.
-
Si siguió la segunda opción de implementación, debería ver el nuevo campo personalizado que agregamos. Introduzca un correo electrónico y una contraseña, y deje marcada la casilla
I consent to data processing. Haga clic en Sign Up. -
Si siguió la tercera opción de implementación, elija Sign Up with Google. Se le redirigirá al formulario de consentimiento. Marque la casilla I agree y haga clic en Submit.
Si no marca la casilla I agree antes de hacer clic en Submit, verá un error emergente
Unauthorized. Check the console for details.. En la consola verá este JSON:Tenga en cuenta que el usuario se crea, pero no podrá iniciar sesión. Si lo intenta, se le volverá a pedir que dé su consentimiento. - Vaya a Auth0 Dashboard > User Management > Users y busque el nuevo usuario.
-
Vaya a User Details y desplácese hacia abajo hasta la sección Metadata. En el área de texto user_metadata debería ver lo siguiente: