Update plugin doc

This commit is contained in:
Frederic Guillot
2015-12-06 14:48:59 -05:00
parent 6d4286ec66
commit 70c65268fe
17 changed files with 380 additions and 59 deletions

View File

@@ -23,7 +23,7 @@ class LdapAuth extends Base implements PasswordAuthenticationProviderInterface
* @access private
* @var \Kanboard\User\LdapUserProvider
*/
private $user = null;
private $userInfo = null;
/**
* Username
@@ -62,8 +62,8 @@ class LdapAuth extends Base implements PasswordAuthenticationProviderInterface
{
try {
$ldap = LdapClient::connect($this->getLdapUsername(), $this->getLdapPassword());
$user = LdapUser::getUser($ldap, $this->getLdapUserPattern());
$client = LdapClient::connect($this->getLdapUsername(), $this->getLdapPassword());
$user = LdapUser::getUser($client, $this->username);
if ($user === null) {
$this->logger->info('User not found in LDAP server');
@@ -74,8 +74,8 @@ class LdapAuth extends Base implements PasswordAuthenticationProviderInterface
throw new LogicException('Username not found in LDAP profile, check the parameter LDAP_USER_ATTRIBUTE_USERNAME');
}
if ($ldap->authenticate($user->getDn(), $this->password)) {
$this->user = $user;
if ($client->authenticate($user->getDn(), $this->password)) {
$this->userInfo = $user;
return true;
}
@@ -94,7 +94,7 @@ class LdapAuth extends Base implements PasswordAuthenticationProviderInterface
*/
public function getUser()
{
return $this->user;
return $this->userInfo;
}
/**
@@ -119,21 +119,6 @@ class LdapAuth extends Base implements PasswordAuthenticationProviderInterface
$this->password = $password;
}
/**
* Get LDAP user pattern
*
* @access public
* @return string
*/
public function getLdapUserPattern()
{
if (! LDAP_USER_FILTER) {
throw new LogicException('LDAP user filter empty, check the parameter LDAP_USER_FILTER');
}
return sprintf(LDAP_USER_FILTER, $this->username);
}
/**
* Get LDAP username (proxy auth)
*

View File

@@ -8,7 +8,7 @@ use Kanboard\Core\Security\SessionCheckProviderInterface;
use Kanboard\User\ReverseProxyUserProvider;
/**
* ReverseProxy Authentication Provider
* Reverse-Proxy Authentication Provider
*
* @package auth
* @author Frederic Guillot
@@ -18,10 +18,10 @@ class ReverseProxyAuth extends Base implements PreAuthenticationProviderInterfac
/**
* User properties
*
* @access private
* @access protected
* @var \Kanboard\User\ReverseProxyUserProvider
*/
private $user = null;
protected $userInfo = null;
/**
* Get authentication provider name
@@ -45,7 +45,7 @@ class ReverseProxyAuth extends Base implements PreAuthenticationProviderInterfac
$username = $this->request->getRemoteUser();
if (! empty($username)) {
$this->user = new ReverseProxyUserProvider($username);
$this->userInfo = new ReverseProxyUserProvider($username);
return true;
}
@@ -71,6 +71,6 @@ class ReverseProxyAuth extends Base implements PreAuthenticationProviderInterfac
*/
public function getUser()
{
return $this->user;
return $this->userInfo;
}
}

View File

@@ -34,18 +34,18 @@ class User
}
/**
* Get user profile (helper)
* Get user profile
*
* @static
* @access public
* @param Client $client
* @param string $query
* @param string $username
* @return array
*/
public static function getUser(Client $client, $query)
public static function getUser(Client $client, $username)
{
$self = new self(new Query($client));
return $self->find($query);
return $self->find($self->getLdapUserPattern($username));
}
/**
@@ -204,4 +204,20 @@ class User
return LDAP_USER_BASE_DN;
}
/**
* Get LDAP user pattern
*
* @access public
* @param string $username
* @return string
*/
public function getLdapUserPattern($username)
{
if (! LDAP_USER_FILTER) {
throw new LogicException('LDAP user filter empty, check the parameter LDAP_USER_FILTER');
}
return sprintf(LDAP_USER_FILTER, $username);
}
}

View File

@@ -289,7 +289,7 @@ class User extends Base
$result = $this->db->table(self::TABLE)->eq('id', $values['id'])->update($values);
// If the user is connected refresh his session
if (SessionManager::isOpen() && $this->userSession->getId() == $values['id']) {
if ($this->userSession->getId() == $values['id']) {
$this->userSession->initialize($this->getById($this->userSession->getId()));
}

View File

@@ -8,7 +8,7 @@
<?= $this->form->hidden('id', $values) ?>
<?= $this->form->label(t('Username'), 'username') ?>
<?= $this->form->text('username', $values, $errors, array('required', $values['is_ldap_user'] == 1 ? 'readonly' : '', 'maxlength="50"')) ?>
<?= $this->form->text('username', $values, $errors, array('required', isset($values['is_ldap_user']) && $values['is_ldap_user'] == 1 ? 'readonly' : '', 'maxlength="50"')) ?>
<?= $this->form->label(t('Name'), 'name') ?>
<?= $this->form->text('name', $values, $errors) ?>