JavaScriptが検索に必要です。
ナビゲーション・リンクをスキップ
印刷ビューの終了
Oracle Directory Server Enterprise Edition管理ガイド 11gリリース1(11.1.1.5.0)
検索フィルタ・アイコン
検索アイコン

ドキュメント情報

はじめに

第1部 Directory Serverの管理

1.  Directory Serverのツール

2.  Directory Serverのインスタンスと接尾辞

3.  Directory Serverの構成

4.  Directory Serverのエントリ

エントリの管理

DSCCを使用したエントリの管理

DSCCを使用したエントリの拡張

DSCCを使用してエントリを拡張するには:

ldapmodifyおよびldapdeleteを使用したエントリの管理

ldapmodifyを使用したエントリの追加

ldapmodifyを使用したエントリの変更

ldapdeleteを使用したエントリの削除

ldapmodifyを使用したエントリの削除

ldapsearchを使用したエントリの検索

ldapmodifyを使用してエントリを移動または名前変更するには:

DN変更操作を使用するためのガイドラインおよび制限

DN変更操作を使用するための一般的なガイドライン

レプリケーションでDN変更操作を使用するためのガイドライン

管理作業を簡素化するためのエントリのグループ化

エントリの圧縮

データベースのエントリのサイズを圧縮するには:

リフェラルの設定

デフォルト・リフェラルの設定

デフォルト・リフェラルを設定するには:

スマート・リフェラルの設定

スマート・リフェラルを作成および変更するには:

有効な属性構文のチェック

自動構文チェックをオンにするには:

ディレクトリ・エントリの変更の追跡

エントリ変更の追跡をオフにするには:

属性値の暗号化

属性の暗号化とパフォーマンス

属性の暗号化の使用に関する考慮事項

属性の暗号化を構成するには:

5.  Directory Serverのセキュリティ

6.  Directory Serverのアクセス制御

7.  Directory Serverのパスワード・ポリシー

8.  Directory Serverのバックアップとリストア

9.  Directory Serverのグループ、ロールおよびCoS

10.  Directory Serverのレプリケーション

11.  Directory Serverのスキーマ

12.  Directory Serverの索引作成

13.  Directory Serverの属性値の一意性

14.  Directory Serverのロギング

15.  Directory Serverの監視

第2部 Directory Proxy Serverの管理

16.  Directory Proxy Serverのツール

17.  Directory Proxy Serverのインスタンス

18.  LDAPデータ・ビュー

19.  Directory Proxy Serverの証明書

20.  Directory Proxy Serverのロード・バランシングとクライアント・アフィニティ

21.  Directory Proxy Serverの配布

22.  Directory Proxy Serverによる仮想化

23.  仮想データ変換

24.  Directory Proxy ServerとバックエンドLDAPサーバーの接続

25.  クライアントとDirectory Proxy Serverの接続

26.  Directory Proxy Serverのクライアント認証

27.  Directory Proxy Serverのロギング

28.  Directory Proxy Serverの監視とアラート

第3部 Directory Service Control Centerの管理

29.  Directory Service Control Centerの構成

索引

エントリの管理

エントリの管理に最適な方法は、状況によって異なります。

DSCCを使用したエントリの管理

DSCCでは、暗号化されていない読取り可能なすべてのエントリの属性を表示し、書込み可能な属性を編集できます。また、属性を追加および削除したり、複数値属性を設定したり、エントリのオブジェクト・クラスを管理することもできます。DSCCを使用してエントリを管理する方法の詳細は、DSCCのオンライン・ヘルプを参照してください。DSCC全般の詳細は、「Directory Service Control Centerのインタフェース」を参照してください。

DSCCを使用したエントリの拡張

DSCCを使用して、Directory Serverインスタンスのエントリ管理タブ・ページでディレクトリ・エントリを直接追加または編集できます。エントリを追加および編集するためのウィザードを起動するボタンがあります。

次の手順では、エントリを拡張して、既存のエントリにユーザー定義属性を追加する方法を示します。たとえば、新しいアプリケーションでディレクトリにアクセスするには、各エントリに追加情報を格納する必要があり、テスト用にもエントリをいくつか作成する必要があります。

DSCCを使用してエントリを拡張するには:

  1. スキーマ・ウィザードを使用して、エントリに追加できる属性を指定するユーザー定義オブジェクト・クラスを設定します。

    ディレクトリ・インスタンスへのリンクをクリックしてから、「スキーマ」をクリックして、ユーザー定義オブジェクト・クラスまでスクロールし、「追加」ボタンを押してウィザードを開きます。

    または、構成ファイルを編集して、LDAPでディレクトリ・スキーマを更新することもできます。詳細は、第11章「Directory Serverのスキーマ」を参照してください。

    LDAPでは、オブジェクト・クラス属性値をエントリに追加することでエントリが持つ属性のリストを拡張するため、オブジェクト・クラスを作成する必要があります。

  2. エントリ管理タブで、更新するエントリを見つけます。
  3. エントリを編集する場合、テキスト表示を使用します。

    フォームベース・エディタには、編集可能なすべての属性が表示されますが、エントリを拡張するために追加できるオブジェクト・クラスは表示されません。

  4. テキスト表示で、LDIFフォーマットに必要なオブジェクト・クラスおよび属性を追加します。

    たとえば、example-attribute属性をLDIFに追加できるようにするexample-objectclassでスキーマを拡張する場合は次のとおりです。

    dn: uid=bjensen,ou=People,dc=example,dc=com
    cn: Babs Jensen
    mail: bjensen@example.com
    objectclass: top
    objectclass: person
    objectclass: organizationalPerson
    objectclass: inetOrgPerson
    objectclass: example-objectclass
    sn: Jensen
    uid: bjensen
    example-attribute: Extended entry

    テキスト表示エディタには、組込みのチェック・ルーチンがあるので、編集内容が有効かどうかを1回のクリックでチェックできます。編集内容がすべて想定どおりであれば、変更を適用します。

ldapmodifyおよびldapdeleteを使用したエントリの管理

ldapmodifyおよびldapdeleteコマンドライン・ユーティリティは、ディレクトリの内容を追加、編集および削除するためのすべての機能を提供します。これらのユーティリティを使用して、サーバーの構成エントリとユーザー・エントリのデータを管理できます。このユーティリティを使用して、1つ以上のディレクトリを一括管理するスクリプトを記述することもできます。

ldapmodifyおよびldapdeleteコマンドは、本書全般の手順で使用されます。次の各項では、それらの手順の実行に必要な基本的な操作について説明します。ldapmodifyおよびldapdeleteコマンドの詳細は、Oracle Directory Server Enterprise Editionリファレンスを参照してください。

コマンドライン・ユーティリティの入力は、常にLDIFで行います。これはコマンドラインから直接指定することも、入力ファイルで指定することもできます。次の項では、LDIFの入力について説明し、それ以降の各項では、各種の変更で使用されるLDIF入力について説明します。

LDIF入力の正しいフォーマットの詳細は、Oracle Directory Server Enterprise EditionリファレンスのLDIF入力の指定のガイドラインに関する項を参照してください。

次の各項では、それらの基本的な操作について説明します。

ldapmodifyを使用したエントリの追加

このタスクの実行には、DSCCが使用できます。詳細は、「Directory Service Control Centerのインタフェース」およびDSCCのオンライン・ヘルプを参照してください。


注意: 必ずDirectory Server Enterprise Editionソフトウェアに付属のldapmodifyユーティリティを使用してください。


ldapmodify-aオプションを使用して1つ以上のエントリをディレクトリに追加できます。次の例では、ユーザーを格納する構造化エントリを作成して、ユーザーのエントリを作成します。

$ ldapmodify -a -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
Enter bind password:
dn: ou=People,dc=example,dc=com
objectclass: top
objectclass: organizationalUnit
ou: People
description: Container for user entries

dn: uid=bjensen,ou=People,dc=example,dc=com
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetorgPerson
uid: bjensen
givenName: Barbara
sn: Jensen
cn: Babs Jensen
telephoneNumber: (408) 555-3922
facsimileTelephoneNumber: (408) 555-4000
mail: bjensen@example.com
userPassword: secret

-Dおよび-wオプションにより、これらのエントリを作成する権限を持つユーザーのバインドDNとパスワードをそれぞれ指定します。-aオプションは、LDIFのすべてのエントリが追加されることを示します。各エントリはそのDNとその属性値でリストされ、各エントリ間に空行が入ります。ldapmodifyユーティリティは、各エントリが入力されるとそのエントリを作成し、エラーがあるとそれを報告します。

エントリのLDIFには、慣例により、次の属性がリストされます。

  1. エントリのDN。

  2. オブジェクト・クラスのリスト。

  3. ネーミング属性。これは、DNに使用される属性であり、必ずしも必要な属性ではありません。

  4. すべてのオブジェクト・クラスに必要な属性のリスト。

  5. 含める必要がある、許可される任意の属性。

userPassword属性の値を入力する場合、クリアテキスト版のパスワードを入力します。サーバーではこの値を暗号化し、暗号化された値のみを保存します。LDIFファイルに表示されるクリアテキストのパスワードを保護するため、読取り権限を制限してください。

また、コマンドラインで-aオプションが不要なLDIFの別の形式を使用することもできます。この形式の利点は、次の例に示すように、エントリの追加文とエントリの変更文を組み合せられるということです。

$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
Enter bind password: 
dn: ou=People,dc=example,dc=com
changetype: add
objectclass: top
objectclass: organizationalUnit
ou: People
description: Container for user entries

dn: uid=bjensen,ou=People,dc=example,dc=com
changetype: add
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetorgPerson
uid: bjensen
givenName: Barbara
sn: Jensen
cn: Barbara Jensen
telephoneNumber: (408) 555-3922
facsimileTelephoneNumber: (408) 555-4000
mail: bjensen@example.com
userPassword: secret

changetype: addキーワードは、特定のDNを持つエントリが後続の属性をすべて含めて作成されることを意味します。その他すべてのオプションとLDIFの表記は、この項の前半で述べたものと同様です。

両方の例とも、-f filenameオプションを使用して、端末入力からではなく、ファイルからLDIFを読み込むことができます。-aオプションの使用に応じて、LDIFファイルには端末入力と同様のフォーマットが含まれる必要があります。

ldapmodifyを使用したエントリの変更

このタスクの実行には、DSCCが使用できます。詳細は、「Directory Service Control Centerのインタフェース」およびDSCCのオンライン・ヘルプを参照してください。


注意: 必ずDirectory Server Enterprise Editionソフトウェアに付属のldapmodifyユーティリティを使用してください。


changetype: modifyキーワードを使用して、既存のエントリの属性とその値を追加、置換、または削除します。changetype: modifyを指定する場合、エントリの変更方法を示す1つ以上の変更操作を指定する必要があります。次の例に、使用可能な3つのLDIF変更操作を示します。

dn: entryDN
changetype: modify
add: attribute 
attribute: value...
-
replace: attribute 
attribute: newValue...
-
delete: attribute 
[attribute: value]
...

行の中にハイフン(-)を使用して、同じエントリ上の操作を区切ります。また、空行を使用して、様々なエントリの操作グループを区切ります。それぞれの操作にいくつかのattribute: valueのペアを指定することもできます。

属性値の追加

このタスクの実行には、DSCCを使用できません。次の手順の説明に従って、コマンドラインを使用してください。

次の例では、同じadd LDIF構文を使用して、既存の複数値属性およびまだ存在していない属性に値を追加する方法を示します。

$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
Enter bind password:
dn: uid=bjensen,ou=People,dc=example,dc=com
changetype: modify
add: cn
cn: Babs Jensen
-
add: mobile
mobile: (408) 555-7844

次のいずれかの状況では、この操作は失敗し、サーバーがエラーを返す可能性があります。

バイナリ属性サブタイプの使用方法

このタスクの実行には、DSCCが使用できます。詳細は、「Directory Service Control Centerのインタフェース」およびDSCCのオンライン・ヘルプを参照してください。

attribute;binaryサブタイプは、実際の構文にかかわらず、属性値がLDAP上でバイナリ・データとして転送される必要があることを示します。このサブタイプは、userCertificateなどのLDAP文字列表現を持たない複雑な構文用に設計されています。バイナリ・サブタイプは、この目的以外に使用しないでください。

ldapmodifyコマンドで使用する場合、任意のLDIF文で適切なサブタイプを属性名に追加できます。

バイナリ値を入力するには、LDIFテキストに直接入力するか、別のファイルから読み込みます。次の例で、ファイルから読み込むためのLDIF構文を示します。

$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
Enter bind password:
version: 1
dn: uid=bjensen,ou=People,dc=example,dc=com
changetype: modify
add: userCertificate;binary
userCertificate;binary:< file:///local/cert-file

:<構文を使用してファイル名を指定するには、LDIF文をversion: 1という行で開始する必要があります。ldapmodifyでこの文を処理する場合、特定のファイルの内容全体から読み込まれる値に属性が設定されます。

デフォルトでは、検索で;binaryオプションを使用すると、バイナリ属性を返します。compat-flagnorfc4522に設定して、rfc4522コンプライアンスを無効にします。

言語サブタイプを持つ属性の追加

このタスクの実行には、DSCCが使用できます。詳細は、「Directory Service Control Centerのインタフェース」およびDSCCのオンライン・ヘルプを参照してください。

属性の言語とふりがなのサブタイプは、ローカライズされた値を指定します。属性の言語サブタイプを指定すると、そのサブタイプは次のように属性名に追加されます。

attribute;lang-CC

ここで、attributeは既存の属性タイプを表し、ccは言語を表す2文字の国コードを表します。必要に応じて、言語サブタイプにふりがなのサブタイプを追加し、ローカライズされた値の発音表記を指定できます。その場合、属性名は次のようになります。

attribute;lang-CC;phonetic

サブタイプを持つ属性上で操作を実行するには、そのタイプを明示的に一致させる必要があります。たとえば、lang-fr言語サブタイプを持つ属性値を変更する場合、変更操作で次のようにlang-frを含める必要があります。

$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
Enter bind password:
dn: uid=bjensen,ou=People,dc=example,dc=com
changetype: modify
add: homePostalAddress;lang-fr
homePostalAddress;lang-fr: 34, rue de la Paix

注意: 属性値にASCII以外の文字がある場合、UTF-8エンコードする必要があります。


属性値の変更

このタスクの実行には、DSCCが使用できます。詳細は、「Directory Service Control Centerのインタフェース」およびDSCCのオンライン・ヘルプを参照してください。

次の例は、LDIFでreplace構文を使用して属性値を変更する方法を示します。

$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
Enter bind password:
dn: uid=bjensen,ou=People,dc=example,dc=com
changetype: modify
replace: sn
sn: Morris
-
replace: cn
cn: Barbara Morris
cn: Babs Morris

指定された属性の現在の値はすべて削除され、指定されたすべての値が追加されます。

属性値を変更したら、ldapsearchコマンドを使用して、変更を検証できます。

属性値の後ろの空白

属性値を変更する場合、誤って値の最後に空白を入れないでください。後ろに空白があると、それも属性値の一部としてサーバーに保存され、予期しない値が格納されることになります。

DSCCまたはldapsearchコマンドを使用して変更を検証する場合、値にプレーン・テキストが表示される場合と別の予期しない値が表示される場合があります。これは、使用するDirectory Serverクライアントによって異なります。

属性値の削除

このタスクの実行には、DSCCが使用できます。詳細は、「Directory Service Control Centerのインタフェース」およびDSCCのオンライン・ヘルプを参照してください。

次の例は、属性全体を削除する方法および複数値属性の値を1つのみ削除する方法について説明します。

$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
Enter bind password:
dn: uid=bjensen,ou=People,dc=example,dc=com
changetype: modify
delete: facsimileTelephoneNumber
-
delete: cn
cn: Babs Morris

attribute: valueペアを指定せずにdelete構文を使用すると、属性のすべての値が削除されます。attribute: valueペアを指定すると、その値のみが削除されます。

複数値属性の1つの値の変更

このタスクの実行には、DSCCが使用できます。詳細は、「Directory Service Control Centerのインタフェース」およびDSCCのオンライン・ヘルプを参照してください。

複数値属性の1つの値をldapmodifyコマンドで変更するには、次の例に示すように2つの操作を実行する必要があります。

$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
Enter bind password:
dn: uid=bjensen,ou=People,dc=example,dc=com
changetype: modify
delete: mobile
mobile: (408) 555-7845
-
add: mobile
mobile: (408) 555-5487

ldapdeleteを使用したエントリの削除

このタスクの実行には、DSCCが使用できます。詳細は、「Directory Service Control Centerのインタフェース」およびDSCCのオンライン・ヘルプを参照してください。


注意: 必ずDirectory Server Enterprise Editionソフトウェアに付属のldapdeleteユーティリティを使用してください。


ldapdeleteコマンドライン・ユーティリティを使用して、ディレクトリからエントリを削除します。このユーティリティにより、ディレクトリ・サーバーへのバインド、およびDNに基づく1つ以上のエントリの削除を実行します。指定されたエントリを削除する権限を持つバインドDNを指定する必要があります。

子を持つエントリは削除できません。LDAPプロトコルでは、子エントリが親を持たないことを禁止しています。たとえば、まず組織単位に属するすべてのエントリを削除しないと、その組織単位のエントリは削除できません。

次の例は、組織単位にエントリが1つしかないことを示しています。このエントリを削除すると、その親エントリは削除できます。

$ ldapdelete -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
Enter bind password:
uid=bjensen,ou=People,dc=example,dc=com
ou=People,dc=example,dc=com

ldapmodifyを使用したエントリの削除

このタスクの実行には、DSCCが使用できます。詳細は、「Directory Service Control Centerのインタフェース」およびDSCCのオンライン・ヘルプを参照してください。


注意: 必ずDirectory Server Enterprise Editionソフトウェアに付属のldapmodifyユーティリティを使用してください。


ldapmodifyユーティリティを使用する場合、changetype: deleteキーワードを使用してエントリを削除することもできます。前の項で説明したように、ldapdeleteの使用時と同じ制限がすべて適用されます。エントリの削除にLDIF構文を使用する利点は、単一のLDIFファイルで混合の操作を実行できるということです。

次の例では、前の例と同じ削除操作を実行しています。

$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
dn: uid=bjensen,ou=People,dc=example,dc=com
changetype: delete

dn: ou=People,dc=example,dc=com
changetype: delete

ldapsearchを使用したエントリの検索

このタスクの実行には、DSCCが使用できます。詳細は、「Directory Service Control Centerのインタフェース」およびDSCCのオンライン・ヘルプを参照してください。


注意: 必ずDirectory Server Enterprise Editionソフトウェアに付属のldapsearchユーティリティを使用してください。


ldapsearchコマンドライン・ユーティリティを使用して、ディレクトリ・エントリを検索および取得できます。

ldapsearchの使用方法、一般的なldapsearchオプション、受け入れられるフォーマットおよび例については、Oracle Directory Server Enterprise Editionリファレンスを参照してください。

ldapmodifyを使用してエントリを移動または名前変更するには:

この手順では、DN変更操作を使用します。この操作を開始する前に、必ず「DN変更操作を使用するためのガイドラインおよび制限」を読んでよく理解してください。

この手順では部分的ですが、タスクの実行にDSCCを使用できます。詳細は、「Directory Service Control Centerのインタフェース」およびDSCCのオンライン・ヘルプを参照してください。その他の部分の手順では、コマンドラインを使用しなければ実行できません。


注意: グループのuniquememberとなるエントリのDNを変更する場合、参照整合性プラグインが有効である必要があります。参照整合性により、エントリを移動するときにグループ・メンバーが調整されるようになります。参照整合性プラグインの有効化および構成の方法については、「参照整合性プラグインを構成するには:」を参照してください。


  1. ある親から別の親にエントリを移動する場合、親エントリ上でACI権限を拡張します。
    • エントリの移動元の親エントリ上で、構文allow (export ...)を使用することで、ACIでエクスポート操作が許可されるようにします。

    • エントリの移動先の親エントリ上で、構文allow (import ...)を使用することで、ACIでインポート操作が許可されるようにします。

    ACIの使用の詳細は、第6章「Directory Serverのアクセス制御」を参照してください。

  2. DN変更操作がグローバルで有効であるか、少なくとも移動操作で影響を受ける接尾辞で有効であることを確認してください。

    前のリリースのDirectory Serverとの互換性を確保するため、デフォルトでDN変更操作は無効です。

    すでにDN変更操作が有効な場合、次の手順に進みます。

    サーバーでグローバルにDN変更操作を有効にするには、次の操作を実行します。

    $ dsconf set-server-prop -h host -p port moddn-enabled:on
  3. ldapmodifyコマンドを実行します。

    この手順では、DN変更操作を使用します。次のいずれか1つを実行します。

    • エントリを移動します。

      たとえば、次のコマンドを実行すると、エントリuid=bjensenはコントラクタのサブツリーou=Contractors,dc=example,dc=comから従業員のサブツリーou=People,dc=example,dc=comに移動します

      $ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
      Enter bind password:
      dn: uid=bjensen,ou=Contractors,dc=example,dc=com
      changetype: modrdn
      newrdn: uid=bjensen
      deleteoldrdn: 0
      newsuperior: ou=People,dc=example,dc=com
    • エントリの名前を変更します。

      たとえば、次のコマンドを実行すると、エントリの名前がuid=bbjensenからuid=bjensenに変更されます。

      $ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
      Enter bind password:
      dn: uid=bbjensen,ou=People,dc=example,dc=com
      changetype: modrdn
      newrdn: uid=bjensen
      deleteoldrdn: 1

    LDIF文を記述する際は、次の属性に注意してください。

    • dn - 名前の変更または移動を行うエントリを指定します。

    • changetype: modrdn - DN変更操作を使用することを指定します。

    • newrdn - 新しいネーミング属性を指定します。

    • deleteoldrdn - 前のネーミング属性をエントリから削除するかどうかを指定します(1は削除、0は削除しない)。

      エントリ定義でネーミング属性が必須の場合、その属性はエントリから削除できません。

    • newsuperior - エントリの新しい上位属性を指定します。

    ldapmodifyコマンドとそのオプションの詳細は、ldapmodify(1)のマニュアル・ページを参照してください。

  4. 大量のエントリを含むサブツリーを移動またはその名前を変更したときにリソース制限エラーが発生する場合、データベースで使用できるロックの数を増加します。
    $ dsconf set-server-prop -h host -p port db-lock-count:value

    このプロパティを変更する場合、その変更を有効にするにはサーバーを再起動する必要があります。

DN変更操作を使用するためのガイドラインおよび制限

前の項で述べたようにDN変更操作を使用する場合、次の項で説明するガイドライン従ってください。

DN変更操作を使用するための一般的なガイドライン

レプリケーションでDN変更操作を使用するためのガイドライン


注意

注意: 次の要件を遵守せずにDN変更操作を使用すると、レプリケートが中断され、ディレクトリ・サービスが停止する場合があります。