(продолжение)
При этом пользователь успешно создаётся, но является слегка "кривым": при попытке его открыть в ConsoleOne вываливается сообщение об ошибке и ничего, толком, не отображается. Причина в том, что ему прописывается некорректное значение атрибута
Home Directory: первый компонент этого атрибута, который должен содержать ссылку на объект "том", пуст; а компонент, содержащий путь на этом томе, содержит только имя пользователя (игнорируя промежуточные пути из шаблона). Если поправить этот атрибут (используя LDAP Browser или старый NetWare Administrator), то и в ConsoleOne потом тоже всё отображается корректно. Сама директория в файловой системе при этом не создаётся.
Обращает на себя внимание, что в логе при обращении к шаблону (объекту Template) используется мешанина из slash- и LDAP-форматов, а при обращении к объекту User используется только slash-формат:
Reading UserTemplate values: CN=UserTemplate,O=Org
Reading values from UserTemplate :\REMOTETREE\CN=UserTemplate,O=Org
Could not read UserTemplate nameToID: -610
Adding home directory attribute for \REMOTETREE\Org\Users\Riga\Adtest2
resolve: -601
Вспоминаем, что в документации упоминалось про NCP-порт для создания домашней директории и догадываемся, что сам объект "пользователь" создаётся subscriber-каналом по LDAP, а вот после этого делается стандартное обращение по NCP для того, чтобы сделать ему домашнюю директорию. Логично, что при обращении по NCP используется не LDAP, а slash-нотация.
Делаем попытку номер два: меняем ссылку на шаблон, делая её в слэш-формате:
- Код: Выделить всё
set operation template DN(dn("Org\UserTemplate"))
Результат уже лучше (по крайней мере, ошибка "Could not read UserTemplate nameToID: -610" пропала. Однако, всё остальное по-прежнему без изменений: в файловой системе домашняя директория не создаётся, атрибут
Home Directory пользователю прописывается кривой, никакие параметры из шаблона к нему не применяются (не только домашняя директория, но и, например, Default Server или добавление в группу). На этом пока что остановился (trace-лог чуть ниже).
В техсаппорте сначала сказали, что возможность создания домашних директорий в этом драйвере вообще не предусмотрена:
It could be possible to use for example a IDM Scripting or an Execution Driver but you will need to contact Novell/NetIQ Consulting as this falls outside of the scope of a Technical Services Support Request.
Однако, после того как я описал вышеизложенное и ткнул в документацию на строчку "...is used for creating home directories", то попросили тайм-аут не перепроверить.
- Код: Выделить всё
[12/22/14 19:05:49.735]:Bi-directional eDirectory ST:Submitting document to subscriber shim:
[12/22/14 19:05:49.735]:Bi-directional eDirectory ST:
<nds dtdversion="4.0" ndsversion="8.x">
<source>
<product edition="Standard" version="4.0.2.5">DirXML</product>
<contact>Novell, Inc.</contact>
</source>
<input>
<add cached-time="20141222170549.311Z" class-name="inetOrgPerson" dest-dn="CN=test3riga,OU=Riga,OU=Users,O=Org" event-id="Active Directory Driver##14a72f6916f##0:e99438ca-795f-4ecf-9c98-087e829bc3af" qualified-src-dn="O=Vault\OU=Users\CN=test3riga" src-dn="\IDM-TREE\Vault\Users\test3riga" src-entry-id="33302" template-dn="Org\UserTemplate" timestamp="1419267949#63">
<add-attr attr-name="cn">
<value naming="true" timestamp="1419267949#27" type="string">test3riga</value>
</add-attr>
<add-attr attr-name="fullName">
<value timestamp="1419267949#5" type="string">test3riga aaa</value>
</add-attr>
<add-attr attr-name="givenname">
<value timestamp="1419267949#6" type="string">test3riga</value>
</add-attr>
<add-attr attr-name="loginDisabled">
<value timestamp="1419267949#4" type="state">false</value>
</add-attr>
<add-attr attr-name="sn">
<value timestamp="1419267949#7" type="string">aaa</value>
</add-attr>
<password><!-- content suppressed --></password>
<operation-data attempt-to-match="true" unmatched-src-dn="CN=test3riga">
<password-subscribe-status>
<association/>
</password-subscribe-status>
</operation-data>
</add>
</input>
</nds>
[12/22/14 19:05:49.740]:Bi-directional eDirectory ST:Password synchronization command detected.
[12/22/14 19:05:49.740]:Bi-directional eDirectory ST:Stripping operation data from input document
[12/22/14 19:05:49.741]:Bi-directional eDirectory ST:Bi-directional eDirectory: EDIRSub.performAddOperation() Calling getAllSups(inetOrgPerson)
[12/22/14 19:05:49.741]:Bi-directional eDirectory ST:Bi-directional eDirectory: LDAP Add:
dn: CN=test3riga,OU=Riga,OU=Users,O=Org
userpassword: <content suppressed>
fullName: test3riga aaa
givenname: test3riga
sn: aaa
loginDisabled: false
cn: test3riga
objectclass: inetOrgPerson
objectclass: organizationalPerson
objectclass: Person
objectclass: ndsLoginProperties
objectclass: Top
[12/22/14 19:05:49.773]:Bi-directional eDirectory ST:Bi-directional eDirectory: Querying for the GUID of the newly added object.
[12/22/14 19:05:49.774]:Bi-directional eDirectory ST:Bi-directional eDirectory: LDAP Search
base=cn=test3riga,ou=riga,OU=Users,O=Org
scope=0
filter=null
attrs=[GUID]
attrsOnly=false
[12/22/14 19:05:49.776]:Bi-directional eDirectory ST:Bi-directional eDirectory: Querying for the GUID : GUID is E32736E80FBD3E4AF8A8E32736E80FBD
[12/22/14 19:05:49.776]:Bi-directional eDirectory ST:Bi-directional eDirectory: Making the GUID Cache capcity as 10000.
[12/22/14 19:05:49.777]:Bi-directional eDirectory ST:Bi-directional eDirectory: Setting home directory for user:CN=test3riga,OU=Riga,OU=Users,O=Org
[12/22/14 19:05:49.854]:Bi-directional eDirectory ST:Bi-directional eDirectory: Reading template values: Org\UserTemplate
[12/22/14 19:05:49.855]:Bi-directional eDirectory ST:Bi-directional eDirectory: Reading values from template :\REMOTETREE\Org\UserTemplate
[12/22/14 19:05:49.865]:Bi-directional eDirectory ST:Bi-directional eDirectory: Adding home directory attribute for \REMOTETREE\Org\Users\Riga\test3riga
[12/22/14 19:05:49.873]:Bi-directional eDirectory ST:Bi-directional eDirectory: resolve: -601
[12/22/14 19:05:49.874]:Bi-directional eDirectory ST:Password synchronization command status detected.
[12/22/14 19:05:49.874]:Bi-directional eDirectory ST:Restoring operation data to output document
[12/22/14 19:05:49.874]:Bi-directional eDirectory ST:SubscriptionShim.execute() returned:
[12/22/14 19:05:49.874]:Bi-directional eDirectory ST:
<nds dtdversion="2.0" ndsversion="8.x">
<source>
<product build="20140422_0454" instance="Bi-directional eDirectory" version="4.0.1.1">Identity Manager Bi-directional Driver for eDirectory</product>
<contact>Novell, Inc.</contact>
</source>
<output>
<add-association dest-dn="\IDM-TREE\Vault\Users\test3riga" dest-entry-id="33302" event-id="Active Directory Driver##14a72f6916f##0:e99438ca-795f-4ecf-9c98-087e829bc3af">E32736E80FBD3E4AF8A8E32736E80FBD<operation-data attempt-to-match="true" unmatched-src-dn="CN=test3riga">
<password-subscribe-status>
<association/>
</password-subscribe-status>
</operation-data>
</add-association>
<status event-id="Active Directory Driver##14a72f6916f##0:e99438ca-795f-4ecf-9c98-087e829bc3af" level="success">
<operation-data attempt-to-match="true" unmatched-src-dn="CN=test3riga">
<password-subscribe-status>
<association/>
</password-subscribe-status>
</operation-data>
</status>
</output>
</nds>