Jak wytłumaczysz LDAP sysadminowi, który o nim słyszał i być może wchodził z nim w interakcje, ale tak naprawdę go nie zrozumiał?
Analogie są w porządku, ale proszę podać kilka istotnych szczegółów technicznych, aby pomóc je ugruntować.
Wyjaśniono w duchu usługi Active Directory
Odpowiedzi:
Ten artykuł napisałem kilka lat temu, który wyjaśnia podstawy LDAP
źródło
LDAP (Lightweight Directory Access Protocol) to protokół na poziomie aplikacji, który pozwala klientom łączyć się ze zgodnymi usługami katalogowymi w celu manipulowania jednostkami katalogowymi lub przeszukiwania katalogu w celu uzyskania informacji. Jedną z jego głównych zalet jest zapewnienie standardowego interfejsu dla systemów na wielu platformach.
W większości systemów katalogowych LDAP nie jest jedynym interfejsem dostępnym do komunikacji z serwerem. Zwykle istnieją inne natywne interfejsy, które mogą zapewnić wydajność i inne korzyści.
Standardowa koncepcja sesji LDAP jest następująca:
Zapytania można wykonać w następujący sposób:
Ponieważ katalogi mogą być bardzo rozproszone i zawierają nadmierną ilość informacji, administratorom katalogów zazwyczaj daje się możliwość ograniczenia zapytań LDAP do określonej liczby wyników (1000 jest częstą wartością maksymalną dla zestawu wyników).
źródło
Pomyśl o tym jak o bazie danych zorganizowanej w drzewie, więc na przykład możesz mieć typową strukturę firmy zorganizowaną w naturalny sposób. Firma najwyższego poziomu, z grupami / działami pod nią i pracownikami na końcu, którzy mogą mieć wiele właściwości (takich jak imię i nazwisko, telefon, poczta, adres itp.). Następnie powiedz mu, że nadaje się również do wszystkich innych danych, które są zorganizowane w podobny sposób i że jest dostępny przez otwarty protokół z różnych platform / języków.
Ponadto z wikipedii: „Katalog jest zbiorem obiektów z atrybutami uporządkowanymi w sposób logiczny i hierarchiczny. Najczęstszym przykładem jest książka telefoniczna, która składa się z szeregu nazwisk (osób lub organizacji) uporządkowanych alfabetycznie, z do każdego nazwiska dołączony jest adres i numer telefonu. ”
To najbardziej przyjazne dla początkującego wyjaśnienie, jakie mogę wymyślić, bez wchodzenia w szczegóły techniczne.
źródło
Jest to scentralizowany system mający na celu zapewnienie szybkiego dostępu do danych, w których rzeczywiste dane są ustrukturyzowane w formie drzewa. Językiem używanym do komunikowania się z tym scentralizowanym systemem jest LDAP, który jest protokołem podobnym do POP i IMAP. Ma możliwość aktualizowania i wyszukiwania danych w całym drzewie.
źródło
Po pierwsze, sam LDAP jest tylko protokołem, nie robi nic, chyba że istnieje serwer LDAP, z którym mógłby współpracować.
Umożliwia dostęp do katalogu na serwerze LDAP; dobrą analogią byłby papierowy spis telefonów lub spis usług (ten drugi jest prawdopodobnie lepszy). Jeśli chcesz znaleźć miejsce na naprawę samochodu, zakładając, że nie znasz lokalnych warsztatów, możesz poszukać katalogu usług w formie papierowej, aby znaleźć mechaników w Twojej okolicy.
Podobnie LDAP umożliwia wyszukiwanie informacji w katalogu zgodnym z LDAP działającym na serwerze. Każda pozycja w katalogu jest „obiektem”, który może mieć różne właściwości, a aplikacja, która wchodzi w interakcję z katalogiem, oczekuje, że elementy zostaną sformatowane w określony sposób. Dzięki swojej konstrukcji jest elastyczny i rozszerzalny, więc nie jesteś ograniczony do tego, co ktoś mógł pomyśleć.
Wracając do analogii mechanicznej, informacje mogą obejmować imię i nazwisko, adres, koszt za godzinę, niezależnie od tego, czy jest znany z sabotowania twojego samochodu, aby mógł uzyskać od ciebie dodatkowe interesy, rozmiar jelit piwnych i tak dalej. Mechanika samochodowa może być przechowywana w jednym węźle drzewa katalogów, mechanicy hi-fi mogą być przechowywani w innym. Każdy taki typ obiektu nie musi mieć tych samych właściwości, więc niektóre informacje dla mechanika samochodowego nie pojawią się u specjalisty od sprzętu hi-fi, który z kolei będzie miał swój własny zestaw unikalnych informacji, które odnoszą się wyłącznie do niego.
Najczęściej jest używany do przechowywania informacji o użytkownikach w sieci, ale teoretycznie możesz w to wszystko włożyć . W scenariuszu sieciowym mówimy o danych organizacyjnych dotyczących danej osoby, a także być może informacji o bezpieczeństwie, informacji o konfiguracji aplikacji i tak dalej. Ponieważ wszystko jest przechowywane centralnie, możesz łatwo i elastycznie scentralizować DUŻO informacji w jednej bazie danych zoptymalizowanej pod kątem ultraszybkich wyszukiwań i dostępnej dla dowolnej zgodnej aplikacji.
źródło