Sun ONE*スキーマをNovell eDirectoryに移行するには、次の手順に従ってください。
次のコマンドを使用して、スキーマの比較中に検出されたエラーをエラーファイルに書き込むことができます。
ice -e LDIF error file name -C -a -SLDAP -s Sun ONE server -p Sun ONE port -DLDAP -s eDirectory server -p eDirectory port
例:
ice -e err.ldf -C -a -SLDAP -s sun_srv1 -p sun_port1 -DLDAP -s edir_srv2 -p edir_port2
スキーマの比較中に検出されたエラーはすべてエラーファイル(例ではerr.ldf)に書き込まれます。Root DSEを読み込むためにサーバから認証が要求されない限り、この操作を実行するためにログインする必要はありません。Microsoftアクティブディレクトリでは、Root DSEを読み込むための認証が要求されます。
LDAPエラー: 53 (DSAが動作しません)
これらの定義の参照が含まれるすべてのレコードに対して、次のエラーが表示されます。
LDAPエラー: 16 :(該当する属性はありません)
したがって、これらのオブジェクトへの参照が含まれるレコードまたはこれらの定義の変更を試行するレコードは、LDIFエラーファイル(例ではerr.ldf)にコメントとして記入されている必要があります。
LDAPエラー: 80 (NDSエラー: ネーミングがあいまいです(-651)
このエラーは、Sun ONEではeDirectoryとは異なるネーミングルールの決定のメソッドが使用されていることが原因で発生します。
これを解決するには、次の3つのいずれかのオプションを使用できます。
エラーの原因となっている各objectClassesを確認し、それぞれに有効なネーミング属性を追加します。
例:
ネーミング属性[cn]をオブジェクトクラス"netscapeMachineData"に追加するには、X-NDS_NAMINGフラグが包含されるようにerr.ldfファイル内のエントリ(次の例で強調表示されている部分)を次のように変更します。
dn:cn=schemachangetype:modifyadd:objectClassesobjectClasses:( 2.16.840.1.113730.3.2.32 NAME 'netscapeMachineData'
DESC 'iPlanet defined objectclass' SUP top STRUCTURAL MAY 'cn' X-NDS_NAMING 'cn' )-
エラーの原因となっている各objectClassesを確認し、該当するものをすべてAUXILIARYまたはABSTRACTに変更します。
例:
オブジェクトクラス"netscapeMachineData"のオブジェクトクラス定義を"STRUCTURAL"から"AUXILIARY"に変更するには、次のようにerr.ldfファイルのエントリ(次の例で強調表示されている部分)を変更します。
dn:cn=schemachangetype:modifyadd:objectClassesobjectClasses:( 2.16.840.1.113730.3.2.32 NAME 'netscapeMachineData'
DESC 'iPlanet defined objectclass' SUP top AUXILIARY )-
オブジェクトクラス"netscapeMachineData"のオブジェクトクラス定義を"STRUCTURAL"から"ABSTRACT"に変更するには、次のようにerr.ldfファイルのエントリ(次の例で強調表示されている部分)を変更します。
dn:cn=schemachangetype:modifyadd:objectClassesobjectClasses:( 2.16.840.1.113730.3.2.32 NAME 'netscapeMachineData'
DESC 'iPlanet defined objectclass' SUP top ABSTRACT )-
eDirectoryのTopの定義にcnを追加すると、すべてのobjectClassesの潜在的なネーミング属性になります。
cnをTopに追加するには2つの方法があります。
次のようなファイルを作成し、そのファイルにtopsch.ldfという名前を付けます。
version: 1
dn:cn=schema
changetype :modify
delete:objectclasses
objectclasses :( 2.5.6.0 NAME 'top' STRUCTURAL )
-
add:objectclasses
objectclasses :(2.5.6.0 NAME 'top' STRUCTURAL MAY cn)
次のNovellインポート/エクスポート変換コマンドラインを使用します。
ice -SLDIF -f LDIF_file_name -DLDAP -s eDirectory_server -p eDirectory_port -d eDirectory_Admin_DN -w eDirectory_password
例:
ice -SLDIF -f topsch.ldf -DLDAP -s edir_srv2 -p edir_port2 -d cn=admin,o=org -w pwd1
1. Novell iManagerで、[役割およびタスク]ボタンをクリックします。
2. [スキーマ]>[属性の追加]の順にクリックします。
3. [使用可能なクラス]リストで[トップ]を選択してから、[OK]をクリックします。
4. [使用可能なオプション属性]リストで、[CN]をダブルクリックします。
5. [OK]をクリックします。
LDAPエラー: 16 (該当する属性はありません)
このエラーを解決するには、objectClass定義を変更して、ndsLoginPropertiesから新しいobjectClassを継承し、必須属性リストからuserPassword属性を削除します。
例:
必須属性リストにuserPasswordが含まれるobjectClassの場合:
version:1
dn:cn=schemaz
changetype:modify
add:objectClasses
objectClasses:( 0.9.2342.19200300.100.4.19 NAME 'simpleSecurityObject' DESC '
Standard LDAP objectClass' SUP top STRUCTURAL MUST userPassword )
次のように変更する必要があります(最終行の変更に注意してください):
version:1
dn:cn=schema
changetype:modify
add:objectClasses
objectClasses:( 0.9.2342.19200300.100.4.19 NAME 'simpleSecurityObject' DESC '
Standard LDAP objectClass' SUP (ndsLoginProperties $ top) STRUCTURAL )
次のNovellインポート/エクスポート変換コマンドを使用して変更されたスキーマ比較LDIFファイル(例ではerr.ldf)をインポートします。
ice -e error_file -SLDIF -f modified_LDIF_file -DLDAP -s eDirectory_server -p eDirectory_port -d eDirectory_Admin_DN -w eDirectory_password
例:
ice -e errors.ldf -SLDIF -f err.ldf -DLDAP -s edir_srv2 -p edir_port2 -d cn=admin,o=org -w pwd1