Trading Partner Integration の紹介
このサンプルでは、HTTPS プロトコルとプロキシ サーバを使用してトレーディング パートナ間で ebXML メッセージ交換を行うためのセキュリティ設定をコンフィグレーションする方法について説明します。このコンフィグレーションでは任意のプロキシ サーバを使用できますが、ここでは iPlanet Web Server 6.0 (Sun ONE 6.0) をプロキシ サーバとしてコンフィグレーションする方法について説明します。このサーバのデモ バージョンは、http://wwws.sun.com/software/download/products/3f186391.html からダウンロードできます。
このサンプルには、2 つのトレーディング パートナが必要です。次の図に示すように、トレーディング パートナ 1 は WebLogic Integration で、トレーディング パートナ 2 は WebLogic Integration - Business Connect でコンフィグレーションします。
注意 : プロダクション用のシナリオでは、通常は WebLogic Integration とプロキシ サーバ、およびプロキシ サーバと WebLogic Integration - Business Connect の間にファイアウォールがコンフィグレーションされます。このサンプルでは、IP アドレスを単純にするためにファイアウォールは省略されています。
このサンプルを実行するには、WebLogic Integration と WebLogic Server でクライアント証明書とサーバ証明書として使用するテスト専用証明書を生成する必要があります。ここでは、OpenSSL ツールを使用したこの証明書の生成方法について説明します。
ここでは、WebLogic Integration で、デフォルトのトレーディング パートナ Test_TradingPartner_1 がローカル トレーディング パートナになるようにコンフィグレーションします。その後、トレーディング パートナのバインディングを編集し、適切な証明書をトレーディング パートナとキーストアに追加します。最後に、トレーディング パートナ情報をファイルにエクスポートして、後で WebLogic Integration - Business Connect でパートナ プロファイルをコンフィグレーションできるようにします。
キーストアに証明書をロードした後、WebLogic Server Console に戻ってキーストア内の証明書に対する適切なエリアスを SSL 設定にコンフィグレーションする必要があります。ここでは、サーバの正しい SSL 設定をコンフィグレーションする方法について説明します。
ここでは、ローカル トレーディング パートナ情報を WebLogic Integration から xml ファイルにエクスポートします。この xml ファイルは、後で WebLogic Integration - Business Connect でリモート トレーディング パートナをコンフィグレーションするときに使用します。
手順 6 : WebLogic Integration - Business Connect での企業プロファイルのコンフィグレーション
ここでは、WebLogic Integration - Business Connect で企業プロファイルを作成し、そのプロファイルをローカル トレーディング パートナ情報を使用してコンフィグレーションします。その後、企業プロファイルをエクスポートして、後で WebLogic Integration でリモート トレーディング パートナをコンフィグレーションするときに使用できるようにします。
ここでは、前の節で WebLogic Integration - Business Connect からエクスポートしたファイルをインポートし、インポートされた情報をリモート トレーディング パートナ プロファイルとして使用するようにコンフィグレーションします。
手順 10 : WebLogic Integration - Business Connect でのパートナ プロファイルのコンフィグレーション
Using WebLogic Integration - Business Connect
Trading Partner Integration のセキュリティ
Using WebLogic Integration - Business Connect
このサンプルの説明は、WebLogic Integration のタスクと手順をすでに理解しているユーザを対象にしています。
このサンプルをコンフィグレーションして実行する前に、後で WebLogic Integration のキーストアにインポートする証明書を生成する必要があります。キーストアにインポートした証明書は、WebLogic Integration の暗号証明書、署名証明書、またはクライアント証明書として使用できます。また、WebLogic Server 証明書としても使用できます。プロダクション環境では複数の証明書の使用が考えられますが、このサンプルはテストのみを目的としているので、クライアントとサーバの両方で 1 つの証明書を使用します。
テスト専用証明書は任意のツールを使用して作成できますが、ここでは OpenSSL を使用した証明書の作成手順について説明します。これは、www.openssl.org からダウンロードできるオープン ソース ツールです。
証明書を作成する前に、テスト専用証明書の作成に使用するパブリック キーとプライベート キーのペアを作成する必要があります。Windows 環境で OpenSSL を実行する場合は、キーのペアを作成する前に「OpenSSL を実行するための Windows のコンフィグレーション」を完了する必要があります。
Windows 環境で OpenSSL を実行するには、次の手順を実行します。
これで、OpenSSL を使用してパブリック キーとプライベート キーのペアを作成する準備が整いました。
ここでは、OpenSSL を使用して 1024 ビットで RSA 方式のパブリック キーとプライベート キーのペアを作成する方法について説明します。
$ openssl genrsa rand
file1:file2:file3:file4:file5
out WLCert.key 1024
file1:file2:file3:file4:file5
は、「OpenSSL を実行するための Windows のコンフィグレーション」で作成した 5 つの大きなファイルを表します。
これで、OpenSSL を使用して任意のタイプの X.509 証明書を作成する準備が整いました。
WebLogic Integration では、デジタル証明書は次の 2 種類のキーストアに格納されます。
このサンプルでは、独自のキーストアと信頼キーストアが作成されていることを前提とします。ただし、このサンプルは、WebLogic Server の一部である (したがって WebLogic Integration の一部でもある) デモ用キーストア ファイル (DemoIdentity.jks
) とデモ用信頼キーストア (DemoTrust.jks
) を使用して実行することもできます。これらの Java キーストア ファイルは、次の場所にあります。
BEA_HOME
\weblogic81\server\lib\
BEA_HOME
は製品をインストールしたディレクトリです。
WebLogic Integration によって使用される基本的なサーバは WebLogic Server アプリケーションなので、ここでは WebLogic Server Administration Console を使用してキーストアをコンフィグレーションする方法について説明します。
BEA_HOME
\weblogic81\server\lib
\DemoIdentity.jks
」と入力します。 JKS
」と入力します。DemoIdentityKeyStorePassPhrase
」と入力します。BEA_HOME
\weblogic81\server\lib
\DemoTrust.jks
」と入力します。JKS
」と入力します。DemoTrustKeyStorePassPhrase
」と入力します。[SSL プライベート キー設定の確認] 画面が表示されます。この画面を使用して、WebLogic Server の SSL 設定をコンフィグレーションします。ただし、SSL 設定をコンフィグレーションする前に「パブリック キーとプライベート キーのペアの作成」で作成したプライベート キーをキーストアにロードする必要があるので、この時点でウィンドウを最小化できます。または、WebLogic Server を再起動し、キーストアへのプライベート キーのロードが含まれている次の項「手順 3 : WebLogic Integration でのローカル トレーディング パートナのコンフィグレーション」に進みます。
入力した設定の詳細については、「SSL のコンフィグレーション」の「キーストアのコンフィグレーション」を参照してください。
WebLogic Integration には、Test_TradingPartner_1 と Test_TradingPartner_2 という名前の 2 つのデフォルト トレーディング パートナが含まれています。ここでは、Test_TradingPartner_1 がローカル トレーディング パートナになるように WebLogic Integration でコンフィグレーションします。その後、トレーディング パートナ データを WebLogic Integration - Business Connect 形式のファイルにエクスポートします。このファイルは、後で WebLogic Integration - Business Connect でリモート トレーディング パートナをコンフィグレーションするときに使用します。
注意 : この節の手順を開始する前に、「手順 2: WebLogic Integration 用のキーストアのコンフィグレーション」の説明に従ってキーストアをコンフィグレーションし、キーストアのコンフィグレーションが完了した後で WebLogic Server を再起動する必要があります。
デフォルトのトレーディング パートナである Test_TradingPartner_1 が WebLogic Integration アプリケーションでローカル トレーディング パートナとして動作するようにコンフィグレーションするには、次の手順を実行します。
次に、適切な証明書がキーストアにインポートされるように、ローカルトレーディングパートナに追加する必要があります。
「テスト専用証明書の生成」で作成した証明書を追加するには、次の手順を実行します。
[証明書の追加 (手順 2/2)] 画面が表示されます。この画面を使用して、キーストアに格納され、ローカル トレーディング パートナによって使用されるクライアント証明書をインポートします。ただし、クライアント証明書を作成する前に、パスワード エリアスを作成する必要があります。
WLCert.key
にナビゲートします。WLCert.key
にナビゲートします。[タイプ] ドロップダウン リストから [CLIENT] を選択すると、証明書はクライアント証明書になります。同じ手順を使用して署名証明書を追加できます。この場合は、[タイプ] ドロップダウン リストから [SIGNATURE] を選択します。
[トレーディング パートナ管理|プロファイル管理] にナビゲートし、[Test_TradingPartner_1] トレーディング パートナをクリックすることで、Test_TradingPartner_1 トレーディング パートナのすべてのコンフィグレーションを確認できます。
次の手順では、トレーディングパートナのプロトコル バインディングを編集します。
WebLogic Integration でローカル トレーディングパートナになるようにコンフィグレーションしたデフォルト トレーディングパートナには、2 つの ebXML デフォルト バインディングが含まれています。ebXML 2.0 バインディングを編集して正しいプロトコルと署名を設定するには、次の手順を実行します。
新しいバインディング設定が保存されます。署名とシグネチャ トランスフォーメーションのコンフィグレーション方法を含む ebXML バインディングのコンフィグレーションの詳細については、「トレーディング パートナ管理」の「プロトコル バインディングのトレーディング パートナへの追加」を参照してください。
これで、ローカル トレーディング パートナのコンフィグレーションが完了し、テスト専用証明書がキーストアにインポートされたので、WebLogic Server コンソールに戻って SSL 設定をコンフィグレーションできます。
WebLogic Integration をコンフィグレーションしたときに、証明書をクライアント証明書としてキーストアにロードするように指定しましたが、その証明書をテストの目的で WebLogic Server のサーバ証明書としても使用できます。このために必要な手順は、サーバの SSL 設定に正しいエリアスをコンフィグレーションすることだけです。
WebLogic Server の SSL 設定は、WebLogic コンソールでコンフィグレーションします。
TP1-client
これは、「キーストアへのテスト専用証明書の追加」で WebLogic Server 用のプライベート キーをキーストアからロードするときに指定したエリアスです。
TP1Client
これは、「キーストアへのテスト専用証明書の追加」で WebLogic Server 用のプライベート キーをキーストアからロードするときに指定したパスワードです。
入力した設定の詳細については、「SSL のコンフィグレーション」の「双方向 SSL コンフィグレーション」を参照してください。
<Sep 29, 2003 12:23:32 PM PDT> <Notice> <Security> <BEA-090170> <Loading the private key stored under the alias TP1-client from the jks keystore file C:\bea\wli\81\sp1\server\lib\DemoIdentity.jks.>
.
<Sep 29, 2003 12:23:32 PM PDT> <Notice> <Security> <BEA-090171> <Loading the identity certificate stored under the alias TP1-client from the jks keystore file C:\bea\wli\81\sp1\server\lib\DemoIdentity.jks.>
<Sep 29, 2003 12:23:32 PM PDT> <Info> <WebLogicServer> <BEA-000310> <Using low strength (exportable) SSL.>
<Sep 29, 2003 12:23:32 PM PDT> <Notice> <Security> <BEA-090169> <Loading trusted certificates from the jks keystore file C:\bea\wli\81\sp1\server\lib\DemoTrust.jks.>
<Sep 29, 2003 12:23:32 PM PDT> <Notice> <Security> <BEA-090169> <Loading trusted certificates from the jks keystore file C:\bea\JDK141~1\jre\lib\security\cacerts.>
<Sep 29, 2003 12:23:32 PM PDT> <Info> <WebLogicServer> <BEA-000307> <Exportable key maximum lifespan set to 500 uses.>
<Sep 29, 2003 12:23:32 PM PDT> <Info> <WebLogicServer> <BEA-000300> <Certificate contents: 1 certificate(s):
.
.
WebLogic Server のコンフィグレーションができました。WebLogic Server でのSSL コンフィグレーションの詳細については、「SSL のコンフィグレーション」を参照してください。次の手順では、Test_TradingPartner_1 データをエクスポートして、WebLogic Integration-Business Connect でリモート トレーディング パートナをコンフィグレーションするときにインポートできるようにします。
WebLogic Integration-Business Connect でコンフィグレーションを繰り返して企業プロファイルとパートナ プロファイルの両方をコンフィグレーションする代わりに、WebLogic Integration からエクスポートしたデータを WebLogic Integration-Business Connect に直接インポートすることで、パートナ プロファイルを自動的にコンフィグレーションできます。WebLogic Integration のトレーディング パートナ データを WebLogic Integration-Business Connect 対応形式にエクスポートするには、次の手順を実行します。
注意 : ファイルのナビゲーション パスを覚えておいてください。この情報は、トレーディング パートナ情報を WebLogic Integration - Business Connect アプリケーションにインポートするときに必要です。
これで、WebLogic Integration のローカル トレーディング パートナのコンフィグレーションは完了しました。WebLogic Integration でのトレーディング パートナの作成、コンフィグレーション、および管理については、「トレーディング パートナ管理」を参照してください。
Test_TradingPartner_1 のために完了した手順を使用して、WebLogic Integration でリモート トレーディング パートナを作成できます。ただし、このサンプルでは、WebLogic Integration - Business Connect から企業プロファイルの設定をインポートし、それをリモート トレーディングパートナとして使用するという簡単な方法をとります。
次の手順では、Test_TradingPartner_2 という名前のトレーディング パートナを WebLogic Integration - Business Connect アプリケーションで企業プロファイル パートナとしてコンフィグレーションし、企業プロファイル情報を後で WebLogic Integration にインポートできるファイルにエクスポートします。
WebLogic Integration - Business Connect でトレーディング パートナを作成するには、企業プロファイルを設定した後、そのプロファイル用の証明書をコンフィグレーションします。その後、プロファイルをエクスポートして、WebLogic Integration でリモート トレーディング パートナをコンフィグレーションするときに使用できるようにします。この節では、次の手順について説明します。
この節では、WebLogic Integration - Business Connect で企業プロファイルを作成してコンフィグレーションします。
注意 : WebLogic Integration - Business Connect では、URL のコンピュータ名は、[ツール|プリファレンス] の [一般] タブにあるホスト名フィールドから取得されます。ホスト名は、Server アプリーションを実行中のコンピュータです。
これで、企業プロファイルのコンフィグレーションが完了しました。次の手順では、企業プロファイル情報をエクスポートして、WebLogic Integration でトレーディング パートナを、iPlanet プロキシ サーバでサーバ証明書を作成するときに使用できるようにします。
これで、企業プロファイルが WebLogic Integration - Business Connect から正常にエクスポートされました。WebLogic Integration - Business Connect の企業プロファイルと証明書の詳細については、『Using WebLogic Integration - Business Connect』を参照してください。
WebLogic Integration - Business Connect のパートナ プロファイルのリモート トレーディング パートナ情報をコンフィグレーションする前に、iPlanet Proxy Server をインストールしてコンフィグレーションする必要があります。これを実行するのは、パートナ プロファイルで必要な証明書の一部が iPlanet のコンフィグレーション中に作成されるからです。したがって、この時点で WebLogic Integration - Business Connect を終了し、WebLogic Integration でのリモート トレーディング パートナのコンフィグレーションを完了してから iPlanet のコンフィグレーションに進みます。
ここでは、「企業プロファイル情報のエクスポート」で WebLogic Integration - Business Connect からエクスポートした企業プロファイル情報をインポートすることで、WebLogic Integration アプリケーションでリモート トレーディング パートナを作成します。
トレーディング パートナ情報を正常にインポートした後、新しいトレーディング パートナ プロファイルを見直して、エンド ポイント URL が正しいことを必ず確認してください。これを行うには、[プロファイル管理] にナビゲートし、Test_TradingPartner_2 をクリックし、そのバインディングをクリックします。Test_TradingPartner_2 をクリックするときに、WebLogic Integration - Business Connect で企業プロファイルに 3 つの証明書 (クライアント、サーバ、署名) が自動的に作成され、WebLogic Integration にインポートされたことに注意してください。
これで、WebLogic Integration でのローカルおよびリモートのトレーディング パートナが両方ともコンフィグレーションされました。次の手順では、これらのトレーディング パートナにサービスとサービス プロファイルを追加します。
Test_TradingPartner_1 と Test_TradingPartner_2 のコンフィグレーションが完了したら、これらのトレーディング パートナに提供されるサービスと対応するサービス プロファイルを作成する必要があります。
サービスを正しくコンフィグレーションするには、ebXML メッセージ交換を開始するビジネス プロセスを正しくデプロイする必要があります。この節では、次の手順について説明します。
トレーディング パートナ プロファイルにサービスを追加するには、次の手順を実行します。
ebXML ビジネスプロセスの構築とデプロイに慣れていない場合は、「チュートリアル : ebXML ソリューションの構築」のいずれかの演習を完了することをお勧めします。
サービスが作成され、サービス プロファイルの追加を行う [サービスの詳細を表示および編集] 画面が表示されます。
トレーディング パートナ サービスを作成した後、ローカルとリモートのトレーディング パートナに対してサービスの提供と呼び出しを行うプロトコル バインディングと URL エンドポイントを指定するサービスプロファイルを作成します。サービス プロファイルを追加するには、次の手順を実行します。
注意 : エンドポイント URL が http ではなく https を使用するように変更されていることを確認してください。間違ったプロトコルが設定されている場合は、「トレーディング パートナのバインディングの編集」の手順に従って、正しいプロトコルを選択します。
注意 : 強制ではありませんが、通常、ローカルおよびリモート トレーディング パートナには同じタイプの認証を選択します。
これで、サービスとサービス プロファイルの作成が完了しました。サービスおよびサービス プロファイルの詳細については、「トレーディング パートナ管理」の「サービスの追加」および「サービスへのサービス プロファイルの追加」を参照してください。次の手順では、iPlanet SSL 設定をコンフィグレーションし、その後 WebLogic Integration - Business Connect のコンフィグレーションの完了に進みます。
ここでは、このサンプルで使用するプロキシ サーバとして iPlanet Web Server をコンフィグレーションする方法について説明します。
iPlanet Web Server をまだインストールしていない場合は、次の Sun の Web サイトからダウンロードできます。http://www.sun.com/download/products.xml?id=3f186391
iplanet admin と管理対象サーバのインストールと起動については、製品のドキュメントを参照してください。
iPlanet サーバ証明書をコンフィグレーションする前に、その証明書を格納する信頼データベースを作成する必要があります。手順は、次のとおりです。
初期化が成功したことを確認するダイアログ ウィンドウが表示されます。次の手順では、iPlanet のサーバ証明書として使用するトライアル デジタル証明書を Verisign に要求した後、それを WebLogic Integration - Business Connect のパートナ プロファイルにインポートします。
テスト目的で使用するトライアル デジタル証明書を Verisign に要求できます。この証明書は、数日間のみ有効です。証明書を要求するには、次の手順を実行します。
の間にあるテキストをすべてコピーし、テキスト ファイルに貼り付けます。これは、Verisign などの認証局に送信した証明書要求です。これで、トライアル デジタル証明書の要求プロセスが完了しました。次の手順では、このトライアルデジタル証明書を iPlanet サーバ証明書としてインストールします。
ここでは、iPlanet のサーバ証明書をインストールします。次の手順を実行します。
iPlanetServer.pem
ファイルの内容これで、サーバ証明書が正常に追加されました。次の手順では、信頼性のある CA サーバ証明書のダウンロードと変換を行います。
インストールしたサーバ証明書に加え、Verisign などの認証局からの信頼性のある証明書が必要です。Verisign に信頼性のある証明書を要求するには、次の手順を実行します。
サーバ証明書は、バイナリ形式になっています。この証明書を iPlanet で使用する前に、PEM 形式に変換する必要があります。WebLogic Server の der2pem
コマンド ライン ユーティリティを使用して、証明書を変換できます。このユーティリティの詳細については、次の URL にある『WebLogic Server コマンド リファレンス』で「WebLogic Server Java ユーティリティの使い方」の「der2pem」を参照してください。
http://edocs.beasys.co.jp/e-docs/wls/docs81/admin_ref/utils.html
説明されている手順を実行して、iPlanetCA.der
ファイルを iPlanetCA.pem
に変換します。
注意 : DER 形式のファイルにはバイナリ データが格納され、1 つの証明書のみに使用できます。PEM 形式のファイルは、複数のデジタル証明書をサポートします。たとえば、証明書チェーンを格納できます。ファイルの順序には重要な意味があり、信頼性の高い順にする必要があります。サーバ デジタル証明書をファイル内の最初のデジタル証明書として配置し、その次にデジタル証明書の発行者を配置します。以下、同様に配置し、最後に自己署名型のルート認証局の証明書を配置します。
変換を完了した後、信頼性のある CA 証明書をインストールします。
要求した信頼性のある証明書をインストールするには、次の手順を実行します。
iPlanetCA.pem
ファイルの場所これで、信頼性のある CA 証明書が正常にインストールされました。
次の手順では、WebLogic Integration - Business Connect 証明書をインストールします。
「企業プロファイル情報のエクスポート」でエクスポートした TP2.xml ファイルを「信頼性のある CA 証明書のインストール」の手順を実行してインポートすることで、iPlanet サーバの WebLogic Integration - Business Connect の CA 証明書を作成します。
これで、必要な iPlanet 証明書が正常にインストールされました。最後に、iPlanet コンフィグレーションで SSL を動作させるために必要な手順を実行します。
obj.conf
ファイルに、次のコード行を追加します。<Object name="myProxy" ppath="*">
PathCheck fn="get-client-cert" method="(GET|POST)" dorequest="1"
Service fn=wl_proxy FileCaching="OFF" Debug="ALL" KeepAliveEnabled=false DebugConfigInfo="ON" WebLogicHost=172.16.17.183\
WebLogicPort=7001 WLLogFile="C:/depot/newlog.txt" SecureProxy="OFF" WLProxySSL="ON" RequireSSLHostMatch="False"
</Object>
magnus.conf
ファイルに、次のコード行を追加します。これで iPlanet のコンフィグレーション手順は完了しました。コンフィグレーションした設定の詳細については、次の URL にある『WebLogic Server における Web サーバ プラグインの使い方』で「Netscape Enterprise Server (NES) プラグインのインストールとコンフィグレーション」を参照してください。
http://edocs.beasys.co.jp/e-docs/wls/docs81/plugins/nsapi.html
次の手順では、「手順 5 : WebLogic Integration トレーディング パートナ データのエクスポート」で WebLogic Integration からエクスポートしたトレーディング パートナ情報を WebLogic Integration - Business Connect でパートナ プロファイルにインポートすることによってリモート トレーディング パートナをコンフィグレーションした後、そのパートナ プロファイルに適したクライアント、サーバ、および信頼性のある証明書をコンフィグレーションします。
Test_TradingPartner_1 のパートナ プロファイルを新規作成する代わりに、WebLogic Integration アプリケーションからエクスポートしたファイルを WebLogic Integration Business Connect アプリケーションにインポートします。トレーディング パートナ情報をインポートすると、企業プロファイルと対応するクライアント証明書が自動的に作成されます。
iPlanet をプロキシ サーバとして使用しているので、WebLogic Integration - Business Connect がメッセージを送信したときの相互認証は iPlanet が処理します。したがって、iPlanet サーバ証明書をコンフィグレーションし、対応する CA 証明書をロードする必要があります。
WebLogic Integration トレーディング パートナ データをパートナ プロファイルに直接インポートするには、次の手順を実行します。
TP1.xml
ファイルにナビゲートし、それを選択します。これで、リモート トレーディング パートナの企業プロファイルの作成が完了しました。次の手順では、iPlanet のサーバ証明書をインポートし、対応する CA 証明書をロードします。
WebLogic Integration-Business Connect アプリケーションに iPlanet サーバ証明書をインポートするには、次の手順を実行します。
iPlanetServer.pem
ファイルにナビゲートし、[Import] をクリックします。これで、iPlanet サーバ証明書がインストールされました。次の手順では、iPlanet と WebLogic Integration - Business Connect の CA 証明書をロードします。
WebLogic Integration-Business Connect に CA 証明書をインポートする手順は次のとおりです。
これで、WebLogic Integration - Business Connect でのリモート トレーディング パートナのコンフィグレーションは完了しました。WebLogic Integration - Business Connect での証明書のコンフィグレーションの詳細については、『Using WebLogic Integration - Business Connect』の「Keys and Certificates」を参照してください。
以上で、このセキュリティのサンプルは終わりです。このサンプルを実行する前に、すべてのサーバを再起動することをお勧めします。