Skip to content
Snippets Groups Projects
Commit 258638bc authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

Possibilité de reconnaître un compte utilisateur local.

parent 79481be8
No related branches found
No related tags found
No related merge requests found
...@@ -14,6 +14,9 @@ use Doctrine\ORM\Mapping as ORM; ...@@ -14,6 +14,9 @@ use Doctrine\ORM\Mapping as ORM;
*/ */
abstract class AbstractUser implements UserInterface, ProviderInterface abstract class AbstractUser implements UserInterface, ProviderInterface
{ {
const PASSWORD_LDAP = 'ldap';
const PASSWORD_SHIB = 'shib';
/** /**
* @var int * @var int
* @ORM\Id * @ORM\Id
...@@ -246,6 +249,22 @@ abstract class AbstractUser implements UserInterface, ProviderInterface ...@@ -246,6 +249,22 @@ abstract class AbstractUser implements UserInterface, ProviderInterface
$this->roles->add($role); $this->roles->add($role);
} }
/**
* Retourne true si cet utilisateur est local.
*
* Un utilisateur est local s'il ne résulte pas d'une authentification LDAP ou Shibboleth.
* Son mot de passe est chiffré dans la table des utilisateurs.
*
* @return bool
*/
public function isLocal()
{
return ! in_array($this->getPassword(), [
AbstractUser::PASSWORD_LDAP,
AbstractUser::PASSWORD_SHIB,
]);
}
/** /**
* *
* @return string * @return string
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
namespace UnicaenAuth\Entity\Shibboleth; namespace UnicaenAuth\Entity\Shibboleth;
use UnicaenAuth\Entity\Db\AbstractUser;
use ZfcUser\Entity\UserInterface; use ZfcUser\Entity\UserInterface;
class ShibUser implements UserInterface class ShibUser implements UserInterface
...@@ -200,7 +201,7 @@ class ShibUser implements UserInterface ...@@ -200,7 +201,7 @@ class ShibUser implements UserInterface
*/ */
public function getPassword() public function getPassword()
{ {
return 'shib'; return AbstractUser::PASSWORD_SHIB;
} }
/** /**
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment