* @license http://www.gnu.org/licenses/gpl-2.0.txt GPL, version 2 * @author Icinga Development Team */ // {{{ICINGA_LICENSE_HEADER}}}} namespace Icinga\Authentication; interface UserBackend { /** * Creates a new object * @param $config */ public function __construct($config); /** * Test if the username exists * @param Credentials $credentials * @return boolean */ public function hasUsername(Credentials $credentials); /** * Authenticate * @param Credentials $credentials * @return User */ public function authenticate(Credentials $credentials); }