Accueil > OpenID Connect OAuth Server par DnC > Développer > OpenID Connect > Avertir de la fin de session OIDC et la prolonger

Avertir de la fin de session OIDC et la prolonger

Le monitoring de l’état de l’authentification permet à l’utilisateur final de visualiser l’état de la session OIDC. Voici comment avertir l’utilisateur de l’imminence de la fin de session et lui permettre de la prolonger.

Le monitoring sera complet si l’utilisateur est averti de la fin imminente de la session OIDC et si il lui est proposé de la prolonger.

Lorsque l’on interroge Authorize avec prompt = ’none’, une particularité d’OAuthSD est de retourner dans le corps de la réponse le temps restant avant la fin de session (variable ’timeleft’, en secondes).

Toujours dans l’exemple du plugin OIDC Client pour SPIP, l’avertissement est implémenté en modifiant le code de l’objet ’200’ pour proposer à l’utilisateur de prolonger la session :

jQuery

  1. 200 : function ( data, textStatus, jqXHR){
  2.     // Signaler la connexion
  3.     $('#oidc').css('background-color', '#8f8');
  4.     $('#oidc').text(' OIDC ');
  5.     var timeleft = data['timeleft'];
  6.     if ( timeleft < 600 ) {  //[dnc28d]
  7.         // La fin de session approche
  8.         var retVal = confirm( "<?php echo _T('oidcclient:session_expire'); ?>" );
  9.         if( retVal == true ) {
  10.             // étendre la session
  11.             $.ajax({
  12.                 type : "get",
  13.                 url : "<?php echo OIDC_AUTHORIZATION_ENDPOINT; ?>",
  14.                 data : { 'response_type' : 'code',
  15.                     'client_id' : "<?php echo OIDC_CLIENT_ID; ?>",
  16.                     'user_id' : login,
  17.                     'state' :  state,
  18.                     'scope' : 'openid sli',
  19.                 }
  20.             });
  21.         }
  22.     }
  23. },

Télécharger

Les jetons sont rafraîchis en utilisant notre mécanisme de SLI, et non un jeton de rafraîchissement. Voyez ici pourquoi : Rafraîchir (actualiser) un jeton d’accès : § "Bonnes pratiques pour la sécurité".