LDIFファイルで問題が発生した場合、次のことを考慮してください。
LDIFファイルで、あるエントリを追加するレコードを、そのエントリのペアレントを追加するレコードの前に記述してしまう場合があります。この場合、LDAPサーバが新しいエントリを追加しようとすると、そのエントリのペアレントが存在しないためエラーが発生します。
この問題は、前方参照の使用を有効にするだけで解決できます。前方参照の作成を有効にすると、エントリを作成するときにそのペアレントがまだ存在していない場合でも、このペアレント用に前方参照というプレースホルダが作成されるため、エントリを正常に作成できます。以後の操作で親が作成されると、前方向参照は通常のエントリに変更されます。
LDIFのインポートが完了した後でも、1つ以上の前方参照が残っている場合があります(たとえば、LDIFファイルでエントリのペアレントが作成されなかった場合など)。この場合、前方参照はConsoleOneおよびiManagerに不明オブジェクトとして表示されます。前方参照エントリを検索することはできますが、前方参照エントリには属性も属性値もないため、objectClass以外の属性を読み込むことはできません。ただし、前方参照の下に位置する実オブジェクトエントリ上では、すべてのLDAP操作が正常に機能します。
前方参照エントリは「不明」のオブジェクトクラスを持ち、また、内部NDS EF_REFERENCEエントリにフラグが設定されています。ConsoleOneおよびiManagerでは、「不明」のオブジェクトクラスを持つエントリは、中央に疑問符が表示される丸い黄色のアイコンで示されます。LDAPを使用して不明オブジェクトクラスのオブジェクトを検索することもできますが、現時点ではLDAPからエントリフラグの設定にアクセスしてそれが前方参照エントリであることを確認する方法はありません。
(LDIFファイルまたはLDAPクライアント要求などを使用して)オブジェクトを作成するだけで、前方参照エントリを通常のオブジェクトに変更できます。eDirectoryで作成するように指定したエントリが前方参照としてすでに存在する場合、eDirectoryでは既存の前方参照エントリが、作成を指定したオブジェクトに変換されます。
LDIFのインポート時に前方参照を有効にするには、次の手順に従ってください。
NetIQ iManagerで、[
]ボタン をクリックします。[
]>[ ]の順にクリックします。[
]をクリックし、[ ]をクリックします。インポートするファイルのタイプに[
]を指定します。インポートするデータが含まれているファイルの名前を指定し、適切なオプションを指定してから[
]をクリックします。データのインポート先になるLDAPサーバを指定します。
次の表の説明を参照して、適切なオプションを追加します。
オプション |
説明 |
---|---|
サーバのDNS名/IPアドレス |
相手LDAPサーバのDNS名またはIPアドレス |
ポート |
相手LDAPサーバのポート番号(整数) |
DERファイル |
SSL認証に使用するサーバキーが格納されているDERファイルの名前 |
ログイン方法 |
[認証ログイン]または[匿名ログイン]([ユーザDN]フィールドに指定したエントリのログイン方法) |
ユーザDN |
サーバで指定されたバインド操作に使用されるエントリの識別名 |
パスワード |
[ユーザDN]フィールドで指定したエントリのパスワード属性 |
[
]で、[ ]をクリックします。[
]をクリックし、[ ]をクリックします。データをデータサーバへ移行するときに前方参照を有効にするには、次の手順に従ってください。
NetIQ iManagerで、[
]ボタン をクリックします。[
]>[ ]の順にクリックします。[
]>[ ]の順にクリックします。移行するエントリが格納されているLDAPサーバを指定します。
次の表の説明を参照して、適切なオプションを追加します。
オプション |
説明 |
---|---|
サーバのDNS名/IPアドレス |
ソースLDAPサーバのDNS名またはIPアドレス |
ポート |
ソースLDAPサーバのポート番号(整数) |
DERファイル |
SSL認証に使用するサーバキーが格納されているDERファイルの名前 |
ログイン方法 |
[認証ログイン]または[匿名ログイン]([ユーザDN]フィールドに指定したエントリのログイン方法) |
ユーザDN |
サーバで指定されたバインド操作に使用されるエントリの識別名 |
パスワード |
[ユーザDN]フィールドで指定したエントリのパスワード属性 |
[
]で、[ ]をクリックします。[
]をクリックします。移行するエントリの検索条件を次のように指定します。
オプション |
説明 |
---|---|
ベースDN |
検索要求のベース識別名 このフィールドを指定しなかった場合、デフォルトのベースDNである""(空の文字列)が使用されます。 |
スコープ |
検索要求のスコープ |
フィルタ |
RFC 2254準拠の検索フィルタ デフォルトは「objectclass=*」です。 |
属性 |
検索エントリごとに取得する属性 |
[
]をクリックします。データを移行するLDAPサーバを指定します。
[
]をクリックし、[ ]をクリックします。メモ:スキーマが各LDAPサービスで整合性を保っていることを確認します。
コマンドラインインタフェースで前方参照を有効にするには、‑F LDAPターゲットハンドラオプションを使用します。
詳細については、『NetIQ eDirectory 8.8 SP8管理ガイド』のLDIFターゲットハンドラのオプション
を参照してください。
ファイル内のレコードを処理する前に、[操作を表示するが実行しない]LDIFソースハンドラオプションを使用してLDIFファイルの構文をチェックできます。
LDIFソースハンドラは、LDIFファイル内のレコードを処理するときに常に構文をチェックします。このオプションを使用すると、レコードの処理を無効にして、構文を検証できます。
NetIQ iManagerで、[
]ボタン をクリックします。[
]>[ ]の順にクリックします。[
]をクリックし、[ ]をクリックします。インポートするファイルのタイプに[
]を指定します。インポートするデータが含まれているファイルの名前を指定し、適切なオプションを指定します。
[
]で、[ ]をクリックし、[ ]をクリックします。データのインポート先になるLDAPサーバを指定します。
次の表の説明を参照して、適切なオプションを追加します。
オプション |
説明 |
---|---|
サーバのDNS名/IPアドレス |
相手LDAPサーバのDNS名またはIPアドレス |
ポート |
相手LDAPサーバのポート番号(整数) |
DERファイル |
SSL認証に使用するサーバキーが格納されているDERファイルの名前 |
ログイン方法 |
[認証ログイン]または[匿名ログイン]([ユーザDN]フィールドに指定したエントリのログイン方法) |
ユーザDN |
サーバで指定されたバインド操作に使用されるエントリの識別名 |
パスワード |
[ユーザDN]フィールドで指定したエントリのパスワード属性 |
[
]をクリックし、[ ]をクリックします。コマンドラインインタフェースでLDIFファイルの構文をチェックするには、‑n LDIFソースハンドラオプションを使用します。
詳細については、『NetIQ eDirectory 8.8 SP8管理ガイド』のLDIFソースハンドラのオプション
を参照してください。
NetIQインポート/エクスポート変換ユーティリティは、ターゲットハンドラによる処理に失敗したレコードをすべてリストしたLDIFファイルを自動的に作成します。ユーティリティによって生成されたLDIFエラーファイルを編集してエラーを修正し、サーバに再適用することで、失敗したレコードに含まれているインポートまたはデータの移行を完了できます。
この機能はConsoleOneのみで使用できます。
ConsoleOneで、[
]>[ ]の順にクリックします。実行するタスクをクリックします。
[
]をクリックします。[
]フィールドに、出力メッセージ(エラーメッセージを含む)を記録するファイル名を指定します。[
]フィールドに、失敗したエントリをLDIF形式で出力するファイル名を指定します。このファイルは、エラーの確認や訂正に使用できます。このファイルを修正(訂正)して、もう一度ディレクトリに適用することもできます。
[
]をクリックします。表示される指示に従って、選択したタスクを完了します。
コマンドラインユーティリティでエラーログオプションを設定するには、‑l一般オプションを使用します。
詳細については、『NetIQ eDirectory 8.8 SP8管理ガイド』の一般オプション
を参照してください。
一部のLDIFの問題を理解するには、LDAPクライアントSDKがどのように機能するかを理解する必要があります。LDAPソースハンドラ、LDAPターゲットハンドラ、またはその両方に、次のデバッギングフラグを設定できます。
値 |
説明 |
---|---|
0x0001 |
LDAPファンクションコールをトレースします。 |
0x0002 |
パケットに関する情報を出力します。 |
0x0004 |
引数に関する情報を出力します。 |
0x0008 |
接続情報を出力します。 |
0x0010 |
BERのエンコーディングおよびデコーディング情報を出力します。 |
0x0020 |
検索フィルタ情報を出力します。 |
0x0040 |
設定情報を出力します。 |
0x0080 |
ACL情報を出力します。 |
0x0100 |
統計情報を出力します。 |
0x0200 |
追加の統計情報を出力します。 |
0x0400 |
シェル情報を出力します。 |
0x0800 |
解析情報を出力します。 |
0xFFFF (10進数では、-1) |
すべてのデバッギングオプションを有効にします。 |
この機能を有効にするには、LDAPソースハンドラおよびターゲットハンドラで‑eオプションを使用します。-eオプションに指定する整数の値は、LDAP SDKでさまざまな種類のデバッグ情報を有効にするビットマスクです。
詳細については、『NetIQ eDirectory 8.8 SP8管理ガイド』のLDAPソースハンドラのオプション
およびLDAPターゲットハンドラのオプション
を参照してください。