Какво е LDAP?
(1) Преди да въведем какво е LDAP, нека разгледаме едно нещо: "Какво е директория услуга?" ”
1. Директорията е специална база данни, която съхранява описателни, базирани на атрибути детайли с възможности за филтриране.
2. Той е динамичен, гъвкав и лесно мащабируем.
Например: организация и управление на персонала, телефонен указател, адресна книга.
(2) След като разберем услугата за директория, нека разгледаме въвеждането на LDAP:
LDAP (Light Directory Access Portocol), който е лек протокол за достъп до директория, базиран на стандарта X.500.
Директорията е база данни, оптимизирана за заявки, сърфиране и търсене, организираща данните в структура, подобна на файлова директория.
Директориалните бази данни се различават от релационните по това, че имат отлична производителност при четене, но слаба производителност при писане, и нямат сложни функции като обработка на транзакции и връщане назад, което ги прави неподходящи за съхранение на често модирани данни. Така че съдържанието по същество се използва за заявки, точно както и името му.
LDAP директория е система, състояща се от база данни с директории и набор от протоколи за достъп.
(3) Защо трябва да се използва
LDAP е отворен интернет стандарт, поддържащ кросплатформени интернет протоколи, широко признат в индустрията, а повечето продукти на пазара или в общността с отворен код са добавили поддръжка за LDAP, така че за този тип система няма нужда от индивидуална настройка, а само проста конфигурация чрез LDAP за удостоверяване и взаимодействие със сървъра. "Простото и грубо" може значително да намали разходите за многократна разработка и скачване.
Основните продукти на LDAP:
| | | | | Съхранение чрез текстова база данни, бърза скорост. | | | Базите данни, базирани на DB2, имат средна скорост. | | | Съхранението, базирано на текстова база данни, е бързо и рядко използвано. | | Microsoft Active Directory | Според потребителите на Windows система, скоростта на обработка на голям обем данни е средна, но е лесна за поддръжка, има голяма екосистема и е сравнително лесна за управление. | | | OpenLDAP е проект с отворен код, който е бърз, но не е масово приложение. |
Основен модел на LDAP
Всяка система и протокол ще има свой собствен модел, и LDAP не прави изключение – преди да разберем основния модел на LDAP, трябва да разберем няколко концепции от дървото на директорията на LDAP:
(1) Концепция за дърво на каталога
1. Дърво на директории: В система за услуги на директории целият набор от информация от директорията може да бъде представен като дърво на директорията, а всеки възел в дървото е запис.
2. Запис: Всеки запис е запис, като всеки запис има свое уникално разпознаваемо име (DN).
3. Клас обект: Набор от атрибути, съответстващи на тип обект, класът на обекта може да бъде наследен, така че необходимите атрибути на родителския клас също да бъдат наследени.
4. Атрибути: Опишете информацията за аспект на записа, атрибутът се състои от тип атрибут и една или повече стойности на атрибута, като атрибутите имат задължителни и незадължителни атрибути.
(2) DC, UID, OU, CN, SN, DN, RDN
| | | | | Частта с домейн името е разделена на няколко части под формата на пълно домейн име, като например example.com домейн става dc=example, dc=com (местоположението на запис) | | Потребителски идентификатор | User ID songtao.xu (ID на запис) | | | Организационните единици, организационните единици могат да съдържат различни други обекти (включително други организационни единици), като "oa group" (организацията, към която принадлежи даден запис) | | | Публични имена, като "Thomas Johansson" (името на запис) | | | | | | "uid=songtao.xu,ou=oa group,dc=example,dc=com", местоположението на запис (уникален) | | | Относителната дискриминация, подобно на относителните пътища във файлова система, е част от структурата на дървото на директориите, която няма нищо общо с нея, като например "uid=tom" или "cn=Thomas Johansson" |
Въведение в OpenLDAP
LDAP е лек протокол за достъп до директории (LDAP), който е имплементация на централизирана архитектура за управление на акаунти с отворен код и поддържа много версии на системата, като е възприет от мнозинството интернет компании.
LDAP предоставя и реализира информационната услуга на директорията, която е специална система за бази данни, която има добър ефект върху четенето, сърфирането и търсенето на данни. Директориалните услуги обикновено се използват за съдържане на описателна информация, базирана на атрибути, и поддръжка на сложни филтрационни функции, но OpenLDAP директориалните услуги не поддържат сложни политики за управление на транзакции или връщане назад, необходими за голям брой операции по обновяване на общи бази данни.
LDAP има два стандарта, а именно X.500 и LDAP. OpenLDAP е базиран на стандарта X.500 и премахва сложните функции на X.500, като може да бъде персонализиран с допълнителни разширения според собствените си нужди, но има и разлики от X.500, като например OpenLDAP поддържа TCP/IP протокол и др., а TCP/IP в момента е протоколът за достъп до интернет в Интернет.
OpenLDAP може да работи директно върху по-простия и по-общ TCP/IP или други надеждни транспортни протоколни слоеве, като избягва натоварването на OSI сесийния и презентационния слоеве, което прави установяването на връзки и обработката на пакети по-лесно и по-бързо, което го прави идеален за интернет и корпоративни мрежови приложения.
Информацията в директорията OpenLDAP се съхранява в дървовидна йерархия (подобно на DNS), а горният слой се нарича "базов DN", например "dc=mydomain, dc=org" или "o=mydomain.org", първият е по-гъвкав и се използва и в Windows AD. Под основната директория има много файлове и директории, и за логично разделяне на тези големи обеми данни, OpenLDAP използва OU (Организационно звено) както и други протоколи за обслужване на директории, които могат да се използват за представяне на вътрешни фирмени организации, като отдели и др., както и за представяне на оборудване, персонал и др. В същото време OU може да има и под-OU, които могат да се използват за представяне на по-подробни класификации.
Всеки запис в OpenLDAP има уникално име, което го отличава от другите записи – DN (Distinguished Name), а частта от "листа" се нарича RDN (Relative Identifier of User Entry). Например, cn в dn:cn=tom, ou=animals, dc=ilanni, dc=com е RDN, а RDN трябва да е уникален в OU.
По подразбиране OpenLDAP използва Berkeley DB като бекенд база данни, а базата данни Berkeley DB основно съхранява данни под формата на хеширани типове данни, като двойки ключ-стойност.
BerkeleyDB е специален тип база данни, оптимизирана за заявки и четене, използвана основно за търсене, сърфиране и актуализиране на операции с заявки, и обикновено има добър ефект върху записването на данни едновременно, като се правят заявки и търсене многократно. BerkeleyDB не поддържа високата паралелна пропускателна способност и сложните транзакционни операции, поддържани от транзакционните бази данни (MySQL, MariDB, Oracle и др.).
|