From f40a5f90e3112a08479dafb7729f85bddd145f8c Mon Sep 17 00:00:00 2001 From: Bertrand GAUTHIER <bertrand.gauthier@unicaen.fr> Date: Mon, 11 Jan 2021 17:43:43 +0100 Subject: [PATCH] =?UTF-8?q?Adapter=20d'auth=20Shib=20:=20l'enregistrement?= =?UTF-8?q?=20de=20l'utilisateur=20authentifi=C3=A9=20dans=20la=20BDD=20av?= =?UTF-8?q?ait=20saut=C3=A9=20!?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/UnicaenAuth/Authentication/Adapter/Shib.php | 17 +++++++++++++++++ .../Adapter/ShibAdapterFactory.php | 5 +++++ 2 files changed, 22 insertions(+) diff --git a/src/UnicaenAuth/Authentication/Adapter/Shib.php b/src/UnicaenAuth/Authentication/Adapter/Shib.php index 8222f89..c7de545 100644 --- a/src/UnicaenAuth/Authentication/Adapter/Shib.php +++ b/src/UnicaenAuth/Authentication/Adapter/Shib.php @@ -5,6 +5,7 @@ namespace UnicaenAuth\Authentication\Adapter; use UnicaenAuth\Controller\AuthController; use UnicaenAuth\Options\Traits\ModuleOptionsAwareTrait; use UnicaenAuth\Service\Traits\ShibServiceAwareTrait; +use UnicaenAuth\Service\User; use Zend\Authentication\AuthenticationService; use Zend\Authentication\Exception\UnexpectedValueException; use Zend\Authentication\Result as AuthenticationResult; @@ -59,6 +60,19 @@ class Shib extends AbstractAdapter $this->router = $router; } + /** + * @var User + */ + private $userService; + + /** + * @param User $userService + */ + public function setUserService(User $userService) + { + $this->userService = $userService; + } + /** * Réalise l'authentification. * @@ -118,6 +132,9 @@ class Shib extends AbstractAdapter $this->getStorage()->write($storage); $e->setCode(AuthenticationResult::SUCCESS) ->setMessages(['Authentication successful.']); + + /* @var $userService User */ + $this->userService->userAuthenticated($shibUser); } /** diff --git a/src/UnicaenAuth/Authentication/Adapter/ShibAdapterFactory.php b/src/UnicaenAuth/Authentication/Adapter/ShibAdapterFactory.php index 09cffd4..7c8f54e 100644 --- a/src/UnicaenAuth/Authentication/Adapter/ShibAdapterFactory.php +++ b/src/UnicaenAuth/Authentication/Adapter/ShibAdapterFactory.php @@ -5,6 +5,7 @@ namespace UnicaenAuth\Authentication\Adapter; use Interop\Container\ContainerInterface; use UnicaenAuth\Options\ModuleOptions; use UnicaenAuth\Service\ShibService; +use UnicaenAuth\Service\User; use Zend\Authentication\AuthenticationService; use Zend\Authentication\Storage\Session; use Zend\Router\RouteInterface; @@ -45,6 +46,10 @@ class ShibAdapterFactory $router = $container->get('router'); $adapter->setRouter($router); + /** @var User $userService */ + $userService = $container->get('unicaen-auth_user_service'); + $adapter->setUserService($userService); + $options = array_merge( $container->get('zfcuser_module_options')->toArray(), $container->get('unicaen-auth_module_options')->toArray()); -- GitLab