Saltar al contenido principal
pueden ser un objetivo de abuso si se filtran, ya que pueden usarse para obtener nuevos . Para mitigar este riesgo, Auth0 recomienda usar la detección automática de reutilización y la . La rotación del token de actualización emite un token de actualización que caduca después de un período predefinido. Tras su expiración, el usuario recibe un nuevo token de actualización de la misma familia, o tokens de actualización que comparten un id de familia, o un nuevo par de token de acceso/token de actualización. Para obtener más información, consulte Refresh Token Rotation. Puede habilitar y configurar dos ajustes de duración del token de actualización, la expiración máxima y la expiración por inactividad, mediante el o la de Auth0. Puede usar una combinación de períodos de expiración máxima y por inactividad para lograr un equilibrio entre la seguridad y la experiencia del usuario que se adapte a las necesidades de su empresa.
  • Duración máxima: Establezca la duración de un token de actualización o de una familia de tokens de actualización, tras la cual el usuario debe volver a autenticarse antes de que se emita un nuevo token de acceso. Si deshabilita esta opción, la duración máxima será indefinida.
  • Duración por inactividad: Establezca la duración por inactividad de los tokens de actualización emitidos para que caduquen si el usuario no está activo en su aplicación durante un período determinado.

Usa el Dashboard

  1. Ve a Dashboard > Applications.
  2. Selecciona la aplicación que quieres configurar.
  3. Ve a la pestaña Settings.
  4. En Refresh Token Expiration, habilita Set Idle Refresh Token Lifetime. Cuando está habilitada, un Token de actualización caduca en función de la duración inactiva del Token de actualización, después de lo cual ya no puede usarse. Si la rotación está habilitada, debes establecer una duración de expiración.
    Dashboard Applications Applications Settings Tab Refresh Token Expiration
  5. Introduce Idle Refresh Token Lifetime en segundos. El Token de actualización caduca una vez transcurrido el intervalo especificado y ya no puede usarse para obtener un nuevo token de acceso. Cuando la rotación está habilitada, la duración inactiva del Token de actualización también se aplica a la posibilidad de obtener nuevos tokens.
    DuraciónValor
    Predeterminado2,592,000 segundos (30 días)
    Mínimo1 segundo
    Máximo31,557,600 segundos (1 año)
    • Idle Refresh Token Lifetime no puede superar Maximum Refresh Token Lifetime.
    • El cálculo de un año equivale a 365.25 días para tener en cuenta los años bisiestos.
  6. Habilita Set Maximum Refresh Token Lifetime. Cuando está habilitada, un Token de actualización caduca en función de la duración máxima especificada para el Token de actualización, después de lo cual ya no puede usarse.
  7. Introduce Maximum Refresh Token Lifetime en segundos. Si el Token de actualización no se intercambia dentro del intervalo especificado, caduca y ya no puede usarse para obtener un nuevo token de acceso. El período de expiración de la duración inactiva del Token de actualización se renueva cada vez que el Token de actualización se intercambia por un nuevo token de acceso dentro del intervalo.
    DuraciónValor
    Mínimo1 segundo
    Máximo31,557,600 segundos (1 año)
  8. Selecciona Save Changes.

Usa la Management API

Puedes configurar los valores de duración máxima y de duración de inactividad en la carga útil del endpoint de la Management API /api/v2/clients/. Aquí tienes un ejemplo que establece la duración de vencimiento de un Token de actualización no rotativo:
PATCH /api/v2/clients/{id}
{
  "refresh_token": {
      "rotation_type": "non-rotating",
      "expiration_type": "expiring",
      "token_lifetime": 2592000,
      "infinite_token_lifetime": false,
      "idle_token_lifetime": 604800,
      "infinite_idle_token_lifetime": false
  }
}

Compatibilidad y limitaciones

  • La duración máxima del token de actualización se determina en el momento de la emisión y permanece fija durante toda su vigencia, incluso si se actualiza la duración máxima del token de actualización de la aplicación. Sin embargo, puede sobrescribir explícitamente la duración máxima del token de actualización en el momento de la emisión mediante sesiones con Actions, incluso durante intercambios del token de actualización exitosos.
  • La duración inactiva del token de actualización refleja la configuración actual de la aplicación y se actualiza con cada intercambio del token de actualización exitoso.
  • Si configura la Duración máxima del token de actualización para una aplicación, todos los tokens de actualización sin vencimiento emitidos por esa aplicación pasarán a ser tokens de actualización con vencimiento después de un intercambio de Token de actualización exitoso.
  • Una vez que un token de actualización sin vencimiento pasa a ser un token de actualización con vencimiento, no puede volver a convertirse en un token de actualización sin vencimiento.
  • Puede optar por usar las capacidades de vencimiento de los tokens de actualización; no se requiere ninguna acción de su parte. Los tokens de actualización existentes no se ven afectados.
  • El vencimiento de los tokens de actualización funciona con los siguientes flujos:
  • Todos los SDK de Auth0 admiten el vencimiento de los tokens de actualización.
  • La función de vencimiento de los tokens de actualización cumple con las recomendaciones de OAuth 2.0 Security BCP.
OAuth BCP establece que los tokens de actualización emitidos para aplicaciones basadas en navegador deben tener vencimiento y, además, aplicar sender-constraint o rotar los tokens con cada solicitud. Por lo tanto, las SPA usarán la rotación de forma predeterminada y no admitirán tokens de actualización sin vencimiento.

Más información