2015-08-11 3 views
0

Моя работа по каталогу до сих пор была первоначально NDS и eDirectory от Novell, а в последнее время MS Active Directory, но теперь мне теперь нужно работать непосредственно с ldap (OpenLdap 2.4 на Zimbra.)Разница между cn и ou in ldap

Я более чем немного запутался с именованием в LDAP, и я действительно не был в состоянии найти то, что я ищу в многочисленных поисков Google:

в Эдир и AD, когда объект был помечен cn=, он был листовым объектом, а объектом, помеченным ou=, был объект-контейнер. Но это не похоже на ldap.

Для instace, скажем, я хочу перечислить установленные схемы в моем дите, я могу использовать команду:

ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn=schema,cn=config dn 

Результаты возвращается:

dn: cn=schema,cn=config 
dn: cn={0}core,cn=schema,cn=config 
dn: cn={1}cosine,cn=schema,cn=config 
dn: cn={2}nis,cn=schema,cn=config 
dn: cn={3}inetorgperson,cn=schema,cn=config 

Есть ли документация, объясняя, почему объекты schema и config, которые являются явно контейнерными объектами, по-прежнему обозначаются как cn? Или кто-то может просто объяснить мне, когда следует использовать ярлык cn на объектах контейнера, а не на этикетке ou?

Возможно, это задокументировано в книге, которую я только что заказал у Amazon, «ABCs LDAP» Р. Вогмайер из Амазонки. Он должен прибыть на следующей неделе.

ответ

0

Лист и нелистовые не имеют к нему никакого отношения.

  • CN обозначает общее имя и является атрибутом нескольких связанных с человеком классов, таких как inetOrgPerson. Но нет ничего, что помешало бы ему быть атрибутом других классов, таких как organizationRole.
  • OU обозначает организационную единицу и является атрибутом класса organizationUnit.
  • В обоих случаях атрибут является частью DN объекта этих классов.

Обычно вы ожидаете, что объект с OU будет нелистовым, а человек - листом, но в нем нет ничего особенного.

+0

Ни CN, ни OU * need * не являются частью DN. Они могут быть (и часто), но это не обязательно. Пользователь DN создается пользователем, и единственная обязательная вещь в нем заключается в том, что он должен быть уникальным. Не существует правила, согласно которому CN или DN должны быть частью этого. – heiglandreas

0

Я могу понять ваш путаный бит, который вы взяли на себя самой сложной задачей, чтобы попытаться понять это, поскольку конфигурационная ветвь OpenLDAP - это особая вещь.

Одна вещь, чтобы иметь в виду, что объект-класс записи (и я всегда стараюсь не называть их «листьями» или «контейнерами»), определяет, должно ли OU или CN быть или может быть его атрибутом. В зависимости от установленных объектных классов может быть возможно (необязательно полезно) иметь как атрибуты в записи.

Итак, если вы знаете, использовать CN или OU, посмотрите на класс объектов.

По соглашению OU используется для описания OrganizationalUnit, как отдела внутри более крупной организации, тогда как CommonName можно использовать для чего-либо. И поскольку вы ищете и пытаетесь понять информацию LDAP в конфиг-части LDAP, на самом деле нет какой-либо организационной единицы. поэтому не определены ОП.

Я стараюсь избегать этих имен «лист» и «контейнер», поскольку это подразумевает, что контейнер представляет собой всего лишь набор вещей без привязок, которые в LDAP могут быть не такими. «Контейнер» может иметь больше доступных атрибутов, чем записи, хранящиеся внутри.

Существует также отличная книга O'Reilly о LDAP-администрировании, которая может быть интересной.

Надеюсь, что несколько помогает.

+0

Что такое «config-branch OpenLDAP»? – EJP

+0

При настройке OpenLDAP-сервера вы можете настроить конфигурацию с помощью файла конфигурации ** ** или части конфигурации внутри LDAP-сервера. Это часто называют конфигурацией «ветвь». Это ветвь «параллельна» тому, где хранятся данные. – heiglandreas