SSL を使用するための JMS ノードの構成

JMS ノードを、Secure Sockets Layer (SSL) プロトコルを使用して接続可能な JMS クライアントをサポートする JMS プロバイダーと協働するように構成します。

このタスクの概要

JMS 1.1 仕様では、JMS はメッセージ保全性またはメッセージ・プライバシーの制御または構成用の機能を提供しないと言明されています。 JMS プロバイダーは一般にそれらの追加機能をサポートし、それらのサービスを構成するための独自の管理ツールを提供します。 クライアントは、使用する管理対象オブジェクトの一部として、適切なセキュリティー構成を入手できます。

JMSInputJMSOutputJMSReply の 3 つの組み込みノードによって作成された JMS 接続に、 SSL のセキュリティを適用したい場合は、ご利用の JMS プロバイダーが提供するドキュメントをご確認ください。 JMS ノードにより使用される JNDI 管理対象オブジェクトの構成は、各 JMS プロバイダーに固有です。

このトピックでは、3 つの組み込みノード JMSInputJMSOutput、および JMSReply については、JMS ノードという一般的な用語で言及しています。ここで説明する情報と説明は、使用している特定タイプのノードに適用してください。

JMS クライアントの接続用の SSL サポートを提供する JMS プロバイダーの 1 つの例は、TIBCO Enterprise Message Service (EMS) です。 続くいくつかのセクションでは、JMS ノードに使用される認証モデルと、TIBCO EMS への具体的な参照を説明し、SSL を使用して安全に JMS ノードが TIBCO EMS JMS Server に接続する方法に関する情報を記載しています。

  1. JMS ノードの SSL 認証モデル
  2. SSL 対応 JNDI 管理対象オブジェクトを使用するよう JMS ノードを構成する

JMS ノードの SSL 認証モデル

このタスクの概要

JMSプロバイダーであるTIBCO EMSは、Java Secure Sockets Extension(JSSE)Javaパッケージ、またはEntrustが提供する SSL の実装のいずれかを使用できるJava™クライアントをサポートしています。 提供されるサービスの詳細については、選択したパッケージに付属する資料を参照してください。

TIBCO EMS は、いくつかの異なる認証シナリオをサポートしますが、JMS ノードはサーバーへのクライアント認証しか使用できません。 このシナリオでは、TIBCO EMS サーバーは SSL ハンドシェーク中にクライアントのデジタル証明書を要求し、サーバーのトラステッド認証局のリストに照らして発行者を検査します。 権限がサーバーのリスト内にない場合、それ以降の通信は JMS ノードによって阻止されます。

したがって、EMS サーバーは、その構成ファイル内の SSL 証明書のクライアント認証を明示的に使用可能にするように構成する必要があります。JNDI 管理対象 SSL JMS 接続ファクトリーは、同じレベルのサポートに構成します。

SSL 対応 JNDI 管理対象オブジェクトを使用するよう JMS ノードを構成する

このタスクの概要

JMS ノードは、TIBCO EMS サーバーへの JMS 接続を作成するために使用する、接続ファクトリー・オブジェクトを検索します。

手順

  1. JMSノードのプロパティ「 Connection factory name 」を設定し、 SSL 接続が有効になっている事前設定済みの接続ファクトリを指定します。

    対応する SSL JMS 接続ファクトリー定義で、適切なパラメーターが設定されていることを確認します。

    • クライアント認証を使用可能にします。
    • サーバー URL で SSL プロトコルを指定します。
    • 必要なサポートを定義する他のパラメーターを設定します。
    この JNDI 管理対象オブジェクトの生成方法については、プロバイダーの資料を参照してください。
  2. JMSノードのプロパティ「 Location JNDI Bindings 」を、 SSL の接続用にJNDI管理オブジェクトを含むJNDIバインディングを指す URL に設定します。

    TIBCO EMS の場合、この URL は以下の形式になります。

    tibjmsnaming://server_name:ssl_port
    • server_name は、サーバーがインストールされるコンピューターのホスト名です。
    • ssl_port は、SSL 接続のサーバー・ポートです。一般に、これは TIBCO EMS サーバーのポート 7243 です。
  3. JMS ノードを含むメッセージ・フローをデプロイする 統合サーバー が TIBCO EMS クライアント JAR ファイルを使用できるようにします。
    JMS プロバイダーのクライアント JAR ファイルおよび SSL ベンダーの JAR ファイルを含むディレクトリーを指すように、JMS プロバイダー・ポリシー・プロパティー「タイプ 4 ドライバー・クラス JAR の URL (Type 4 driver class JARs URL)」 を設定します。

    一部の JMS プロバイダーは JSSE を使用して SSL サポートを実装します。以下の JAR ファイルが jarsURL ディレクトリー内にあることを確認してください。

    • jsse.jar
    • net.jar
    • jcert.jar
    • tibcrypt.jar

    標準の非 SSL クライアント JAR ファイルは同じ場所にあります。

    必要な特定の JAR ファイルについて詳しくは、ご使用の JMS プロバイダーの資料を参照してください。