IBM® EMM の SSL について
これまで見てきたように、多くの IBM® アプリケーション・コンポーネントは、通常の操作時にはサーバーとしてもクライアントとしても動作することができます。また、一部の IBM® コンポーネントは Java で書かれ、一部は C++ で書かれています。これらの事項が、使用する証明書の形式を決定します。 CA から 1 回限り購入の自己署名証明書を入手して作成する場合は、形式を指定します。
IBM® アプリケーションは、IBM® サーバー・コンポーネントへの片方向 SSL の要求を行うクライアントとして機能する場合は、トラストストアを必要としないことに注意してください。
サーバーとして動作する Java コンポーネント
JSSE SSL の実装を使用して Java で作成され、アプリケーション・サーバーに配置された IBM® アプリケーションの場合は、ご使用の証明書を使用するようにアプリケーション・サーバーを構成する必要があります。証明書は JKS 形式で格納する必要があります。
アプリケーション・サーバーは、追加構成を必要としないデフォルトの証明書を提供しています。アプリケーション・サーバーのデフォルトの証明書は、単にアプリケーション・サーバーで SSL ポートを有効にするだけで、アプリケーション・サーバーの何らかの追加構成を実行しない場合に使用されるものです。
アプリケーション・サーバーによって提供されているデフォルトの証明書以外の証明書を使用する場合は、追加構成が必要です。この構成については、SSL 用の Web アプリケーション・サーバーの構成で説明しています。
サーバーとして動作する C++ コンポーネント
Campaign リスナー、Contact Optimization サーバー・コンポーネント、 および Attribution Modeler リスナーは C++ で書かれており、PEM 形式で格納されている 証明書を必要とします。
クライアントとして動作する Java コンポーネント
Java で書かれており、アプリケーション・サーバーに配置されている IBM® アプリケーションについては、トラストストアは必要ありません。構成を簡単にするために、クライアントとして動作する IBM® Java アプリケーションは、片方向 SSL 通信時にサーバーを認証しません。ただし、暗号化は行われます。
クライアントとして動作する C/C++ コンポーネント
C/C++ で書かれており、OpenSSL の実装を使用しているアプリケーションについては、トラストストアは必要ありません。Campaign リスナー、Contact Optimization サーバー・コンポーネント、Attribution Modeler リスナー、 および NetInsight は、このカテゴリーに該当します。
証明書の数
サーバーとして動作している IBM® コンポーネントをホストするマシンごとに、別の証明書を使用するのが理想です。
複数の証明書を使用しない場合、正しい形式 (Java コンポーネントには JKS、C++ コンポーネントには PEM) であれば、サーバーとして動作するすべての IBM® コンポーネントに対して同じ証明書を使用できます。すべてのアプリケーションに対して一つの証明書を使用する場合、ユーザーが初めて IBM® アプリケーションにアクセスするときに、ブラウザーによって証明書を受け入れるかどうかを確認するプロンプトが表示されます。
本章の例は、Java および C++ IBM® コンポーネントで使用する自己署名証明書ファイルの作成方法を示しています。