add IMAP authenticator module (closes #485)
This commit is contained in:
parent
23f36f75ab
commit
04cdc8023d
1 changed files with 32 additions and 0 deletions
32
classes/auth/imap.php
Normal file
32
classes/auth/imap.php
Normal file
|
@ -0,0 +1,32 @@
|
|||
<?php
|
||||
/* Requires php-imap
|
||||
Put the following options in config.php:
|
||||
|
||||
define('IMAP_AUTH_SERVER', 'your.imap.server:port');
|
||||
define('IMAP_AUTH_OPTIONS', '/tls/novalidate-cert/norsh');
|
||||
// More about options: http://php.net/manual/ru/function.imap-open.php
|
||||
|
||||
*/
|
||||
|
||||
class Auth_Imap extends Auth_Base {
|
||||
|
||||
function authenticate($login, $password) {
|
||||
|
||||
if ($login && $password) {
|
||||
$imap = imap_open(
|
||||
"{".IMAP_AUTH_SERVER.IMAP_AUTH_OPTIONS."}INBOX",
|
||||
$login,
|
||||
$password);
|
||||
|
||||
if ($imap) {
|
||||
imap_close($imap);
|
||||
|
||||
return $this->auto_create_user($login);
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
Loading…
Reference in a new issue