/passwordless/start desde aplicaciones confidenciales cuando Auth0 no puede autenticar que la llamada se realiza en nombre de la aplicación.
usa el término ‘confidential’ para referirse a las aplicaciones que pueden almacenar secretos. En Auth0, esas son las ‘Regular Web Applications’, que sirven páginas web desde una aplicación de backend. Las Single Page Applications y las Native Applications se consideran aplicaciones ‘public’ y no se ven afectadas por este cambio.
Auth0 puede autenticar las llamadas a /passwordless/start cuando incluyen un client_secret como parámetro, o cuando se realizan desde la página de Login personalizada en Classic Login y reenvían el parámetro state.
Funcionalidades afectadas
/passwordless/start directamente para iniciar la autenticación desde una aplicación web y no envía client_secret como parámetro, esta deprecación le afecta.
Si está implementando autenticación sin contraseña a través de la página de Classic Login y cambió la forma predeterminada en que se inicializan las bibliotecas de Auth0, también podría verse afectado.
Puede verificar si está afectado revisando los registros del inquilino, filtrando por “Deprecation Notice” y comprobando si hay registros que indiquen “Enforce client authentication for passwordless connections”. También puede realizar esta búsqueda directamente con la siguiente consulta: type:depnote AND description:*passwordless*. Tenga en cuenta que esta consulta específica solo funciona para inquilinos de nube pública, ya que en la nube privada no se puede buscar en los logs por el campo description.
Actions
/passwordless/start sin la autenticación de aplicación adecuada, debe:
- Seguir las instrucciones que se describen a continuación para ajustar el código y llamar correctamente a
/passwordless/start. - Revisar sus registros del inquilino para verificar que el cambio se haya realizado correctamente y que no se estén generando logs de deprecación para “Enforce client authentication for passwordless connections”.
- En la sección Migrations de Configuración avanzada del Tenant, active el interruptor Enforce client authentication for passwordless connections.
Llamadas a la API desde el backend
/passwordless/start, la llamada debe incluir el como parámetro.
Si haces una solicitud POST directamente a /passwordless/start, incluye client_secret como parte de la carga útil:
Si usa un SDK, agregue el parámetro al método que inicia el flujo sin contraseña. Esto es diferente en cada SDK, y todavía no se han actualizado todos. Si usa un SDK que no se ha actualizado, puede realizar la llamada HTTP directamente hasta que se complete esa actualización.
Auth0.js o Lock.js en la página de Classic Login
/passwordless/start, ya sea mediante Lock.js o Auth0.js.
Dado que no se puede almacenar un Secreto del cliente en una página web, la forma de autenticar la llamada es reenviar el parámetro state que se recibe en la página de Classic Login al endpoint /passwordless/start. Ese parámetro se almacena en el campo config.internalOptions de la página de login personalizada.
Las plantillas predeterminadas para personalizar la página de login lo usan de la siguiente manera al inicializar Lock.js o auth0.js:
Llame a /passwordless/start desde el cliente en una aplicación web
/passwordless/start desde una página que usa JavaScript (por ejemplo, con Auth0.js en la página) en una aplicación web tradicional, no podrá especificar un Secreto del cliente en una llamada hecha con JavaScript. Si ese es el caso de su aplicación, deberá modificarla para que /passwordless/start se invoque desde el backend de su aplicación web, en lugar de hacerlo desde el frontend.
Límites de frecuencia
/passwordless/start es que Auth0 puede confiar en los encabezados enviados con la solicitud. Si configura el encabezado auth0-forwarded-for, la dirección IP aparecerá en los registros y se usará con fines de .
Las solicitudes autenticadas a /passwordless/start se tratarán como solicitudes autenticadas normales a la API y se les aplicará el límite de frecuencia global correspondiente de Authentication API.