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 - il y a 1 an 5 mois #5038 par ci.lpa.st-yrieix
Connexion CAS SSO : erreur session_name() a été créé par ci.lpa.st-yrieix
Bonjour.
je viens d'installer GRR 4.0.3 et de configurer un accès par SSO CAS.
Je suis bien redirigé vers la fenetre d'authentification de mon CAS mais, aprés avoir saisie mes identifiants, j'obtiens ensuite les erreurs suivantes :
Warning: session_name(): Cannot change session name when session is active in /home/eplyrie/public_html/grr/include/session.inc.php on line 610
Warning
: Cannot modify header information - headers already sent by (output started at /home/eplyrie/public_html/grr/include/session.inc.php:610) in /home/eplyrie/public_html/grr/index.php on line 161

Warning: Cannot modify header information - headers already sent by (output started at /home/eplyrie/public_html/grr/include/session.inc.php:610) in /home/eplyrie/public_html/grr/index.php on line 450

Pourtant lorsque je vais dans les connexions actives, elle est bien présente et dans les utilisateurs je suis bien présent en tant qu'utilisateur externe.

Merci de votre aide.
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 #5039 par Yan
Réponse de Yan sur le sujet Connexion CAS SSO : erreur session_name()
Bonjour,
j'ai bien vu que vous avez tagué votre message par "supprimé", mais je pense intéressant que vous disiez ce qui ne fonctionnait pas et surtout quelle correction vous avez faite pour que cela fonctionne désormais.
Cordialement,
YN

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 #5042 par ci.lpa.st-yrieix
Réponse de ci.lpa.st-yrieix sur le sujet Connexion CAS SSO : erreur session_name()
Désolé je pensais que le choix de l’icône était purement décoratif et la croix m’évoquait une erreur ou un soucis.
Concrètement je suis toujours bloqué par cette erreur.

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 #5043 par Yan
Réponse de Yan sur le sujet Connexion CAS SSO : erreur session_name()
Bonjour,
pour progresser, il faudrait que vous précisiez le contexte de votre installation (serveur web, version de php).
Egalement, si vous en avez la possibilité, tester si le problème est reproduit avec la version 3.5.1 ou les précédentes (3.5.0 puis 3.4.3) pour comprendre si le problème vient de GRR, de phpCAS ou de votre installation.
Cordialement,
YN

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 #5044 par ci.lpa.st-yrieix
Réponse de ci.lpa.st-yrieix sur le sujet Connexion CAS SSO : erreur session_name()
Bonjour.
GRR est hébergé chez O2switch sur un serveur mutualisé. A priori c'est de l'apache, du PHP en 7.4 et MariaDB 10.6.12
Pour le CAS SSO, je n'ai pas la main dessus, c'est celui de l'education agricole. J'ai fait une demande pour pouvoir l'utiliser dans un application "tiers" (liste blanche) en renseignant notamment l'url et les infos à transmettre à GRR (Nom, prenom et email).
L'url que j'ai déclarée se termine par .../public_html/grr
Pour tester avec la 3.5.1, je l'ai installée dans un autre répertoire puis renommé en grr. Malheureusement, le CAS me signale que cette application n'est pas autorisée. Si je rebascule sur le repertoire de la  4.0.3, le CAS accepte bien l'appli. J'ai l'impression que le CAS, à la 1ere connexion, a en quelque sorte "taggué" l'appli et ne se laisse pas berné, si on change l'appli dans le répertoire grr. Donc, pour l'instant, je n'ai pas pu tester sur une ancienne version.
Quelques infos complémentaires :
  • Comme je ne connaissais pas les noms des "champs utilisateurs" envoyées par le CAS, GRR ne me recupere ni les noms,prenoms et emails mais je n'ai pas l'impression que cela soit bloquant.
  • Comme les erreurs sont des "warnings", j'ai bidouillé avec des @ et un isset pour les variables non définies, afin de ne plus les afficher. cela fonctionne mais j'atterris sur la page ".../grr/my_account.php" introuvable.
  • En inspectant session.inc.php, à la ligne en erreur (610) , il y a session_name(SESSION_NAME). j'ai fait afficher le contenu de la variable SESSION_NAME et elle contient 'GRR'.
Je ne sais pas si ces dernières infos sont utiles. En tout cas, je vais essayer de me renseigner pourquoi je ne peux pas tester les anciennes versions.

Cordialement.

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 #5046 par Yan
Réponse de Yan sur le sujet Connexion CAS SSO : erreur session_name()
Bonjour,
votre situation est difficile à traiter, vu que vous n'avez pas la main sur les relations avec le CAS-SSO. Je vais essayer de vous aider à avancer.
Je pense que si vous installez une ancienne version dans le même répertoire physique que celui où est actuellement GRR 4.0.3 et que vous modifiez config.inc.php pour que le nom de session soit GRR, le CAS ne devrait y voir que du feu. Par contre la manip' que vous avez faite ne lui a pas échappé : il doit prendre en compte l'UID du répertoire ou quelque chose de semblable.
Pour le deuxième point que vous évoquez, l'arrivée sur my_account.php, c'est un bug (à rechercher) puisque cette page a été modifiée, renommée et déplacée. Comme vous n'avez pas pu récupérer nom, prénom et email depuis l'annuaire du SSO, votre fiche utilisateur est incomplète et le script vous emmène à la page de gestion de votre compte pour les renseigner. C'est très positif ! Il reste à éliminer ce bug...
Pour le premier point, il faudrait voir ce que répond le serveur CAS pour ajuster les paramètres et récupérer automatiquement les attributs demandés.
Je fouille dans le code dès que possible.
Cordialement,
YN

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 #5049 par Yan
Réponse de Yan sur le sujet Connexion CAS SSO : erreur session_name()
Bonjour,
pouvez-vous tester en remplaçant la ligne 1605 du fichier functions.inc.php
Code:
header("Location:my_account.php");
par
Code:
header("Location: /compte/compte.php");
Cela devrait vous emmener vers la page de renseignement des nom, prénom et email, et vous permettre d'avancer.
Cordialement,
YN

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 #5050 par ci.lpa.st-yrieix
Réponse de ci.lpa.st-yrieix sur le sujet Connexion CAS SSO : erreur session_name()
Bonjour.Merci pour ces pistes.De mon cotés, j'ai avancé un peu :
  • J'ai récupéré les paramètres du CAS directement de la part de ceux qui le gère. Pas de grandes différences à part un sous dossier en plus dans l'URL et comme ils ne savaient pas trop pour la racine, j'ai enlevé "/cas" que j'avais mis auparavant.
  • Je ne sais pas si c'est lié mais je n'ai plus le blocage avec l'ancienne version de GRR. J'ai donc testé la 3.5.1 et j'obtiens les memes erreurs sur le fichier sessions.inc.php.
  • Pour la recupération des champs prénom/nom et email depuis le CAS, j'ai peut-etre quelques indication car lors de la premiere connexion à une appli le serveur "CAS" nous affiche les infos qui sont transmises (Voir ci-dessous). Par contre sur la doc de GRR, j'ai vu qu'il y avait une procédure pour faire correspondre les champs envoyés avec ceux attendus par GRR mais elle semblait obsolete car je n'ai pas retrouvé les fichiers indiqués.
   

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 #5051 par ci.lpa.st-yrieix
Réponse de ci.lpa.st-yrieix sur le sujet Connexion CAS SSO : erreur session_name()
Je viens de voir votre dernier message à l'instant. Du coup ma réponse ci-dessus ne le prend pas en compte.

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 #5052 par Yan
Réponse de Yan sur le sujet Connexion CAS SSO : erreur session_name()
Quand vous parlez de l'ancienne version de GRR, laquelle est-ce ?
Il faudrait que nous raisonnions sur la même version afin de progresser efficacement.
Ensuite, si vous en êtes d'accord, nous pourrons chercher à déboguer les versions plus récentes !

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

Modérateurs: Yan