Connexion CAS SSO : erreur session_name()

  • ci.lpa.st-yrieix
  • Topic Author
  • Junior Member
  • Junior Member
More
11 months 1 week ago - 11 months 1 week ago #5038 by ci.lpa.st-yrieix
Connexion CAS SSO : erreur session_name() was created by 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.
Last edit: 11 months 1 week ago by ci.lpa.st-yrieix.

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

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
11 months 1 week ago #5039 by Yan
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

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

  • ci.lpa.st-yrieix
  • Topic Author
  • Junior Member
  • Junior Member
More
11 months 1 week ago #5042 by ci.lpa.st-yrieix
Replied by ci.lpa.st-yrieix on topic 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.

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

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
11 months 1 week ago #5043 by Yan
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

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

  • ci.lpa.st-yrieix
  • Topic Author
  • Junior Member
  • Junior Member
More
11 months 5 days ago #5044 by ci.lpa.st-yrieix
Replied by ci.lpa.st-yrieix on topic 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.

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

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
11 months 4 days ago #5046 by Yan
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

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

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
11 months 3 days ago #5049 by Yan
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

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

  • ci.lpa.st-yrieix
  • Topic Author
  • Junior Member
  • Junior Member
More
11 months 3 days ago #5050 by ci.lpa.st-yrieix
Replied by ci.lpa.st-yrieix on topic 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.
   

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

  • ci.lpa.st-yrieix
  • Topic Author
  • Junior Member
  • Junior Member
More
11 months 3 days ago #5051 by ci.lpa.st-yrieix
Replied by ci.lpa.st-yrieix on topic 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.

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

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
11 months 3 days ago #5052 by Yan
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 !

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

Moderators: Yan