- event.refresh_token : Fournit des renseignements pertinents pour les refresh_tokens existants, y compris les données
id,created_at,expires_at,idle_expires_at,clients_id, des données liées àdevice, commeASN,IPetUser_agent, et pour les flux basés sur le navigateur,session_id. Cet objet est rempli par des flux d’échange de jetons d’actualisation. - api.refreshToken : Vous permet de gérer les jetons d’actualisation existants en révoquant des sessions ou en modifiant les dates d’expiration.
event.refresh_token pour examiner la propriété last_exchange_at et évaluer les risques associés aux transactions en cours. Vous pouvez également combiner l’objet event.refresh_token avec d’autres objets d’événement, tels que event.authentication.
Vous pouvez ensuite utiliser l’objet api.refreshToken pour définir des dates d’expiration du jeton d’actualisation ou révoquer le jeton d’actualisation.
Pour en savoir plus sur ces objets, consultez :
- Objet événement : En savoir plus sur l’objet et les propriétés d’événement de jeton d’actualisation.
- Objet API : En savoir plus sur l’objet API du jeton d’actualisation et ses méthodes.
Révoquer les jetons d’actualisation à l’aide d’actions
srrt).
Si vous souhaitez utiliser la méthode
api.refreshToken.revoke(reason), assurez-vous que l’objet event.refresh_token existe.Surveiller les événements de révocation du journal
srrt indiquant qu’un jeton d’actualisation a été révoqué.
Si le jeton d’actualisation est lié à une session précédemment authentifiée, le journal inclura une référence à la session authentifiée dans l’attribut session_id.
Cas d’utilisation des jetons d’actualisation avec les Actions
- api.refreshToken.setExpiresAt(absolute) vous permet de définir une nouvelle date d’expiration absolue pour un jeton d’actualisation spécifié.
- api.refreshToken.setIdleExpiresAt(idle) vous permet de définir une nouvelle date d’expiration du délai d’inactivité pour un jeton d’actualisation spécifié.
- L’organisation d’un utilisateur
- La connexion Auth0 d’un utilisateur
- L’adhésion ou le profil de groupe d’un utilisateur spécifique
- L’évaluation des risques
- Tout autre critère dynamique disponible lors de l’exécution de l’Action
api.refreshToken.setExpiresAt(absolute) et api.refreshToken.setIdleExpiresAt(idle) permettent de définir l’expiration d’un jeton d’actualisation, avant son émission, ou de modifier l’expiration d’un jeton d’actualisation existant au cours d’un flux échange de jetons d’actualisation.api.refreshToken.setExpiresAt(absolute) et api.refreshToken.setIdleExpiresAt(idle) convertissent les jetons d’actualisation qui n’expirent pas en jetons d’actualisation expirant en utilisant les paramètres par défaut Refresh Token Expirations (Expirations du jeton d’actualisation) comme valeurs maximales.api.refreshToken.setIdleExpiresAt(idle) définit le délai d’inactivité pour les jetons d’actualisation. Si la méthode n’est pas appelée dans tous les échanges réussis, le délai d’inactivité sera écrasé à l’aide des paramètres de l’application de durée de vie du jeton d’actualisation.Limites
session_id) avec la valeur appropriée. Les jetons d’actualisation émis avant cette date contiennent cette propriété avec une valeur null.
Les jetons d’actualisation émis avant la publication de la méthode API post-connexion api.refreshToken.revoke(reason) ne contiendront pas les données event.refresh_token.device.
Les jetons d’actualisation qui n’expirent pas ou les jetons d’actualisation qui n’ont pas été échangés ne contiendront pas la propriété event.refresh_token.last_exchanged_at.
Pour des raisons de sécurité, les délais d’inactivité et absolu ne peuvent pas être définis au-dessus des paramètres du jeton d’actualisation de l’application définis dans les dates d’ expiration du jeton d’actualisation. Si vous tentez de définir une date au-dessus des paramètres d’expiration, les méthodes de l’API la mettront à jour en fonction des dates d’ expiration des jetons d’actualisation et enregistreront un événement d’avertissement ( w ) dans les journaux du locataire.
Cas d’utilisation : Révocation d’un jeton d’actualisation
api.refreshToken.revoke(reason) et les objets d’événement.
Révoquer les jetons d’actualisation en raison d’ImpossibleTravel
event.authentication.ImpossibleTravel.code est égal à impossible_travel_from_last_login property. Si la valeur est true, l’Action appelle api.refreshToken.revoke() pour :
- refuser la transaction;
- Révoquer le jeton d’actualisation
- renvoyer une erreur « 403 access_denied »;
- émettre l’erreur « Jeton d’actualisation révoqué en raison d’un voyage impossible »
Révoquer les jetons d’actualisation en raison d’une liaison IP
event.refresh_token.device.initial_ip et event.request.ip, vous pouvez vous assurer qu’une transaction de jeton d’actualisation conserve la même adresse IP pendant toute sa durée. Dans ce scénario, tout changement d’IP est considéré comme un risque et un nouveau jeton d’actualisation est nécessaire.
event.refresh_token.device.initial_ip et event.request.ip. L’Action détermine si l’adresse IP de la transaction a changé. Si la valeur est true, l’Action appelle api.refreshToken.revoke() pour :
- refuser la transaction;
- Révoquer le jeton d’actualisation
- renvoyer une
erreur403access_denied - émettre l’erreur «
Invalid IP change» (Changement d’adresse IP invalide)
request.asn et event.refresh_token.device.initial_asn pour surveiller les changements d’ASN au lieu des changements d’IP.
Cas d’utilisation : Personnaliser les dates d’expiration des jetons d’actualisation
api.refreshToken.setExpiresAt(absolute) et api.refreshToken.setIdleExpiresAt(idle)
Personnalisation de la date d’expiration absolue du jeton d’actualisation en fonction de l’organisation
refresh_token_timeout de l’Organization pour définir l’heure d’expiration du jeton d’actualisation.
- Jetons nouvellement émis :
current_timeplusorganization_refresh_token_lifetime - Jetons existants :
event.refresh_token.created_atplusorganization_refresh_token_lifetime
Personnalisation du délai d’inactivité du jeton d’actualisation en fonction du rôle d’adhésion
current_time plus le refresh_token_idle_timeout. Notez que nous modifions le délai d’expiration des jetons nouvellement émis et des jetons existants lors de l’échange de jetons d’actualisation.