Sun Java System Directory Server Enterprise Edition 6.1 管理ガイド

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

この章では、Directory Proxy Server とバックエンド LDAP サーバーの接続の設定方法について説明します。この章の内容は次のとおりです。

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

LDAP データソースを作成した場合、その LDAP データソースに対して開かれるデフォルトの接続数は 6 で、読み取り操作、バインド操作、および書き込み操作にそれぞれ 2 つずつ使用されます。デフォルトの接続数を確認するには、次のコマンドを入力します。


dpconf get-ldap-data-source-prop src-name num-read-init num-write-init num-bind-init
num-bind-init   :  2
num-read-init   :  2
num-write-init  :  2

接続数は、トラフィックが増加すると自動的に増やされます。

Directory Proxy Server とバックエンド LDAP サーバーの接続の設定方法については、次の手順を参照してください。

ProcedureDirectory Proxy Server とバックエンド LDAP サーバーの接続の数を設定する


注 –

この手順では、バインド操作の接続数を設定します。読み取り操作または書き込み操作の接続数を設定するには、同じ手順を実行しますが bindread または write に置き換えます。


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

  1. バインド操作のための Directory Proxy Server とバックエンド LDAP サーバーの接続数の初期値を設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     num-bind-init:new-value
    
  2. バインド操作のための接続の増分を設定します。

    増分は、現在の数より多い接続が要求されるたびに追加される接続数です。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     num-bind-incr:new-value
    
  3. バインド操作のための接続の最大数を設定します。

    この接続の最大数に達すると、それ以上接続を追加できなくなります。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     num-bind-limit:new-value
    

Procedure接続のタイムアウトを設定する

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

  1. Directory Proxy Server がデータソースに接続し続けることのできる最長時間を設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     connect-timeout:new-value
    

    たとえば、接続のタイムアウトを 10 ミリ秒に設定します。


    $ dpconf set-ldap-data-source-prop -h host1 -p 1389 data-source-name connect-timeout:10

Procedure接続プール待機タイムアウトを設定する

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

  1. Directory Proxy Server が接続プール内の確立された接続を使用できるようになるまで待機できる最長時間を設定します。


    $ dpconf set-server-prop -h host -p port data-source-name \
     connection-pool-wait-timeout:value
    

    たとえば、タイムアウトを 20 秒に設定します。


    $ dpconf set-ldap-data-source-prop -h host1 -p 1389 data-source-name \
     connection-pool-wait-timeout:20000

Directory Proxy Server とバックエンド LDAP サーバーとの間の SSL の設定

次の手順では、Directory Proxy Server とバックエンド LDAP サーバーとの間の SSL の設定方法を説明しています。

ProcedureDirectory Proxy Server とバックエンド LDAP サーバーとの間の SSL を設定する

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

  1. Directory Proxy Server とバックエンド LDAP サーバー間のセキュアポートを設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     ldaps-port:port-number
    
  2. Directory Proxy Server とバックエンド LDAP サーバーの接続にいつ SSL が使用されるかを設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name ssl-policy:value
    
    • valuealways の場合、接続に常に SSL が使用されます。

    • valueclient の場合、クライアントが SSL を使用している場合に SSL が使用されます。

    接続が SSL を使用していない場合、startTLS コマンドを使用して SSL への接続をプロモートできます。

  3. 「Directory Proxy Server の SSL 暗号化方式と SSL プロトコルの選択」で説明されているように、SSL のプロトコルと暗号化方式を選択します。

  4. バックエンド LDAP サーバーからの SSL サーバー証明書を検証するよう Directory Proxy Server を設定します。

    詳細は、「証明書をバックエンド LDAP サーバーから Directory Proxy Server 上の証明書データベースに追加する」を参照してください。

  5. バックエンド LDAP サーバーが Directory Proxy Server からの証明書を要求する場合は、SSL クライアント証明書を送信するよう Directory Proxy Server を設定します。

    詳細については、「バックエンド LDAP サーバーへの証明書のエクスポート」を参照してください。

  6. 変更を有効にするために Directory Proxy Server のインスタンスを再起動します。

    Directory Proxy Server の再起動については、「Directory Proxy Server を再起動する」を参照してください。

Directory Proxy Server の SSL 暗号化方式と SSL プロトコルの選択

Directory Proxy Server で使用できる暗号化方式とプロトコルは、使用している JavaTM 仮想マシン (JVMTM) によって異なります。デフォルトで、Directory Proxy Server は JVM マシンで有効なデフォルトの暗号化方式とプロトコルを使用します。

Procedure暗号化方式とプロトコルの一覧を選択する

この手順に従って、サポートされている暗号化方式とプロトコルおよび有効な暗号化方式とプロトコルを取得します。暗号化方式またはプロトコルがサポートされている場合は、それを有効または無効にできます。

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

  1. サポートされている暗号化方式とプロトコルの一覧を表示します。


    $ dpconf get-server-prop -h host -p port supported-ssl-cipher-suites \
     supported-ssl-protocols
  2. 有効な暗号化方式とプロトコルの一覧を表示します。


    $ dpconf get-server-prop -h host -p port enabled-ssl-cipher-suites \
     enabled-ssl-protocols
  3. 1 つまたは複数のサポートされている暗号化方式またはプロトコルを有効にします。

    1. 1 つまたは複数のサポートされている暗号化方式を有効にします。


      $ dpconf set-server-prop -h host -p port \
       enabled-ssl-cipher-suites:supported-ssl-cipher-suite \
       [enabled-ssl-cipher-suites:supported-ssl-cipher-suite ...]

      サポートされている暗号化方式の既存リストに暗号化方式を追加するには、次のコマンドを使用します。


      $ dpconf set-server-prop -h host -p port \
       enabled-ssl-cipher-suites+:supported-ssl-cipher-suite
      
    2. 1 つまたは複数のサポートされているプロトコルを有効にします。


      $ dpconf set-server-prop -h host -p port \
       enabled-ssl-cipher-protocols:supported-ssl-cipher-protocol \
       [enabled-ssl-cipher-protocols:supported-ssl-cipher-protocol ...]

      サポートされているプロトコルの既存リストにプロトコルを追加するには、次のコマンドを使用します。


      $ dpconf set-server-prop -h host -p port \
       enabled-ssl-cipher-protocols+:supported-ssl-cipher-protocol
      
  4. (省略可能) サポートされている暗号化方式またはプロトコルを無効にします。


    $ dpconf set-server-prop -h host -p port \
     enabled-ssl-cipher-protocols-:supported-ssl-cipher-protocol
    

バックエンド LDAP サーバーへの要求の転送

この節では、Directory Proxy Server からの要求をバックエンド LDAP サーバーに転送するためのさまざまな方法について説明します。

バインド再実行での要求の転送

Directory Proxy Server のクライアント資格のバインド再実行については、『Sun Java System Directory Server Enterprise Edition 6.1 Reference』「Directory Proxy Server Configured for BIND Replay」を参照してください。次の手順は、Directory Proxy Server からの要求をバックエンド LDAP サーバーにバインド再実行を使用して転送する方法について説明しています。

Procedureバインド再実行で要求を転送する

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

  1. クライアントによって提供された資格を使用してバックエンド LDAP サーバーへの接続を認証するデータソースクライアント資格を設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     client-cred-mode:use-client-identity

プロキシ承認での要求の転送

Directory Proxy Server 内のプロキシ承認については、『Sun Java System Directory Server Enterprise Edition 6.1 Reference』「Directory Proxy Server Configured for Proxy Authorization」を参照してください。

この節では、プロキシ承認とプロキシ承認制御を使用して要求を転送する手順について説明します。

Procedureプロキシ承認を使用して要求を転送する

  1. version 1 または version 2 のプロキシ承認制御を受け入れるようデータソースを設定します。

    たとえば、version 1 のプロキシ承認制御を受け入れるようデータソースを設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     proxied-auth-use-v1:true

    または、version 2 のプロキシ承認制御を受け入れるようデータソースを設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     proxied-auth-use-v1:false
  2. プロキシ承認を使用してバックエンド LDAP サーバーへの接続を認証するようデータソースを設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     client-cred-mode:use-proxy-auth

    書き込み操作のみのため、プロキシ承認を使用してバックエンド LDAP サーバーへの接続を認証するようデータソースを設定するには、次のコマンドを実行します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     client-cred-mode:use-proxy-auth-for-write

    書き込み操作のみがプロキシ承認制御で実行される場合、クライアントのアイデンティティーは読み取り要求のために LDAP サーバーに転送されません。クライアントアイデンティティーのない要求の転送の詳細については、「クライアントアイデンティティーなしでの要求の転送」を参照してください。

  3. Directory Proxy Server のバインド資格でデータソースを設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     bind-dn:DPS-bind-dn bind-pwd-file:filename
    
  4. タイムアウトでデータソースを設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     proxied-auth-check-timeout:value
    

    Directory Proxy Server は、getEffectiveRights コマンドを使用して、プロキシ承認に適した ACI がクライアント DN にあることを確認します。その結果は Directory Proxy Server のキャッシュに格納され、proxied-auth-check-timeout の期限が終了すると更新されます。

  5. 必要に応じて、変更を有効にするために Directory Proxy Server のインスタンスを再起動します。

    Directory Proxy Server の再起動については、「Directory Proxy Server を再起動する」を参照してください。

Procedure要求にプロキシ承認制御が含まれている場合に、プロキシ承認を使用して要求を転送する

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

  1. version 1、version 2、またはその両方のプロキシ承認制御を受け入れるよう Directory Proxy Server を設定します。


    $ dpconf set-server-prop -h host -p port allowed-ldap-controls:proxy-auth-v1 \
     allowed-ldap-controls:proxy-auth-v2

クライアントアイデンティティーなしでの要求の転送

次の手順は、クライアントアイデンティティーを転送せずに Directory Proxy Server からの要求をバックエンド LDAP サーバーに転送する方法について説明しています。

Procedureクライアントアイデンティティーなしでの要求を転送する

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

  1. Directory Proxy Server の資格を使用してバックエンド LDAP サーバーへの接続を認証するようデータソースを設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     client-cred-mode:use-specific-identity
  2. Directory Proxy Server のバインド資格でデータソースを設定します。


    $ dpconf set-ldap-data-source-prop -h host -p port data-source-name \
     bind-dn:bind-dn-of-DPS bind-pwd-file:filename
    
  3. 必要に応じて、変更を有効にするために Directory Proxy Server のインスタンスを再起動します。

    Directory Proxy Server の再起動については、「Directory Proxy Server を再起動する」を参照してください。

代替ユーザーとしての要求の転送

ここでは、代替ユーザーとして要求を転送する方法について説明します。

Procedureリモートユーザーマッピングを設定する

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

  1. 代替ユーザーで転送が行えるように設定を有効にします。


    $ dpconf set-server-prop -h host -p port enable-user-mapping:true
  2. リモートマッピング用の ID を含む属性の名前を指定します。


    $ dpconf set-server-prop -h host -p port \
     remote-user-mapping-bind-dn-attr:attribute-name
    
  3. Directory Proxy Server がクライアント ID をリモートでマップできるようにします。


    $ dpconf set-server-prop -h host -p port enable-remote-user-mapping:true
  4. デフォルトマッピングを設定します。


    $ dpconf set-server-prop -h host -p port \
     user-mapping-default-bind-dn:default-mapping-bind-dn \
     user-mapping-default-bind-pwd-file:filename
    

    マップしたアイデンティティーがリモート LDAP サーバー上に見つからない場合、クライアントアイデンティティーはデフォルトアイデンティティーにマップされます。

  5. リモート LDAP サーバー上のクライアントのエントリでユーザーマッピングを設定します。

    Directory Server でのユーザーマッピングの設定については、「プロキシ承認」を参照してください。

Procedureローカルユーザーマッピングを設定する

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

  1. 代替ユーザーで転送が行えるように設定を有効にします。


    $ dpconf set-server-prop -h host -p port enable-user-mapping:true
  2. Directory Proxy Server がクライアント ID をリモートでマップする設定がされていないことを確認します。


    $ dpconf set-server-prop -h host -p port enable-remote-user-mapping:false
  3. デフォルトマッピングを設定します。


    $ dpconf set-server-prop -h host -p port \
     user-mapping-default-bind-dn:default-mapping-bind-dn \
     user-mapping-default-bind-pwd-file:filename
    

    リモート LDAP サーバー上のマッピングに失敗すると、クライアント ID がこの DN にマップされます。

  4. 認証されていないユーザーに操作の実行を許可する場合は、認証されていないクライアントに対するマッピングを設定します。


    $ dpconf set-server-prop -h host -p port \
     user-mapping-anonymous-bind-dn:anonymous-mapping-bind-dn \
     user-mapping-anonymous-bind-pwd-file:filename
    

    認証されていないユーザーに操作の実行を許可する方法については、「匿名アクセスを設定する」を参照してください。

  5. クライアントの ID を設定します。


    $ dpconf set-user-mapping-prop -h host -p port \
     user-bind-dn:client-bind-dn user-bind-pwd-file:filename
    
  6. 代替ユーザーの ID を設定します。


    $ dpconf set-user-mapping-prop -h host -p port \
     mapped-bind-dn:alt-user-bind-dn mapped-bind-pwd-file:filename
    

Procedure匿名クライアントのユーザーマッピングを設定する

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

  1. 認証されていないクライアントのマッピングを設定します。


    $ dpconf set-server-prop -h host -p port \
     user-mapping-anonymous-bind-dn:anonymous-mapping-bind-dn \
     user-mapping-anonymous-bind-pwd-file:filename
    

    リモート LDAP サーバーには匿名クライアントのエントリが含まれていないため、匿名クライアントのマッピングは、Directory Proxy Server で設定されます。

    認証されていないユーザーへの操作の実行の許可については、「匿名アクセスを設定する」を参照してください。