このタスクについて
Liberty サーバーのアウトバウンド CSIv2 トランスポート層のクライアント証明書認証は、デフォルトで無効にされます。transportLayer を構成して、使用する SSL 構成を指定できます。
クライアント証明書認証をサポートするように、または必要とするように、SSL エレメントを構成できます。ダウンストリーム・サーバーに送信される証明書は、
ダウンストリーム・サーバーのユーザー・レジストリーに照らして認証され、証明書の ID は、
属性層の ID アサーションや認証層の認証トークンのような他の形の認証が、CSIv2 要求内で何も送信されていない場合のみ使用されます。
クライアント証明書認証が使用される場合、このサーバーで SSL がサポートされていることを確認してください。
- server.xml ファイルで appSecurity-2.0 フィーチャーおよび ejbRemote-3.2 フィーチャーを追加します。
<featureManager>
<feature>appSecurity-2.0</feature>
<feature>ejbRemote-3.2</feature>
</featureManager>
以下の例は、server.xml ファイルでの指定を必要としないデフォルト構成です。
<orb id="defaultOrb">
<serverPolicy.csiv2>
<layers>
<attributeLayer identityAssertionEnabled="false"/>
<authenticationLayer mechanisms="LTPA,GSSUP" establishTrustInClient="Required"/>
<transportLayer/>
</layers>
</serverPolicy.csiv2>
<clientPolicy.csiv2>
<layers>
<attributeLayer identityAssertionEnabled="false"/>
<authenticationLayer mechanisms="LTPA,GSSUP" establishTrustInClient="Supported"/>
<transportLayer/>
</layers>
</clientPolicy.csiv2>
</orb>
- 『Liberty の SSL 通信の使用可能化』に説明されているように、SSL サポートを構成します。
- オプション: clientAuthentication または clientAuthenticationSupported を使用するように SSL エレメントを構成します。 以下に例を示します。
<ssl id="defaultSSLConfig" keyStoreRef="defaultKeyStore"
trustStoreRef="defaultTrustStore" clientAuthentication="true" />
または <ssl id="defaultSSLConfig" keyStoreRef="defaultKeyStore"
trustStoreRef="defaultTrustStore" clientAuthenticationSupported="true" />
オプション: アウトバウンド・トランスポート層構成が使用する SSL 構成を変更する必要がある場合、次のように server.xml ファイルに <orb> エレメントを追加するか、または、既存のエレメントに transportLayer エレメントを追加します。例で使用されているサンプル値は実際の値で置き換えてください。 <orb id="defaultOrb">
<clientPolicy.csiv2>
<layers>
<transportLayer sslRef="defaultSSLConfig"/>
</layers>
</clientPolicy.csiv2>
</orb>
アウトバウンド・オプションは、SSL 構成からも構成できます。sslRef がトランスポート層に設定されていない場合、CSIv2 は SSL 構成のアウトバウンド・デフォルトを使用します。SSL アウトバウンド・デフォルトについて詳しくは、アウトバウンド CSIv2 属性層の構成を参照してください。
アウトバウンド SSL フィルターも SSL 構成で設定できます。アウトバウンド SSL フィルターは、アウトバウンド接続のホストまたはポート、あるいはその両方を使用して、使用する SSL 構成を決定します。アウトバウンド SSL フィルターについて詳しくは、SSL 構成のアウトバウンド・フィルターを参照してください。
- ダウンストリーム・サーバーが、このサーバーから送信されるすべてのクライアント証明書を信頼することを確認します。
- クライアント認証に使用されるどのクライアント証明書も、ダウンストリーム・サーバーのユーザー・レジストリー内のユーザー ID にマップされることを確認します。
- 基本レジストリーの場合、ユーザー ID は証明書の識別名 (DN) の共通名 (CN) です。
- Lightweight Directory Access Protocol (LDAP) レジストリーの場合、クライアント証明書の DN が LDAP レジストリー内に存在していなければなりません。
注: - <ssl> エレメント内で clientAuthentication 属性が true に設定されている場合、クライアントは、クライアント証明書認証が必須であるか、またはクライアント証明書認証をサポートするサーバーにのみ、クライアント証明書を送信します。
- <ssl> エレメント内で clientAuthenticationSupported 属性が true に設定されている場合、クライアントは、クライアント証明書を送信するかどうかを、ダウンストリーム・サーバーによって使用される <ssl> エレメント構成に基づいて選択できます。
- <ssl> エレメント内に clientAuthentication 属性および clientAuthenticationSupported 属性が設定されていない場合、クライアントとして動作するサーバーがクライアント証明書認証で使用可能にされることはありません。
いずれかの層を省略すると、その層にはデフォルト値が使用されます。attributeLayer エレメントおよび authenticationLayer エレメントについて詳しくは、
『アウトバウンド CSIv2 属性層の構成』および『アウトバウンド CSIv2 認証層の構成』を参照してください。