From e9fedf3e5cd63aea4da7a71f6647ee427c62fa49 Mon Sep 17 00:00:00 2001 From: Frederic Guillot Date: Sat, 5 Dec 2015 20:31:27 -0500 Subject: Rewrite of the authentication and authorization system --- app/User/OAuthUserProvider.php | 141 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 141 insertions(+) create mode 100644 app/User/OAuthUserProvider.php (limited to 'app/User/OAuthUserProvider.php') diff --git a/app/User/OAuthUserProvider.php b/app/User/OAuthUserProvider.php new file mode 100644 index 00000000..3879fa76 --- /dev/null +++ b/app/User/OAuthUserProvider.php @@ -0,0 +1,141 @@ +user = $user; + } + + /** + * Return true to allow automatic user creation + * + * @access public + * @return boolean + */ + public function isUserCreationAllowed() + { + return false; + } + + /** + * Get internal id + * + * @access public + * @return string + */ + public function getInternalId() + { + return ''; + } + + /** + * Get external id + * + * @access public + * @return string + */ + public function getExternalId() + { + return $this->user['id']; + } + + /** + * Get user role + * + * @access public + * @return string + */ + public function getRole() + { + return ''; + } + + /** + * Get username + * + * @access public + * @return string + */ + public function getUsername() + { + return ''; + } + + /** + * Get full name + * + * @access public + * @return string + */ + public function getName() + { + return $this->user['name']; + } + + /** + * Get user email + * + * @access public + * @return string + */ + public function getEmail() + { + return $this->user['email']; + } + + /** + * Get external group ids + * + * @access public + * @return array + */ + public function getExternalGroupIds() + { + return array(); + } + + /** + * Get extra user attributes + * + * @access public + * @return array + */ + public function getExtraAttributes() + { + return array(); + } +} -- cgit v1.2.3 From 73ce90ac568909f04d28f41492f99b66ba3fb037 Mon Sep 17 00:00:00 2001 From: Frederic Guillot Date: Sat, 5 Dec 2015 21:34:26 -0500 Subject: Remove unused use statements --- app/Api/User.php | 2 +- app/Controller/Base.php | 1 - app/Controller/Customfilter.php | 2 ++ app/Core/Security/AuthenticationManager.php | 1 - app/Core/Session/SessionManager.php | 1 - app/Helper/Url.php | 1 - app/Helper/User.php | 2 -- app/Model/ProjectDailyColumnStats.php | 2 -- app/Model/ProjectDailyStats.php | 2 -- app/User/DatabaseUserProvider.php | 1 - app/User/OAuthUserProvider.php | 1 - 11 files changed, 3 insertions(+), 13 deletions(-) (limited to 'app/User/OAuthUserProvider.php') diff --git a/app/Api/User.php b/app/Api/User.php index 078c82f1..06e305f2 100644 --- a/app/Api/User.php +++ b/app/Api/User.php @@ -2,7 +2,7 @@ namespace Kanboard\Api; -use Kanboard\Auth\Ldap; +use LogicException; use Kanboard\Core\Security\Role; use Kanboard\Core\Ldap\Client as LdapClient; use Kanboard\Core\Ldap\ClientException as LdapException; diff --git a/app/Controller/Base.php b/app/Controller/Base.php index 76948a0f..35ceee09 100644 --- a/app/Controller/Base.php +++ b/app/Controller/Base.php @@ -2,7 +2,6 @@ namespace Kanboard\Controller; -use Pimple\Container; use Kanboard\Core\Security\Role; /** diff --git a/app/Controller/Customfilter.php b/app/Controller/Customfilter.php index ef75a837..12cc8e78 100644 --- a/app/Controller/Customfilter.php +++ b/app/Controller/Customfilter.php @@ -2,6 +2,8 @@ namespace Kanboard\Controller; +use Kanboard\Core\Security\Role; + /** * Custom Filter management * diff --git a/app/Core/Security/AuthenticationManager.php b/app/Core/Security/AuthenticationManager.php index cced58c0..dbc41b09 100644 --- a/app/Core/Security/AuthenticationManager.php +++ b/app/Core/Security/AuthenticationManager.php @@ -4,7 +4,6 @@ namespace Kanboard\Core\Security; use LogicException; use Kanboard\Core\Base; -use Kanboard\Core\User\UserProviderInterface; use Kanboard\Event\AuthFailureEvent; use Kanboard\Event\AuthSuccessEvent; diff --git a/app/Core/Session/SessionManager.php b/app/Core/Session/SessionManager.php index 750711b0..776d02da 100644 --- a/app/Core/Session/SessionManager.php +++ b/app/Core/Session/SessionManager.php @@ -3,7 +3,6 @@ namespace Kanboard\Core\Session; use Kanboard\Core\Base; -use Kanboard\Core\Http\Request; /** * Session Manager diff --git a/app/Helper/Url.php b/app/Helper/Url.php index 3658ef5f..6ada8068 100644 --- a/app/Helper/Url.php +++ b/app/Helper/Url.php @@ -2,7 +2,6 @@ namespace Kanboard\Helper; -use Kanboard\Core\Http\Request; use Kanboard\Core\Base; /** diff --git a/app/Helper/User.php b/app/Helper/User.php index b242dbb4..101d8dbe 100644 --- a/app/Helper/User.php +++ b/app/Helper/User.php @@ -2,8 +2,6 @@ namespace Kanboard\Helper; -use Kanboard\Core\Security\Role; - /** * User helpers * diff --git a/app/Model/ProjectDailyColumnStats.php b/app/Model/ProjectDailyColumnStats.php index 4b75fff2..7c89283d 100644 --- a/app/Model/ProjectDailyColumnStats.php +++ b/app/Model/ProjectDailyColumnStats.php @@ -2,8 +2,6 @@ namespace Kanboard\Model; -use PicoDb\Database; - /** * Project Daily Column Stats * diff --git a/app/Model/ProjectDailyStats.php b/app/Model/ProjectDailyStats.php index 7ec1ee2c..e79af372 100644 --- a/app/Model/ProjectDailyStats.php +++ b/app/Model/ProjectDailyStats.php @@ -2,8 +2,6 @@ namespace Kanboard\Model; -use PicoDb\Database; - /** * Project Daily Stats * diff --git a/app/User/DatabaseUserProvider.php b/app/User/DatabaseUserProvider.php index b6d41186..9a0047b2 100644 --- a/app/User/DatabaseUserProvider.php +++ b/app/User/DatabaseUserProvider.php @@ -3,7 +3,6 @@ namespace Kanboard\User; use Kanboard\Core\User\UserProviderInterface; -use Kanboard\Core\Security\Role; /** * Database User Provider diff --git a/app/User/OAuthUserProvider.php b/app/User/OAuthUserProvider.php index 3879fa76..527fefde 100644 --- a/app/User/OAuthUserProvider.php +++ b/app/User/OAuthUserProvider.php @@ -3,7 +3,6 @@ namespace Kanboard\User; use Kanboard\Core\User\UserProviderInterface; -use Kanboard\Core\Security\Role; /** * OAuth User Provider -- cgit v1.2.3 From f9c676cf81d5ba11685c1b9aa8cab2e24048b305 Mon Sep 17 00:00:00 2001 From: Frederic Guillot Date: Wed, 13 Jan 2016 21:02:32 -0500 Subject: Change private properties to protected --- app/Core/Ldap/Client.php | 4 ++-- app/Core/Ldap/Entries.php | 4 ++-- app/Core/Ldap/Entry.php | 4 ++-- app/Core/Ldap/Group.php | 7 ++++--- app/Core/Ldap/Query.php | 8 ++++---- app/Core/Ldap/User.php | 7 ++++--- app/User/DatabaseUserProvider.php | 4 ++-- app/User/LdapUserProvider.php | 24 ++++++++++++------------ app/User/OAuthUserProvider.php | 4 ++-- app/User/ReverseProxyUserProvider.php | 4 ++-- 10 files changed, 36 insertions(+), 34 deletions(-) (limited to 'app/User/OAuthUserProvider.php') diff --git a/app/Core/Ldap/Client.php b/app/Core/Ldap/Client.php index 5d481cd3..63149ae3 100644 --- a/app/Core/Ldap/Client.php +++ b/app/Core/Ldap/Client.php @@ -15,10 +15,10 @@ class Client /** * LDAP resource * - * @access private + * @access protected * @var resource */ - private $ldap; + protected $ldap; /** * Establish LDAP connection diff --git a/app/Core/Ldap/Entries.php b/app/Core/Ldap/Entries.php index 3487541f..0e779342 100644 --- a/app/Core/Ldap/Entries.php +++ b/app/Core/Ldap/Entries.php @@ -13,10 +13,10 @@ class Entries /** * LDAP entries * - * @access private + * @access protected * @var array */ - private $entries = array(); + protected $entries = array(); /** * Constructor diff --git a/app/Core/Ldap/Entry.php b/app/Core/Ldap/Entry.php index e67dd625..0b99a58b 100644 --- a/app/Core/Ldap/Entry.php +++ b/app/Core/Ldap/Entry.php @@ -13,10 +13,10 @@ class Entry /** * LDAP entry * - * @access private + * @access protected * @var array */ - private $entry = array(); + protected $entry = array(); /** * Constructor diff --git a/app/Core/Ldap/Group.php b/app/Core/Ldap/Group.php index e11e8ecd..634d47ee 100644 --- a/app/Core/Ldap/Group.php +++ b/app/Core/Ldap/Group.php @@ -16,10 +16,10 @@ class Group /** * Query * - * @access private + * @access protected * @var Query */ - private $query; + protected $query; /** * Constructor @@ -43,7 +43,8 @@ class Group */ public static function getGroups(Client $client, $query) { - $self = new self(new Query($client)); + $className = get_called_class(); + $self = new $className(new Query($client)); return $self->find($query); } diff --git a/app/Core/Ldap/Query.php b/app/Core/Ldap/Query.php index 6ca4bc96..e03495ec 100644 --- a/app/Core/Ldap/Query.php +++ b/app/Core/Ldap/Query.php @@ -13,18 +13,18 @@ class Query /** * LDAP client * - * @access private + * @access protected * @var Client */ - private $client = null; + protected $client = null; /** * Query result * - * @access private + * @access protected * @var array */ - private $entries = array(); + protected $entries = array(); /** * Constructor diff --git a/app/Core/Ldap/User.php b/app/Core/Ldap/User.php index 0c9df63f..04c4cc7e 100644 --- a/app/Core/Ldap/User.php +++ b/app/Core/Ldap/User.php @@ -17,10 +17,10 @@ class User /** * Query * - * @access private + * @access protected * @var Query */ - private $query; + protected $query; /** * Constructor @@ -44,7 +44,8 @@ class User */ public static function getUser(Client $client, $username) { - $self = new self(new Query($client)); + $className = get_called_class(); + $self = new $className(new Query($client)); return $self->find($self->getLdapUserPattern($username)); } diff --git a/app/User/DatabaseUserProvider.php b/app/User/DatabaseUserProvider.php index 9a0047b2..fc626610 100644 --- a/app/User/DatabaseUserProvider.php +++ b/app/User/DatabaseUserProvider.php @@ -15,10 +15,10 @@ class DatabaseUserProvider implements UserProviderInterface /** * User properties * - * @access private + * @access protected * @var array */ - private $user = array(); + protected $user = array(); /** * Constructor diff --git a/app/User/LdapUserProvider.php b/app/User/LdapUserProvider.php index 9dfb2380..3a84bfea 100644 --- a/app/User/LdapUserProvider.php +++ b/app/User/LdapUserProvider.php @@ -15,50 +15,50 @@ class LdapUserProvider implements UserProviderInterface /** * LDAP DN * - * @access private + * @access protected * @var string */ - private $dn; + protected $dn; /** * LDAP username * - * @access private + * @access protected * @var string */ - private $username; + protected $username; /** * User name * - * @access private + * @access protected * @var string */ - private $name; + protected $name; /** * Email * - * @access private + * @access protected * @var string */ - private $email; + protected $email; /** * User role * - * @access private + * @access protected * @var string */ - private $role; + protected $role; /** * Group LDAP DNs * - * @access private + * @access protected * @var string[] */ - private $groupIds; + protected $groupIds; /** * Constructor diff --git a/app/User/OAuthUserProvider.php b/app/User/OAuthUserProvider.php index 527fefde..dec26250 100644 --- a/app/User/OAuthUserProvider.php +++ b/app/User/OAuthUserProvider.php @@ -23,10 +23,10 @@ abstract class OAuthUserProvider implements UserProviderInterface /** * User properties * - * @access private + * @access protected * @var array */ - private $user = array(); + protected $user = array(); /** * Constructor diff --git a/app/User/ReverseProxyUserProvider.php b/app/User/ReverseProxyUserProvider.php index 071330df..723b8155 100644 --- a/app/User/ReverseProxyUserProvider.php +++ b/app/User/ReverseProxyUserProvider.php @@ -16,10 +16,10 @@ class ReverseProxyUserProvider implements UserProviderInterface /** * Username * - * @access private + * @access protected * @var string */ - private $username = ''; + protected $username = ''; /** * Constructor -- cgit v1.2.3