Generic Service Client は、要求を送信するための専用クライアントへのアクセス権がない場合に、サービスのデバッグとテストを行うのに役立ちます。 サービスに各種のトランスポートおよびセキュリティー構成をセットアップしたり、要求のパラメーターを編集したり、添付を送信したりできます。
要求が正常に呼び出されると、そのメッセージ・リターンが「要求ヒストリー」に追加されます。 この機能を使用して、別のタイミングで生成された結果を見直すことができます。
IBM® Rational® Performance Tester または IBM Rational Service Tester for SOA Quality を使用している場合、「要求ヒストリー」で要求を選択して「テストの生成」をクリックすると、選択されたすべての要求を再生するテストを生成できます。テストを編集して、記録済みテストの値を変数テスト・データに置き換えるか、または動的データ相関をテストに追加することができます。サービス応答内の XML 文書の内容に対して、検査ポイントを設定することもできます。
ワークベンチで使用する Java ランタイム環境 (JRE) で、選択したデジタル証明書で必要な暗号化のレベルがサポートされている必要があります。 例えば、 128 ビット暗号化しかサポートされない JRE では、256 ビット暗号化を必要とするデジタル証明書は使用できません。 デフォルトでは、ワークベンチは制限された強度の暗号で構成されます。 あまり制限が厳しくない暗号化アルゴリズムを使用するには、 無制限の管轄ポリシー・ファイル (local_policy.jar および US_export_policy.jar) をダウンロードして適用する必要があります。
無制限の管轄ポリシー・ファイルは、http://www.ibm.com/developerworks/java/jdk/security/50/ のサイトからダウンロードできます。
無制限の管轄ポリシー・ファイルを取得するには、「IBM SDK ポリシー・ファイル」をクリックし、developerWorks® にログインします。 これらのポリシー・ファイルをインストールする前に、 後で元ファイルを復元する場合のために、既存のポリシー・ファイルをバックアップします。 その後、/jre/lib/security/ ディレクトリー内のファイルを無制限の管轄ポリシー・ファイルで上書きします。
単純認証 (サーバー認証): この場合、テスト・クライアントは、サービスが信頼できるかどうかを判断する必要があります。 鍵ストアをセットアップする必要はありません。 「常に信用する」オプションを選択している場合、サーバー証明書の鍵ストアを提供する必要はありません。
サービスの認証を必要とする場合は、信頼されているサービスの証明書を含む、証明書トラストストアを構成できます。 この場合、テストでは有効な証明書の受信が想定されます。
二重認証 (クライアントおよびサーバー認証): この場合、サービスはルート権限に従ってテスト・クライアントを認証する必要があります。 認証済みクライアントとしてテストを認証するために作成する必要がある、クライアント証明書鍵ストアを用意する必要があります。
プロキシーを介してサービス・テストを記録する際、記録プロキシーはサービスとクライアント間に存在します。 この場合、記録プロキシーの SSL 設定を構成して、それ自体を、クライアントに対する実際のサービスとして認証し (単純認証)、さらにサービスに対するクライアントとして認証 (二重認証) する必要があります。 これは、適切な証明書で記録プロキシーを指定しなければならないことを意味します。
スタブ・サービスを使用する際には、スタブ・サービスの SSL 設定を構成して、それ自体を実際のサーバーとして認証することもできます。 これは、適切な証明書のサービス・スタブを指定 しなければならないことを意味します。
SSL および SOAP セキュリティー・プロトコルの両方について、デジタル証明書を使用してサービスをテストできます。 デジタル証明書は、ワークスペース内でアクセス可能な Java Key Store (JKS) キー・ストア・リソース内に含める必要があります。 鍵ストア・ファイルを扱うときは、セキュリティー・エディターとテスト・エディターの両方で、 鍵にアクセスする際に必要なパスワードを設定する必要があります。 SOAP セキュリティーの場合は、鍵の明示的な名前と、鍵ストア内の秘密鍵にアクセスするためのパスワードを指定 しなければならない場合があります。
テストをエージェント・コンピューターにデプロイする場合は、 これらのファイルを IBM Agent Controller が使用する JRE にも追加する必要があります。
配列はサポートされません。
仕様が存在しないため、Java Message Service (JMS) トランスポートでは、添付はサポートされません。 エンベロープは、UTF-8 エンコードを使用して直接送信されます。
すべての Java ランタイム環境 (JRE) 実装で、すべてのセキュリティー・アルゴリズムが常に使用可能というわけではありません。 特定のセキュリティー実装が使用できない場合、この製品で使用する JRE のクラスパスに、必要なライブラリーを追加します。
汎用サービス・テスターは、XML 文書内で反映されているようにエンベロープを表示します。 ただし、セキュリティー・アルゴリズムでは、エンベロープはバイナリーとして考慮されます。 したがって、着信メッセージと出力メッセージを正しく暗号化する一方で、テスト内では常に暗号化解除しておくよう、SOAP セキュリティー構成をセットアップする必要があります。
Microsoft .NET トランスポート・プロトコルは、トランザクション、範囲、または二重モード要求 (MS-MQ トランスポートに基づくコールバックや両方向サービスなど) をサポートしません。