2013-06-08 12 views
8

Witam Próbuję użyć mojego serwera testowego Ldap do uwierzytelnienia użytkowników w openca.Serwer LDAP, który jest moją bazą dn

Jestem obecnie łączenia przez phpldapadmin z:

logowania dn: cn = admin, dc = example, dc = com
Hasło: mojehasło

ale na openca coś się dzieje źle ... w datasources.xml znalazłem ustawienia konfiguracji lDAP i prosi o

<name>basedn</name> 

który jest dla mnie oparta? Próbowałem już

cn=admin,dc=example,dc=com 

i

dc=example,dc=com 

mogę połączyć się z LDAP LDAP Admin Explorer też.

Dzięki!

Odpowiedz

17

Podstawą dn jest dc=example,dc=com.

Nie wiem o opence, ale spróbuję tej odpowiedzi, ponieważ do tej pory ruch był niewielki.

Baza dn to punkt, w którym serwer będzie wyszukiwał użytkowników. Chciałbym więc po prostu użyć nazwy admin jako nazwy logowania.

Jeśli openca zachowuje się jak większość ldap świadomych zastosowań, to co się wydarzy:

  1. wyszukiwania LDAP dla użytkownika admin będą wykonywane przez serwer wyjściowej w dn bazowej (dc=example,dc=com).
  2. Po znalezieniu użytkownika zostanie użyty pełny kod dn (cn=admin,dc=example,dc=com) w celu powiązania z dostarczonym hasłem.
  3. Serwer LDAP będzie mieszał hasło i porównywał je z zapisaną wartością skrótu. Jeśli pasuje, jesteś w.

Pierwsze kroki 1 to najtrudniejsza część, ale głównie dlatego, że nie robimy tego często. Rzeczy, które musisz uwzględnić w pliku konfiguracyjnym, to:

  • Twoja aplikacja użyje do powiązania z serwerem LDAP. Zdarza się to podczas uruchamiania aplikacji, zanim użytkownik zostanie uwierzytelniony. Będziesz musiał dostarczyć pełny dn, może coś w rodzaju cn=admin,dc=example,dc=com.
  • Metoda uwierzytelniania. Zwykle jest to "proste wiązanie".
  • Filtr wyszukiwania użytkowników. Sprawdź atrybut o nazwie objectClass dla swojego użytkownika admin. Będzie to inetOrgPerson lub user. Będą tacy jak top, możesz ich zignorować. W konfiguracji openca powinien istnieć ciąg taki jak (objectClass=inetOrgPerson). Cokolwiek to jest, upewnij się, że pasuje do obiektu Klasy użytkownika twojego administratora. Możesz określić dwie klasy obiektów za pomocą tego filtru wyszukiwania (|(objectClass=inetOrgPerson)(objectClass=user)).

Pobierz przeglądarkę LDAP, taką jak Apache's Directory Studio. Połącz się, używając referencji aplikacji, aby zobaczyć, co widzi twoja aplikacja.

+0

Konfigurowałem LDAP, używając innych narzędzi, korzystając z podobnych samouczków jak OP. Okazało się, że dn dla mojego konta administratora to "cn = admin, cn = users, dc = example, dc = com". Możliwe, że będziesz musiał ustawić nazwę podstawową na "cn = users, dc = example, dc = com" – GroundZero

Powiązane problemy