Résultats de recherche :

×

S'inscrire Contactez-Nous

Les applications Drupal modernes s'appuient souvent sur des fournisseurs d'identité OAuth 2.0 pour une authentification centralisée. Bien que cette approche renforce l'authentification, elle peut présenter une lacune dans la gestion des sessions utilisateur au sein même de Drupal.

L'authentification peut être déléguée au fournisseur d'identité, mais l'application des sessions reste au sein de Drupal, créant une séparation entre la validité du jeton et la durée de vie de la session.

Cette solution offre un niveau de personnalisation intégré à Drupal. Il en résulte un contrôle d'accès cohérent, une vulnérabilité accrue et un comportement de session conforme aux politiques d'autorisation OAuth.

Dans cette section, nous discuterons de tout, des exigences et du processus de mise en œuvre jusqu'aux résultats.

logo de la carte de cas d'utilisation

Module client OAuth

Télécharger le module

Lorsqu'un site Drupal utilise OAuth pour l'authentification, les décisions d'accès sont censées dépendre de la validité du jeton OAuth. En théorie, une fois le jeton expiré, l'accès devrait être immédiatement interrompu. En pratique, ce n'est pas toujours le cas.

Les sessions Drupal se poursuivent souvent même après l'expiration du jeton OAuth associé. Comme la gestion des sessions et la validation des jetons fonctionnent séparément, il n'existe aucun mécanisme intégré pour fermer automatiquement une session Drupal active lorsque le jeton devient invalide.

  • Ce manque de cohérence engendre une grave faille dans le contrôle d'accès. Les utilisateurs peuvent conserver un accès au-delà de la période d'autorisation prévue. L'expiration des jetons n'entraîne pas systématiquement la fermeture de la session. Il n'existe aucun point de contrôle centralisé garantissant que la durée de vie de la session corresponde strictement à celle du jeton.
  • Grâce à cela, en tant qu'administrateur, vous pouvez :
    • Synchroniser la durée de vie de la session Drupal avec l'expiration du jeton OAuth.
    • Choisissez le paramètre d'expiration du jeton exact auprès du fournisseur d'identité que vous souhaitez utiliser.
    • Déterminez précisément ce qui se passe dans Drupal lorsque le jeton expire.
  • Avec cette configuration, Drupal cesse de gérer l'authentification et la gestion des sessions séparément ; elles fonctionnent ensemble, comme elles le devraient.

Lors de votre connexion, le fournisseur d'identité OAuth vous fournit un jeton d'accès doté d'une date d'expiration. Le module récupère cette date d'expiration et l'utilise pour définir la durée de votre session Drupal.

  • Une fois la synchronisation activée, voici ce qui se passe :
    • Drupal adapte la durée de votre session à la validité du jeton OAuth.
    • Il vérifie en permanence si le jeton est toujours valide pendant que vous êtes connecté.
    • Dès que le jeton expire, Drupal exécute l'action que vous avez définie.
  • En tant qu'administrateur, vous disposez de plusieurs options :
    • Vous pouvez choisir d'expulser les utilisateurs dès l'expiration du jeton.
    • Vous pouvez aussi tenter d'automatiser le processus et configurer Drupal pour qu'il renouvelle le jeton à l'aide d'un jeton d'actualisation. Attention : cela dépend de votre fournisseur d'identité.
  • Tout cela fonctionne de manière autonome ; aucun code supplémentaire ni planificateur externe n’est nécessaire. Drupal s’en charge.
  • Synchronisation entre la validité du jeton OAuth et les sessions Drupal.
  • Suppression des sessions utilisateur obsolètes ou non gérées.
  • Amélioration de la cohérence du contrôle d'accès.
  • Risque de sécurité réduit lié à l'expiration des jetons.

La gestion des sessions avec synchronisation de l'expiration des jetons permet à Drupal d'appliquer un contrôle d'accès, et plus précisément la révocation d'accès, en fonction de la validité du jeton OAuth. L'objectif principal du jeton OAuth est de garantir l'accès à une ressource. Il est donc logique qu'une fois ce jeton expiré, l'accès soit révoqué.

Nous vous contacterons dans les plus brefs délais

forme mo

 Merci pour votre réponse. Nous reviendrons vers vous bientôt.

Quelque chose s'est mal passé. Veuillez soumettre à nouveau votre requête

Table des Matières

Bonjour!

Besoin d'aide? Nous sommes ici !

soutenez