Saltar al contenido principal
Usa este endpoint de Discovery para configurar tu aplicación o API de modo que localice automáticamente el endpoint de JSON Web Key Set (JWKS) (jwks_uri), que contiene el JWKS usado para firmar todos los (JWT) emitidos por Auth0 y firmados con el algoritmo de firma RS256 . El endpoint se encuentra en: https://{yourDomain}/.well-known/openid-configuration. Al validar un JWT con un JWKS, tendrás que:
  1. Recuperar el JWKS desde el endpoint de Discovery de Auth0 y filtrar las posibles claves de firma (por ejemplo, cualquier clave sin clave pública o con una propiedad kid).
  2. Obtener la propiedad kid del encabezado del JWT decodificado.
  3. Buscar en tu JWKS filtrado la clave con la propiedad kid correspondiente.
  4. Crear un certificado usando la propiedad x5c correspondiente de tu JWKS.
  5. Usar el certificado para verificar la firma del JWT.
Para ver un ejemplo que usa JWKS para verificar la firma de un JWT, consulta Navigating RS256 and JWKS (usa Node.js) o revisa nuestros Quickstarts de backend/API. Para obtener más información sobre la estructura de un JWT, consulta estructura del JSON Web Token. Es una buena práctica asumir que podría haber varias claves de firma en tu JWKS. Esto puede parecer innecesario, ya que el endpoint JWKS de Auth0 normalmente contiene una sola clave de firma; sin embargo, pueden encontrarse varias claves en el JWKS al rotar los certificados de firma. Te recomendamos almacenar en caché tus claves de firma para mejorar el rendimiento de la aplicación y evitar alcanzar los límites de frecuencia, pero debes asegurarte de que, si falla la decodificación de un token, invalides la caché y recuperes nuevas claves de firma antes de volver a intentarlo solo una vez más.

Más información