/oauth/token. El uso del endpoint /oauth/ro quedó obsoleto el 08 de julio de 2017. Anteriormente, el endpoint /oauth/ro se usaba para intercambiar un código de un solo uso (OTP) recibido por el usuario final por correo electrónico o SMS por un y un . Auth0 ha implementado una nueva API que reemplaza a /oauth/ro para este caso de uso y te recomendamos migrar al nuevo endpoint.
Características afectadas
/oauth/ro directamente sin usar bibliotecas ni SDKs de Auth0. Las bibliotecas de Auth0, como Lock o Auth0.js, se han actualizado para dejar de usar /oauth/ro internamente. Si usas la biblioteca lock-, ahora puedes usar el modo sin contraseña en Lock.
Cuando vence el token de acceso basado en
/oauth/ro de un usuario, Auth0 lo obliga a volver a autenticarse (es necesario forzar el cierre de sesión), ya que el Token de actualización de /oauth/ro no puede usarse para llamar a /oauth/token y obtener un nuevo token de acceso. Todos los usuarios que tengan una sesión iniciada actualmente deberán volver a iniciar sesión durante una migración de /oauth/ro a /oauth/token.Actions
Cambios en las solicitudes
/oauth/ro era similar a esta:
- El endpoint para realizar el intercambio de tokens ahora es
/oauth/token. - El grant type propio de Auth0 se usa para autenticar usuarios de una conexión (o realm) específica.
- Auth0 admite los alcances estándar de OIDC, junto con los alcances que haya definido en su API personalizada.
- Un scope que no encaje en una de estas categorías, como
favorite_color, ya no es un scope válido. - Se elimina el parámetro
device. - El parámetro
audiencees opcional.
/oauth/token:
- Aquí, el grant type se especifica como
password-realm, en lugar delpasswordestándar. - Los parámetros
client_id,usernameypasswordno cambian. - Se incluye
realmporque estamos usando el grant type Password Realm y sustituye al parámetroconnectionde las llamadas anteriores. - El parámetro
scopees básicamente el mismo, pero no admite valores que no sean OIDC. - Se puede agregar el parámetro
audience, que indica la API a la que estará destinado el token.
Cambios en las respuestas
/oauth/ro tenían un formato similar a este:
- El token de acceso devuelto es válido para llamar al endpoint
/userinfo(siempre que la API especificada por el parámetroaudienceuse RS256 como ) y, opcionalmente, a la API personalizada, si se especificó una. - El token de ID se firmará obligatoriamente con RS256 si lo solicita un .
- Se devolverá un solo si se concedió el scope
offline_accessy la API tiene activada la opción Permitir acceso sin conexión.
/oauth/token:
Verificar la migración
- Una vez que hayas migrado tu base de código y estés seguro de que tus aplicaciones no están haciendo llamadas al endpoint, ve a Dashboard > Configuración del Tenant > Avanzado.
- Desplázate hasta Endpoint
/oauth/rolegado en Migraciones y desactívalo. Al desactivar este interruptor, se deshabilita el endpoint obsoleto para tu inquilino, lo que impide que se siga usando.