mirror of
https://github.com/YunoHost-Apps/kanboard_ynh.git
synced 2024-09-03 19:36:17 +02:00
Remove ReverseProxyLdap plugin
This commit is contained in:
parent
1b95053b9f
commit
00a82fdf05
7 changed files with 1 additions and 180 deletions
|
@ -127,7 +127,7 @@ define('LDAP_GROUP_FILTER', '');
|
||||||
define('LDAP_GROUP_ATTRIBUTE_NAME', 'cn');
|
define('LDAP_GROUP_ATTRIBUTE_NAME', 'cn');
|
||||||
|
|
||||||
// Enable/disable the reverse proxy authentication
|
// Enable/disable the reverse proxy authentication
|
||||||
define('REVERSE_PROXY_AUTH', false);
|
define('REVERSE_PROXY_AUTH', true);
|
||||||
|
|
||||||
// Header name to use for the username
|
// Header name to use for the username
|
||||||
define('REVERSE_PROXY_USER_HEADER', 'REMOTE_USER');
|
define('REVERSE_PROXY_USER_HEADER', 'REMOTE_USER');
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
<IfModule mod_rewrite.c>
|
|
||||||
Options -MultiViews
|
|
||||||
|
|
||||||
SetEnv HTTP_MOD_REWRITE On
|
|
||||||
|
|
||||||
RewriteEngine On
|
|
||||||
RewriteCond %{REQUEST_FILENAME} !-f
|
|
||||||
RewriteRule ^ index.php [QSA,L]
|
|
||||||
</IfModule>
|
|
||||||
|
|
||||||
<FilesMatch "(kanboard|config.php|config.default.php)">
|
|
||||||
<IfModule mod_version.c>
|
|
||||||
<IfVersion >= 2.3>
|
|
||||||
Require all denied
|
|
||||||
</IfVersion>
|
|
||||||
<IfVersion < 2.3>
|
|
||||||
Order allow,deny
|
|
||||||
Deny from all
|
|
||||||
</IfVersion>
|
|
||||||
</IfModule>
|
|
||||||
|
|
||||||
<IfModule !mod_version.c>
|
|
||||||
Order allow,deny
|
|
||||||
Deny from all
|
|
||||||
</IfModule>
|
|
||||||
</FilesMatch>
|
|
|
@ -1,66 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace Kanboard\Plugin\ReverseProxyLdap\Auth;
|
|
||||||
|
|
||||||
use Kanboard\Auth\ReverseProxyAuth;
|
|
||||||
use Kanboard\Core\Ldap\Client as LdapClient;
|
|
||||||
use Kanboard\Core\Ldap\ClientException as LdapException;
|
|
||||||
use Kanboard\Core\Ldap\User as LdapUser;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Reverse-Proxy Ldap Authentication Provider
|
|
||||||
*
|
|
||||||
* @package auth
|
|
||||||
* @author Frederic Guillot
|
|
||||||
*/
|
|
||||||
class ReverseProxyLdapAuth extends ReverseProxyAuth
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Get authentication provider name
|
|
||||||
*
|
|
||||||
* @access public
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return 'ReverseProxyLdap';
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Authenticate the user
|
|
||||||
*
|
|
||||||
* @access public
|
|
||||||
* @return boolean
|
|
||||||
*/
|
|
||||||
public function authenticate()
|
|
||||||
{
|
|
||||||
try {
|
|
||||||
|
|
||||||
$username = $this->request->getRemoteUser();
|
|
||||||
|
|
||||||
if (! empty($username)) {
|
|
||||||
|
|
||||||
$client = LdapClient::connect();
|
|
||||||
$user = LdapUser::getUser($client, $username);
|
|
||||||
|
|
||||||
if ($user === null) {
|
|
||||||
$this->logger->info('User not found in LDAP server');
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($user->getUsername() === '') {
|
|
||||||
throw new LogicException('Username not found in LDAP profile, check the parameter LDAP_USER_ATTRIBUTE_USERNAME');
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->userInfo = $user;
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (LdapException $e) {
|
|
||||||
$this->logger->error($e->getMessage());
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
The MIT License (MIT)
|
|
||||||
|
|
||||||
Copyright (c) 2015 Frédéric Guillot
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
|
||||||
in the Software without restriction, including without limitation the rights
|
|
||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
copies of the Software, and to permit persons to whom the Software is
|
|
||||||
furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in
|
|
||||||
all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
THE SOFTWARE.
|
|
|
@ -1,3 +0,0 @@
|
||||||
all:
|
|
||||||
@ echo "Build archive for plugin ${plugin} version=${version}"
|
|
||||||
@ git archive HEAD --prefix=${plugin}/ --format=zip -o ${plugin}-${version}.zip
|
|
|
@ -1,40 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace Kanboard\Plugin\ReverseProxyLdap;
|
|
||||||
|
|
||||||
use Kanboard\Core\Plugin\Base;
|
|
||||||
use Kanboard\Plugin\ReverseProxyLdap\Auth\ReverseProxyLdapAuth;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Reverse-Proxy Authentication with LDAP support
|
|
||||||
*
|
|
||||||
* @package reverseproxyldap
|
|
||||||
* @author Frederic Guillot
|
|
||||||
*/
|
|
||||||
class Plugin extends Base
|
|
||||||
{
|
|
||||||
public function initialize()
|
|
||||||
{
|
|
||||||
$this->authenticationManager->register(new ReverseProxyLdapAuth($this->container));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getPluginDescription()
|
|
||||||
{
|
|
||||||
return 'Authenticate users with Reverse-Proxy method but populate user information from the LDAP directory';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getPluginAuthor()
|
|
||||||
{
|
|
||||||
return 'Frédéric Guillot';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getPluginVersion()
|
|
||||||
{
|
|
||||||
return '1.0.0';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getPluginHomepage()
|
|
||||||
{
|
|
||||||
return 'https://github.com/kanboard/plugin-reverse-proxy-ldap';
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,23 +0,0 @@
|
||||||
Reverse-Proxy Authentication plugin with LDAP support for Kanboard
|
|
||||||
==================================================================
|
|
||||||
|
|
||||||
Authenticate users with Reverse-Proxy method but populate user information from the LDAP directory.
|
|
||||||
|
|
||||||
Author
|
|
||||||
------
|
|
||||||
|
|
||||||
- Frédéric Guillot
|
|
||||||
- License MIT
|
|
||||||
|
|
||||||
Installation
|
|
||||||
------------
|
|
||||||
|
|
||||||
- Create a folder **plugins/ReverseProxyLdap** or uncompress the latest archive in the folder **plugins**
|
|
||||||
- Copy all files under this directory
|
|
||||||
|
|
||||||
Configuration
|
|
||||||
-------------
|
|
||||||
|
|
||||||
- You must have LDAP configured in proxy mode in Kanboard
|
|
||||||
- Reverse-Proxy server configured correctly, the config parameter `REVERSE_PROXY_USER_HEADER` must be defined
|
|
||||||
- You **don't need** to set to `true` those constants: `LDAP_AUTH` and `REVERSE_PROXY_AUTH`
|
|
Loading…
Reference in a new issue