32 lines
741 B
PHP
32 lines
741 B
PHP
<?php
|
|
// {{{ICINGA_LICENSE_HEADER}}}
|
|
// {{{ICINGA_LICENSE_HEADER}}}
|
|
|
|
namespace Icinga\Authentication;
|
|
|
|
class Backend
|
|
{
|
|
/**
|
|
* @var UserBackend
|
|
*/
|
|
protected $userBackend;
|
|
|
|
public function __construct($config)
|
|
{
|
|
$this->config = $config;
|
|
$userbackend = ucwords(strtolower($config->users->backend));
|
|
$class = '\\Icinga\\Authentication\\' . $userbackend . 'UserBackend';
|
|
$this->userBackend = new $class($config->users);
|
|
}
|
|
|
|
public function hasUsername($username)
|
|
{
|
|
return $this->userBackend->hasUsername($username);
|
|
}
|
|
|
|
public function authenticate($username, $password = null)
|
|
{
|
|
return $this->userBackend->authenticate($username, $password);
|
|
}
|
|
}
|