diff --git a/src/UnicaenAuth/Service/AuthorizeService.php b/src/UnicaenAuth/Service/AuthorizeService.php
index 47f837be7e379a7fb10235d9f13c8027c53f807e..44eb495e4fbd97e6b9fdb2295b8d2221bdf7d2ac 100644
--- a/src/UnicaenAuth/Service/AuthorizeService.php
+++ b/src/UnicaenAuth/Service/AuthorizeService.php
@@ -47,7 +47,18 @@ class AuthorizeService extends \BjyAuthorize\Service\Authorize
         $this->loaded && $this->loaded->__invoke();
         if ($this->loading) return 'bjyauthorize-identity';
 
-        return $this->getServiceUserContext()->getSelectedIdentityRole();
+        // on retourne par défaut le rôle sélectionné
+        $role = $this->getServiceUserContext()->getSelectedIdentityRole();
+        if ($role) return $role;
+
+        $roles = $this->getIdentityProvider()->getIdentityRoles();
+        // sinon, si on est uniquement authentifié et que user est défini, on retourne le rôle user
+        if (isset($roles['user'])) return $roles['user'];
+        // sinon, si guest est défini alors on retourne guest
+        if (isset($roles['guest'])) return $roles['guest'];
+
+        // sinon rien du tout!!
+        return null;
     }