Partage
  • Partager sur Facebook
  • Partager sur Twitter

phpCAS, récupération d'attribut ne marche pas

    7 juin 2021 à 16:03:22

    Rebonjour !

    Je reviens pour un autre soucis (décidément...). J'utilise phpCAS, car je me sers de la connexion CAS pour identifier mes utilisateurs.

    Jusque-là, c'est bon. En revanche, je dois récupérer des attributs lors de la connexion, le serveur CAS, selon les logs, renvoie bien les attributs.

    En revanche du coté de mon application, aucun moyen de pouvoir récupérer ses attributs...

    public function __invoke(RequestEvent $event) {
        
            if(!isset($_SESSION)) session_start();
    
            \phpCAS::client(CAS_VERSION_3_0, $this->getParameter('host'), $this->getParameter('port'), is_null($this->getParameter('path')) ? '' : $this->getParameter('path'), true);
            
            \phpCAS::setCasServerCACert('...', true);
            
            \phpCAS::setServerServiceValidateURL('...');
          \phpCAS::getCasClient()->setCasServerCACert('...', true);
                
            
            if($this->getParameter('handleLogoutRequest')) {
                if($event->getRequest()->request->has('logoutRequest')) {
                    $this->checkHandleLogout($event);
                }
                $logoutRequest = $event->getRequest()->request->get('logoutRequest');
    
                \phpCAS::handleLogoutRequests(true);
            } else {
                \phpCAS::handleLogoutRequests(false);
            }
    
            \phpCAS::forceAuthentication();
            
            $token = new CasToken();
            $token->setUser(\phpCAS::getUser());
    	      $token->setAttributes(\phpCAS::getAttributes());
           
           
            try {
                $authToken = $this->authenticationManager->authenticate($token);
                $this->tokenStorage->setToken($authToken);
            } catch(AuthenticationException $failed) {
                // CREER UN NOUVEL UTILISATEUR;
                $response = new Response();
                $response->setStatusCode(403);
                $event->setResponse($response);
            }
        }

    J'essaye tant bien que mal de les récupérer à l'aide de getAttributes, mais j'ai un tableau vide, je ne comprends vraiment pas pourquoi... Alors que j'ai bien le getUser() qui marche :/

    Si quelqu'un peut m'aider, ça serai génial !

    Merci d'avance !

    -
    Edité par MattAmsellem 7 juin 2021 à 16:03:53

    • Partager sur Facebook
    • Partager sur Twitter
      11 juin 2021 à 12:24:57

      Bonjour, je fais un UP, car je n'ai toujours pas eu de réponses et je suis encore en train de galérer sur ce soucis...
      • Partager sur Facebook
      • Partager sur Twitter

      phpCAS, récupération d'attribut ne marche pas

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown