TIBCO BW エンジンでの SSL を使用した HTTPS 接続の設定
このセクションでは、TIBCO BusinessWorks (BW) エンジンで、自己作成した PKCS12 証明書を使用して HTTPS 接続を確立する手順の概要を説明します。これらの手順は、証明機関 (CA) によって発行された証明書を使用する場合にも適用できます。
|
|
このプロセスは、PKCS12 証明書フォーマットとのみ互換性があります。
|
HTTPS 接続を確立する手順
1. CA 発行の証明書を PKCS12 キーストアバンドルにインポートします。
◦ 次のコマンドを使用して、CA 署名証明書を PKCS12 キーストアにインポートします。
keytool -import -keystore <keystore_name.pkcs12.keystore> -storepass <password> -alias <your_alias> -file <certificate_file>
|
|
サービスのセキュリティを確保するために、本番環境ではパブリック証明機関 (CA) によって発行された証明書を使用することをお勧めします。自己署名証明書は、組織の IT セキュリティポリシーに応じて、本番ではない環境や開発環境で受け入れられる場合があります。
|
2. Java keytool を使用してキーストアを生成します (オプションの手順)。
◦ コマンドプロンプトから次のコマンドを実行して、キーストアを生成します。
keytool -genkey -alias <alias_name> -keyalg RSA -keysize 2048 -sigalg SHA256withRSA -keystore <keystore_name.pkcs12.keystore> -storepass <password>
-dname "CN=<hostname>, OU=EastCoast, O=MyComp Ltd, L=New York, ST=, C=US" -ext "SAN=dns:<hostname>,dns:<hostname>,ip:<ip_address>" -validity <validity>
◦ <alias_name>、<hostname> などのプレースホルダーを適切な値に置き換えます。
◦ このコマンドにより、現在のフォルダにキーストアが作成されます。
◦ このコマンドは、RSA 2048 秘密キーアルゴリズムを使用して自己署名サーバー証明書を生成し、Java の PKCS12 キーストアフォーマットと互換性のある PKCS12 バンドルに配置します。
|
|
キーストアが自己署名であるか、あまり知られていない CA によって発行されている場合は、Windchill で使用される該当する Java ランタイムトラストストアにそのキーストアをインポートします。以下のコマンドを使用します。
keytool -importkeystore -destkeystore <path_to_java_truststore> -srckeystore <path_to_source_keystore> -srcstoretype pkcs12 -deststoretype jks
|
TIBCO プロジェクト用のグローバル変数の定義
1. 必要条件:
◦ サーバータイプとして HTTPComponent を使用している場合に、designer.tra、bwengine.tra、および <APP_Name>_Process_Archive.tra に以下のプロパティを追加します。
◦ ファイルを展開し、アプリケーションを再起動します。
java.property.TIBCO_SECURITY_VENDOR=j2se
2. キーストアのパスとパスワードのグローバル変数を作成します。
◦ グローバル変数 (WSCertKeyStorePath) を作成して、前の手順で生成した PKCS12 キーストアへのパスを保存します。たとえば、Linux OS では /opt/esi/ws-server.pkcs12、Windows OS では c:\esi\ws-server.pkcs12 などです。
◦ 別のグローバル変数 (WSPassword) を作成して、キーストアのパスワードを保存します。
Web サーバーを SSL 用に設定するための TIBCO プロジェクトの更新
1. TIBCO Designer で新規アイデンティティを作成します。
◦ > > > から新規リソースを追加します。
◦ 「Identity Configuration」で、「Type」として「Identity File」を選択します。
◦ 「URL」で、パス用に作成したグローバル変数を追加します。
◦ 「File Type」として「PKCS12」を選択します。
◦ 「パスワード」の横にある地球のアイコンをクリックします。
◦ 「はい」をクリックして、フィールドモードを変更し、グローバル変数をパスワードとして指定します。
◦ 変更を適用してプロジェクトを保存します。
2. Designer で、HTTP 接続での SSL を有効にします。
◦ HTTP 接続で「Use SSL?」を選択します。
◦ 「SSL Configuration for HTTPS Connections」で、前の手順で作成した「Identity」を選択します。
◦ 「Server Type」として「Tomcat」を選択します。
◦ 変更を適用してプロジェクトを保存します。
3. GetWSDL.process を修正します。
◦ SSL コンフィギュレーションでは、「Retrieve Resources」アクティビティで「hostname」と「port」を空白のままにします。
| 詳細なデバッグを有効にするには、designer.tra、bwengine.tra、および <APP_Name> _Process_Archive.tra に以下のプロパティを追加して、SSL コンフィギュレーションの詳細情報を取得します。 Trace.Task.*=true java.property.javax.net.debug=ssl,plaintext,record,handshake |
サーバーが SSL 用に設定されている場合の変更の確認
1. HTTPS 接続のセットアップを確認します。
◦ TIBCO Administrator で、HTTPS 接続の設定が行われたプロジェクトを展開します。
◦ TIBCO Administrator UI のプロセスアーカイブサービスのトレースログで、ハイライトされているエントリを確認します。
2. URL を実行してサーバーが SSL 経由で動作していることを確認します。
◦ ブラウザまたは curl コマンドを使用して URL にアクセスし、サーバーが SSL 経由で動作していることを確認します。
◦ 必要な詳細情報 (ホスト名とポート番号) を変更した後、URL を確認します。
https://<hostname>:<port_no>/ProcessDefinitions/DataProcessing/SOAPServer?wsdl
| 自己署名証明書を使用すると、セキュリティ保護されていないという警告がブラウザに表示される場合があります。この警告は、CA 発行の証明書を使用している場合には表示されません。 |