Ogólnie rzecz biorąc, chociaż atrybuty mogą wyglądać jak atrybuty w dowolnym systemie LDAP, atrybut hasła jest prawie zawsze specjalnym przypadkiem. Być może jest to ograniczone przez serwer LDAP jako szczególny przypadek. Być może ACL go chronią. Być może jest w stanie pisać, ale nie można go odczytać.
Często istnieje kilka atrybutów hasła (AD ma unicodePassword i userPassword) i zależy to od tego, które z nich należy zastosować. Novell / NetIQ eDirectory ma hasło użytkownika, które zależy od konfiguracji, co do wartości pod nim (pary kluczy RSA, nspmPassword lub proste hasło, które jest bardziej nieparzyste niż zwykły atrybut, ponieważ jest przechowywane w częściach w wielu atrybutach)
Niektóre serwery LDAP umożliwiają powiązanie z wartością skrótu, która odpowiada zapisanej wartości skrótu, a wartość skrótu może być możliwa do odzyskania, ale nieodwracalna.
Ale kluczem jest to, że nie powinno to mieć znaczenia. Ponieważ każdy serwer LDAP jest inny, musisz zastosować standardowe podejście do haseł LDAP, aby spróbować powiązać się z użytkownikiem przy użyciu podanej nazwy wyróżniającej i hasła. A jeśli nie podają nazwy wyróżniającej, wyszukaj uid = nazwa użytkownika lub cn = nazwa użytkownika lub jakikolwiek twój atrybut nazewnictwa, aby znaleźć pełną nazwę wyróżniającą.
Wreszcie należy pamiętać, że standard LDAP mówi, że połączenie z pustym hasłem zakończy się powodzeniem, ale jako połączenie anonimowe. Musisz więc upewnić się, że hasła, na które zezwalasz, nie są puste, w przeciwnym razie otrzymasz udane powiązanie i możliwe, że ktoś nieświadomie wpuści.