Expiration de la session

Aperçu

Ce sous-projet aidera les propriétaires d'actifs Web à configurer leurs actifs avec une fonction « Expiration de la session ». Celle-ci sera activée en deux circonstances : après une période de temps spécifique ou lors d'inactivité. Par exemple, si l'utilisateur demeure trop longtemps sur la même page, la fonction sera activée. De même, si l’utilisateur demeure inactif, la fonction sera activée. Le fureteur affichera alors une boîte de dialogue proposant deux options à l'utilisateur ; s’il souhaite rester connecté il devra sélectionner « OK » et ce, dans un laps de temps précis et s’il souhaite mettre fin à sa session, il n’aura qu’à choisir « Annuler ». Advenant que l'utilisateur tarde trop à faire son choix, ce sera le paramètre de déconnexion qui s’affichera.

Le code que vous êtes autorisés à modifier (dans la page) est :

<span class="wet-boew-sessiontimeout" data-wet-boew='{"inactivity": 1200000, "reactionTime": 30000, "sessionalive": 1200000, "logouturl": "./", "refreshCallbackUrl": "./"'}"></span>

Les paramètres suivants vous permettent de configurer la fonction :

  • inactivity : période de temps d'inactivité après laquelle la boîte de dialogue apparaîtra.
  • reactionTime : période de temps dont dispose l'utilisateur pour faire un choix lorsque la boîte de dialogue apparaît.
  • sessionalive : période de temps durant laquelle la session demeure active avant que la boîte de dialogue n’apparaisse.
  • logouturl : adresse URL à laquelle l’utilisateur est acheminé lorsque la session a expiré.
  • refreshCallbackUrl : Ceci est l'URL pour effectuer une actualisation ajax, doit retourner true/false.

Le seul paramètre requis est logouturl, tous les autres champs sont facultatifs. Le JavaScript par défaut serait :

<span class="wet-boew-sessiontimeout" data-wet-boew='{"logouturl": "./"}'></span>

NOTE IMPORTANTE : Les paramètres inactivity, reactionTime et sessionAlive sont mis en millisecondes. Le seule paramètre obligatoire est le logouturl. Les paramètres inactivity et sessionalive est fixé à 20 minutes par défaut avec un temps de 30 secondes pour la confirmation du message de dialogue. Le paramètre refreshCallbackUrl ne doit pas être une page contenant la fonction d'expiration de la session de nouveau sinon une boucle sera créé, il devrait être tout simplement une page qui rafraîchit la session.

Voici un outil qui vous aidera a convertir des minutes en millisecondes (disponible en anglais seulement) : http://www.calculateme.com/Time/Minutes/ToMilliseconds.htm

NOTE IMPORTANTE : Les paramètres sessionalive et inactivity devrait être égal à votre session sur le serveur web moins le temps de reactionTime. Si vous définissez paramètres sessionalive et inactivity avec le même temps que la session sur le serveur web, sans prendre en considération le temps reactionTime, alors la session sur le serveur sera fini dès que la fenêtre contextuelle apparaît pour prolonger la session.

Configuration

Ajoutez les lignes suivantes à la page :

<span class="wet-boew-sessiontimeout"> data-wet-boew='{logouturl: "./"}'></span>

Faites un essai

Cette page a été configurée pour expirer dans 30 secondes. Après ce délai, vous aurez 30 secondes pour choisir de la garder active ou non. Veuillez svp attendre que la boîte de dialogue apparaisse.