Connexion CAS SSO : erreur session_name()

  • ci.lpa.st-yrieix
  • Auteur du sujet
  • Membre junior
  • Membre junior
Plus d'informations
il y a 1 an 5 mois #5054 par ci.lpa.st-yrieix
Réponse de ci.lpa.st-yrieix sur le sujet Connexion CAS SSO : erreur session_name()
L'ancienne version, c'est la 3.5.1. Comme j'obtiens la meme erreur, je suis d'accord pour trouver une solution sur la derniere version (4.0.3).

J'ai tenté la modif du fichier functions.inc.php. Quelques difficultés :
  1. il a fallut que je remette les "rustines" evoquées dans mon message précédent pour eviter les messages d'erreurs.
  2. Ensuite, il tente de charger la page " www.eplefpa-saint-yrieix.fr/compte/compte.php mais il manque le dossier "grr" dans le chemin donc il ne la trouve pas.
  3. Je decide d'ajouter 'grr/compte/compte.php' aprés Location
  4. Il tente, cette fois, de charger la page " www.eplefpa-saint-yrieix.fr/grr/grr/compte/compte.php . bizarrement il y a 2 fois le dossier grr donc il ne la trouve pas egalement.
  5. Je remodifie en mettant l'url complete " www.eplefpa-saint-yrieix.fr/grr/compte/compte.php " après Location. Cela fonctionne mais me ramene sur la page d'authentification "locale".
  6. je clique sur authentification CAS, il ne me redemande pas de saisir mon identifiant/mdp mais juste de confirmer les données qui vont etre transmises à GRR et je reviens sur la page d'authentification "locale".

Connexion ou Créer un compte pour participer à la conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
Plus d'informations
il y a 1 an 5 mois #5056 par Yan
Réponse de Yan sur le sujet Connexion CAS SSO : erreur session_name()
Il semblerait qu'il y ait des soucis d'ouverture de session avec les versions 3.5.1 et 4.0.3 (cf site.devome.com/fr/kunena/aide-installat...ation-sous-grr-4-0-2 ) dont je ne comprends pas l'origine.
Je vous propose donc, si c'est possible, de faire les tests avec la version 3.5.0d pour éliminer les doutes côté GRR.
De ce fait, la documentation de gestion du CAS devrait être encore valable. Il y a eu des changements importants sur les 4.0.+ que je ne maîtrise pas complètement.

Connexion ou Créer un compte pour participer à la conversation.

  • ci.lpa.st-yrieix
  • Auteur du sujet
  • Membre junior
  • Membre junior
Plus d'informations
il y a 1 an 5 mois #5058 par ci.lpa.st-yrieix
Réponse de ci.lpa.st-yrieix sur le sujet Connexion CAS SSO : erreur session_name()
Je viens de tester la 3.5.0d :
il a fallut egalement que je modifie session.inc.php pour eviter d'avoir les messages d'erreurs mais ensuite je tombe bien sur la page qui me demande de completer mes informations de compte. Une fois fait, je suis bien connecté sur l'application. Dans la foulée, je me suis deconnecté et reconnecté sans soucis.

Connexion ou Créer un compte pour participer à la conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
Plus d'informations
il y a 1 an 5 mois #5059 par Yan
Réponse de Yan sur le sujet Connexion CAS SSO : erreur session_name()
Demie bonne nouvelle !
Je vous propose d'avancer sur cette piste avec la modification du fichier /include/config_CAS.inc.php.ori à renommer en /include/config_CAS.inc.php pour commencer.
Pour récupérer les informations envoyées pas le serveur CAS, selon ce que vous avez donné, je propose de modifier les lignes 52, 53 et 57 de ce fichier par :
Code:
$user_nom = recuperer_nom(phpCAS::getAttribute('givenName')); $user_prenom = recuperer_prenom(phpCAS::getAttribute('sn')); $user_mail = recuperer_mail(phpCAS::getAttribute('mail'));

Connexion ou Créer un compte pour participer à la conversation.

  • ci.lpa.st-yrieix
  • Auteur du sujet
  • Membre junior
  • Membre junior
Plus d'informations
il y a 1 an 5 mois #5060 par ci.lpa.st-yrieix
Réponse de ci.lpa.st-yrieix sur le sujet Connexion CAS SSO : erreur session_name()
Nous sommes d'accord que continuons les tests sur la 3.5.0d ?
si oui, j'ai testé les modifications en inversant givenName et sn qui contiennent respectivement le prénom et le nom.
Je retombe sur la page pour compléter le nom et prénom. En faisant un var_dump des 3 variables $user elles ont toute la valeur NULL. Visiblement phpCAS n'arrive pas à les récupérer.
Je pense que les entrées d'annuaire sont bonnes mais il doit manquer une partie du chemin.

Connexion ou Créer un compte pour participer à la conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
Plus d'informations
il y a 1 an 5 mois #5061 par Yan
Réponse de Yan sur le sujet Connexion CAS SSO : erreur session_name()
Essayons de voir ce que répond le serveur CAS. Incluons le code suivant entre les lignes 86 et 87 du fichier cas.inc.php :
Code:
echo '<h3>User Attributes</h3>'; echo'<ul>'; foreach (phpCAS::getAttributes() as $key => $value) { if (is_array($value)) { echo '<li>', $key, ':<ol>'; foreach ($value as $item) { echo '<li><strong>', $item, '</strong></li>'; } echo '</ol></li>'; } else { echo '<li>', $key, ': <strong>', $value, '</strong></li>' . PHP_EOL; } } echo'</ul>'; die();
Evidemment le "die()" va interrompre l'exécution du code et la connexion ne se fera pas, mais on aura la forme de la réponse du serveur CAS.

Connexion ou Créer un compte pour participer à la conversation.

  • ci.lpa.st-yrieix
  • Auteur du sujet
  • Membre junior
  • Membre junior
Plus d'informations
il y a 1 an 5 mois - il y a 1 an 5 mois #5063 par ci.lpa.st-yrieix
Réponse de ci.lpa.st-yrieix sur le sujet Connexion CAS SSO : erreur session_name()
Malheureusement pas de réponse. J'ai juste une page avec "User Attributes" et la balise <ul></ul> est vide.

Pour etre sur d'avoir coller le code au bon endroit voici la fin du fichier cas.inc.php :
Code:
$login = phpCAS::getUser(); echo '<h3>User Attributes</h3>'; echo'<ul>'; foreach (phpCAS::getAttributes() as $key => $value) {     if (is_array($value)) {         echo '<li>', $key, ':<ol>';         foreach ($value as $item) {             echo '<li><strong>', $item, '</strong></li>';         }         echo '</ol></li>';     } else {         echo '<li>', $key, ': <strong>', $value, '</strong></li>' . PHP_EOL;     } } echo'</ul>'; die(); $user_ext_authentifie = 'cas'; if (file_exists("./include/config_CAS.inc.php"))     include("./include/config_CAS.inc.php"); ?>
Dernière édition: il y a 1 an 5 mois par ci.lpa.st-yrieix.

Connexion ou Créer un compte pour participer à la conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
Plus d'informations
il y a 1 an 5 mois #5064 par Yan
Réponse de Yan sur le sujet Connexion CAS SSO : erreur session_name()
On aurait dû afficher $login avant le <h3> pour être sûr que le serveur CAS a bien répondu.
Si phpCAS::getAttributes() ne rend rien, il n'y a pas d'espoir de faire mieux que du remplissage manuel.
Dans mon lycée, avec l'ENT Kosmos, la diffusion des attributs CAS était refusée mais il était possible de faire un export csv avec les renseignements recherchés, qu'ensuite j'importais dans GRR en début d'année scolaire, ce qui évitait aux utilisateurs d'avoir à mettre à jour leur fiche manuellement.

Connexion ou Créer un compte pour participer à la conversation.

  • ci.lpa.st-yrieix
  • Auteur du sujet
  • Membre junior
  • Membre junior
Plus d'informations
il y a 1 an 5 mois #5065 par ci.lpa.st-yrieix
Réponse de ci.lpa.st-yrieix sur le sujet Connexion CAS SSO : erreur session_name()
Pour info, $login renvoi mon identifiant CAS : guillaume.bordas.
Après ce n'est pas très contraignant de saisir son prénom, nom et email à la première connexion.
Par contre, est ce que cela est envisageable avec la version 4.0.3 ou par sécurité, je reste dans cette version 3.5.0d dans le cadre de l'utilisation dans mon lycée ?

Connexion ou Créer un compte pour participer à la conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
Plus d'informations
il y a 1 an 5 mois #5067 par Yan
Réponse de Yan sur le sujet Connexion CAS SSO : erreur session_name()
Pour ce qui est de la version à utiliser... je maîtrise mieux la série 3.5.x que la 4.0.x et il y eu un changement de version de phpCAS entre les deux.
Déjà, si vous pouviez avoir le même résultat avec la v3.5.1 qu'avec la v3.5.0d, cela montrerait que le nouveau codage des mots de passe n'a pas bousculé l'authentification CAS.
Ensuite, pour choisir entre v3.5.1 et v4.0.3, il y a des fonctionnalités présentes d'un côté et pas de l'autre. On en rediscute si besoin.

Connexion ou Créer un compte pour participer à la conversation.

Modérateurs: Yan