URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 81415
[ Назад ]

Исходное сообщение
"Нужен совет по email web client?"

Отправлено raba , 31-Июл-08 10:46 
Нужен такой клиент(кроме sqwebmail), который умеет работат c ldap, и может брат юзеры из его базы(никакой свой mysql для хранения ползователей и все такое..), либо чтоб не требовал базу юзверы, а ссылался на IMAP допустим, если он разрешает, то и клиент пускает.

Содержание

Сообщения в этом обсуждении
"Нужен совет по email web client?"
Отправлено vsperson , 31-Июл-08 12:29 
>Нужен такой клиент(кроме sqwebmail), который умеет работат c ldap, и может брат
>юзеры из его базы(никакой свой mysql для хранения ползователей и все
>такое..), либо чтоб не требовал базу юзверы, а ссылался на IMAP
>допустим, если он разрешает, то и клиент пускает.

ldap не умеет, но для imap очень неплох http://roundcube.net/



"Нужен совет по email web client?"
Отправлено us.master , 31-Июл-08 12:31 
Называете приведенный ниже код auth.php, включаете во все файлы любого клиента (или в какой-то общий файл) и будет Вам счастье.


<?

$user    = $_SERVER['PHP_AUTH_USER'];
$passwd    = $_SERVER['PHP_AUTH_PW'];

$domain    = "mydomain.ru";
$full_user_name    = $user."@".$domain;

$dcs    = array();
$dcs    = explode(".",$domain);

$base_string    = "";

for ($i = 0; $i < count($dcs); $i++)
{
    $base_string    .= ",dc=".$dcs[$i];
}
$base_string = trim($base_string," ,");
$base_string = "ou=Mycompany,".$base_string;

$ds=@ldap_connect($domain);

if ($ds)
{
    $r = @ldap_bind($ds,$full_user_name,$passwd);
}

if ($user == '' or $r == '' or strlen($passwd) == 0)
{
    header('WWW-Authenticate: Basic realm="Private Area (Domain Authentification)"');
    header("HTTP/1.1 401 Unauthorized");
    print "<h3><font color=red>Authorization required.</font></h3>";
    exit();
}

?>