Re: Re: чужая адресная книга

От: Dmitry Akindinov <CGatePro_at_mx_ru>
Дата: Thu 07 Apr 2005 - 18:19:45 MSD


Hello, on 07.04.2005 18:12, Victor Sudakov at CGatePro@mx.ru wrote:

> Dmitry Akindinov wrote:

>>>>> 
>>>>>>> Есть адресная книга, совершенно никак не связанная с почтовыми
>>>>>>> доменами, размещенными на CGP. Допустим, пришла она мне в виде ldif и
>>>>>>> растет от dc=somecompany,dc=com, тогда как все наши домены растут от
>>>>>>> dc=tomsk,dc=ru. Задача - дать возможность пользователям CGP
>>>>>>> пользоваться этой книгой. Как ее лучше загнать в хранилище CGP ?
>>>>>>> 
>>>>>>> В openldap просто - объявляем в slapd.conf вторую базу:
>>>>>>> database        bdb
>>>>>>> suffix          "dc=somecompany,dc=com"
>>>>>>> 
>>>>>>> потом "slapadd -n2" и вуаля. А тут?
>>>>>> 
>>>>>> Создаете Storage Unit с subtree dc=somecompany,dc=com и импортируете
>>>>>> этот ldifю
>>>>> 
>>>>> 
>>>>> Тогда я перестаю понимать, что такое subtree.
>>>> 
>>>> Нечто очень похожее на путь в файловой системе, но записанный в обратном
>>>> порядке.

> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> Это скорее определение термина "dn".

Я бы сказал, что dn - это путь до объекта (файла), тогда как subtree - лишь его часть, путь (возможно - фиктивный) до некоторого узла (директории).

>>> Тогда что получится, если я импортирую этот LDIF прямо в хранилище <root> ?
>>> Не тот же ли самый результат?
>> 
>> не получится, так как узлы (директории в файловой системе) dc=com и
>> dc=somecompany,dc=com не существуют. Их можно создать и в <root>,
>> импортировав
>> 
>> dn: dc=com
>> objectClass: top
>> 
>> dn: dc=somecompany,dc=com
>> objectClass: top

>
> Это само собой разумеется, что если импортировать ldif, он должен
> содержать все промежуточные узлы. slapd тоже не даст импортировать
> такую базу, в которой есть объект uid=vasya,dc=somecompany,dc=com и
> при этом нет объектов dc=com и dc=somecompany,dc=com (хотя раньше
> давал, но в последних версиях всё стало строже).

Но в slapd.conf можно прописать хранилище с произвольным dn, не создавая промежуточных узлов. И потом работать с любыми dn (с указанными выше ограничениями), имеющими суффиксом этот произвольный dn, описанный в конфигурации slapd. Здесь - прямая аналогия со Storage Units в CGPro.

>> Но отдельное хранилище - это лучше. Можно потом легко убить и импортировать
>> данные заново.

>
> Это понятно, но неужели отдельное хранилище даст создать объект
> uid=vasya,dc=somecompany,dc=com при отсутствии объекта dc=com ?
> Или Вы хотите сказать, что создание отдельного хранилища с
> subtree = dc=somecompany,dc=com
> автоматически создаст в нем объекты dc=com и dc=somecompany,dc=com ?

Нет, объектов не будет, а вот использовать dc=somecompany,dc=com в суффиксе dn'ов реальных объектов будет можно, насколько я помню.

-- 
Best regards,
Dmitry Akindinov -- Stalker Labs
Получено Thu Apr 07 14:19:47 2005

Этот архив был сгенерирован hypermail 2.1.8 : Fri 24 Apr 2015 - 16:13:40 MSK