Logout propre d'une connexion phpCAS

  • Rapace
  • Topic Author
  • Senior Member
  • Senior Member
More
9 months 3 weeks ago - 9 months 3 weeks ago #5150 by Rapace
Logout propre d'une connexion phpCAS was created by Rapace
Bonjour à tous,Le logout dans le cas d'une connexion via le protocole phpCAS semble ne pas couper la session SSO.Pour palier à ce problème je propose la solution suivante :
  1. Création d'un paramètre
    1. Table MYSQL : grr_setting
    2. NAME : cas_logout
    3. VALUE : (vide) ou URL de redirection
  2. Modification du fichier ./logout.php (pour la version 3.5.1)
Insertion à la ligne 45
Code:
// Ajout pour logout du CAS-SSO }elseif((Settings::get('sso_statut') == 'cas_visiteur') || (Settings::get('sso_statut') == 'cas_utilisateur')){     require_once('include/cas.inc.php');     grr_closeSession($_GET['auto']);     if( strlen(Settings::get('cas_logout')) > 0 )         phpCAS::logoutWithUrl(Settings::get('cas_logout'));     else         phpCAS::logout();

Ci-joint le fichier patch
 

File Attachment:

File Name: logout.351.patch.txt
File Size:1 KB

Production : GRR : 1.9.7e - Hébergement : Ubuntu 14-04 + PHP 5.5.9
Test : GRR (3.5.1 et 4.0.3) + Ubuntu 22.04.1- PHP : 8.0.1
Last edit: 9 months 3 weeks ago by Rapace.

Please Log in or Create an account to join the conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
9 months 3 weeks ago #5153 by Yan
Replied by Yan on topic Logout propre d'une connexion phpCAS
Bonjour,
merci pour cette suggestion.
C'est un nouveau paramètre à ajouter aux réglages SSO,
Sa place devrait-elle être à côté de "Url_portail_sso"?
Cordialement,
YN

Please Log in or Create an account to join the conversation.

  • Rapace
  • Topic Author
  • Senior Member
  • Senior Member
More
9 months 3 weeks ago #5154 by Rapace
Replied by Rapace on topic Logout propre d'une connexion phpCAS
Bonjour Yann,
En fait, un logout sso_lasso est déjà mis en place dans le logout.php.
Cette suggestion est (pour moi) spécifique au phpCAS, c'est pourquoi j'ai nommé le paramètre en cas_logout.
De plus, toujours pour le CAS, ne serait-il pas judicieux de mettre en place un paramètre cas_protocole qui pourrait prendre les valeurs du protocole de connexion CAS (CAS_VERSION_2_0, SAML_VERSION_1_1, etc...) Dans la version 3.5.1 j'ai modifié ce paramètre qui est noyé dans le /include/cas.inc.php (ligne 40)

Production : GRR : 1.9.7e - Hébergement : Ubuntu 14-04 + PHP 5.5.9
Test : GRR (3.5.1 et 4.0.3) + Ubuntu 22.04.1- PHP : 8.0.1

Please Log in or Create an account to join the conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
9 months 1 week ago #5164 by Yan
Replied by Yan on topic Logout propre d'une connexion phpCAS
Bonjour,
j'ai repris votre idée de logout en SSO.
Pour la version de CAS, j'approfondis la question.
Pouvez-vous confirmer que les fichiers à jour de ce commit github.com/JeromeDevome/GRR/tree/7d3c483...1d7d96f2f1a67c8f8b5d reprennent bien votre idée et sont fonctionnels dans votre contexte de CAS-SSO ?
Dès votre confirmation, je publierai une sous-version 3.5.1a.
D'avance merci pour votre aide !
Cordialement,
YN

Please Log in or Create an account to join the conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
9 months 2 days ago #5170 by Yan
Replied by Yan on topic Logout propre d'une connexion phpCAS
Bonjour,
voilà la possibilité de choisir le protocole CAS pour phpCAS : github.com/JeromeDevome/GRR/commit/2c58f...a02aa3b1f990851155ed
En espérant que cela fonctionne bien comme attendu.
Cordialement,
YN

Please Log in or Create an account to join the conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
9 months 2 days ago - 9 months 2 days ago #5171 by Yan
Replied by Yan on topic Logout propre d'une connexion phpCAS
Bonjour,
évidemment, il ne faut pas oublier de prendre en compte le paramètre cas_version !
github.com/JeromeDevome/GRR/commit/c7fe5...9f61427ff6b99eea756c
Merci de confirmer que ces modifications sont bien fonctionnelles.
Cordialement,
YN
Last edit: 9 months 2 days ago by Yan.

Please Log in or Create an account to join the conversation.

Moderators: Yan