define ('LDAP_HOST', 'dc-server');
define ('LDAP_PORT', '389');
define ('LDAP_PREFIX', 'dc=unit,dc=corp,dc=com');
define ('LDAP_BASE', 'ou=Members,dc=intec,dc=tns-intec,dc=kz');
define ('LDAP_FILTER', 'sAMAccountName=');
define ('LDAP_DOMAIN', '@mysite.com');
if (!empty($_POST['login']) && !empty($_POST['password']))
{
$username = $_POST['login'];
$login = $_POST['login'].LDAP_DOMAIN;
$password = $_POST['password'];
$ldap = ldap_connect(LDAP_HOST,LDAP_PORT) or die("Cant connect to LDAP Server");
ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);
if ($ldap)
{
$bind = ldap_bind($ldap,$login,$password);
if ($bind)
{
$result = ldap_search($ldap,LDAP_BASE,"(&(memberOf=".LDAP_PREFIX.")(".LDAP_FILTER.$username."))");
$result_ent = ldap_get_entries($ldap,$result);
}
else
{die('Вы ввели неправильный логин или пароль. попробуйте еще раз');}
}
if ($result_ent['count'] != 0)
{exit;}
else
{die('К сожалению, вам доступ закрыт');}
}
Если вводить неправильный пароль или всё правильно, но пользователь не администратор домена то выводится