Loading config/module.config.php +5 −0 Original line number Diff line number Diff line Loading @@ -175,6 +175,11 @@ $settings = [ */ //'logout_url' => '/Shibboleth.sso/Logout?return=', // NB: '?return=' semble obligatoire! /** * Autorise l'IDP à gérer la déconnexion */ 'idp_logout' => false, /* 'simulate' => [ 'eppn' => 'login@domain.fr', Loading config/unicaen-authentification.local.php.dist +5 −0 Original line number Diff line number Diff line Loading @@ -77,6 +77,11 @@ return [ */ 'logout_url' => '/Shibboleth.sso/Logout?return=', // NB: '?return=' semble obligatoire! /** * Autorise l'IDP à gérer la déconnexion */ 'idp_logout' => false, /** * Simulation d'authentification d'un utilisateur. */ Loading src/UnicaenAuthentification/Authentication/Adapter/Shib.php +20 −8 Original line number Diff line number Diff line Loading @@ -138,15 +138,25 @@ class Shib extends AbstractAdapter public function logout(EventInterface $e) { $storage = $this->getStorage()->read(); if (is_array($storage)){ if (! isset($storage['identity'])) { return; } }else if (!$storage instanceof SessionIdentity) { return; } parent::logout($e); // désactivation de l'usurpation d'identité éventuelle $this->shibService->deactivateUsurpation(); /** * Si on souhaite que l'IDP Shibboleth gère la déconnexion * malgré qu'il puisse ne pas rediriger correctement (voir plus bas). */ if ($this->moduleOptions->getShib()['idp_logout'] && $storage->getType() === 'shib') { // URL vers laquelle on redirige après déconnexion $returnUrl = $this->router->assemble([], [ 'name' => 'zfcuser/logout', Loading @@ -157,6 +167,8 @@ class Shib extends AbstractAdapter $response = new Response(); $response->getHeaders()->addHeaderLine('Location', $shibbolethLogoutUrl); $response->setStatusCode(302); return $response; } /** * Problème : l'IDP Shibboleth ne redirige pas correctement vers l'URL demandée après déconnexion. Loading Loading
config/module.config.php +5 −0 Original line number Diff line number Diff line Loading @@ -175,6 +175,11 @@ $settings = [ */ //'logout_url' => '/Shibboleth.sso/Logout?return=', // NB: '?return=' semble obligatoire! /** * Autorise l'IDP à gérer la déconnexion */ 'idp_logout' => false, /* 'simulate' => [ 'eppn' => 'login@domain.fr', Loading
config/unicaen-authentification.local.php.dist +5 −0 Original line number Diff line number Diff line Loading @@ -77,6 +77,11 @@ return [ */ 'logout_url' => '/Shibboleth.sso/Logout?return=', // NB: '?return=' semble obligatoire! /** * Autorise l'IDP à gérer la déconnexion */ 'idp_logout' => false, /** * Simulation d'authentification d'un utilisateur. */ Loading
src/UnicaenAuthentification/Authentication/Adapter/Shib.php +20 −8 Original line number Diff line number Diff line Loading @@ -138,15 +138,25 @@ class Shib extends AbstractAdapter public function logout(EventInterface $e) { $storage = $this->getStorage()->read(); if (is_array($storage)){ if (! isset($storage['identity'])) { return; } }else if (!$storage instanceof SessionIdentity) { return; } parent::logout($e); // désactivation de l'usurpation d'identité éventuelle $this->shibService->deactivateUsurpation(); /** * Si on souhaite que l'IDP Shibboleth gère la déconnexion * malgré qu'il puisse ne pas rediriger correctement (voir plus bas). */ if ($this->moduleOptions->getShib()['idp_logout'] && $storage->getType() === 'shib') { // URL vers laquelle on redirige après déconnexion $returnUrl = $this->router->assemble([], [ 'name' => 'zfcuser/logout', Loading @@ -157,6 +167,8 @@ class Shib extends AbstractAdapter $response = new Response(); $response->getHeaders()->addHeaderLine('Location', $shibbolethLogoutUrl); $response->setStatusCode(302); return $response; } /** * Problème : l'IDP Shibboleth ne redirige pas correctement vers l'URL demandée après déconnexion. Loading