Přihlášení přes LDAP ne-anonymním bindem
- egin_28
- Člen | 10
Zdravím,
toto nejspíš nebude problém Nette, ale přeci jen chci požádat o radu.
Po updatu našeho LDAPu od Microfocus vyskočila tato hláška při přihlášení do aplikace prostřednictvím LDAPu
ldap_bind(): Unable to bind to server: Confidentiality required
Údajně nová verze neumožňuje anonymní bindování.
Nesetkal se někdo s tímto problémem?
Pro představu přikládám kód pro autentizaci s LDAPem.
<?php
$ldapconn = ldap_connect('1xx.xx.xx.xx') or die('DIE');
$filter = 'groupMembership=cn=GroupName,ou=Groups,o=Tree';
$baseDN = 'ou=Users,o=Tree';
$attribute = array('groupmembership=cn=GroupName,ou=groups,o=tree', 'dn');
$ldaprdn = 'cn=' . $username . ',ou=Users,o=Tree';
$ldappass = $password;
$search = ldap_search($ldapconn, $baseDN, $filter, $attribute);
$entries = ldap_get_entries($ldapconn, $search);
$groupCheck = array_column($entries, 'dn');
function lowerCaseArrayCompare($ldaprdn, $groupCheck)
{
return in_array(strtolower($ldaprdn), array_map('strtolower', $groupCheck));
}
try {
if (lowerCaseArrayCompare($ldaprdn, $groupCheck)) {
$ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);
restore_error_handler();
return $ldapbind;
} else echo 'Cant access';
}
?>