ヘッダーをスキップ
Oracle® Fusion Middleware Webサービスのためのセキュリティおよび管理者ガイド
11g リリース1 (11.1.1.7)
B56247-07
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

12 Webサービスのテスト

この章では次の項について説明します。

Webサービスのテスト

この項では、Fusion Middleware Controlの「Webサービスのテスト」ページを使用して、Webサービスから想定どおりの結果を受信できるかどうかを確認する方法について説明します。

「Webサービスのテスト」ページでは、Webサービスで公開されている任意の操作をテストすることができます。任意のアクセス可能なホストにデプロイされたWebサービスをテストできます。Webサービスをこのホストにデプロイする必要はありません。


注意:

「Webサービスのテスト」ページでは、ASCII文字のみを含むWSDL URLを解析できます。URLに非ASCII文字が含まれている場合、解析操作は失敗します。URLに非ASCII文字が含まれているWebサービスをテストするには、ブラウザでWSDL URLを変換できるようにし、エンコードされたWSDL URLを「Webサービスのテスト」ページで使用します。

ポリシーを使用するWebサービスをテストする場合、Fusion Middleware Controlを実行しているドメインと同じドメインにOracle WSMコンポーネントをインストールする必要があります。そうしないと、無効なポリシー例外が返されます。


様々な方法で「Webサービスのテスト」ページに移動できます。この項では、一般的な2つの方法について説明します。

Webサービスをテストする手順

  1. 一般的な次のどちらかの方法を使用して、「Webサービスのテスト」ページにアクセスします。

    • Oracle WebLogic Serverドメインのホーム・ページから操作を行う場合

      1. ナビゲータ・ペインで「WebLogicドメイン」を開き、Webサービスをテストするドメインを表示します。

      2. ドメインを選択します。

      3. 「WebLogicドメイン」メニューから、「Webサービス」「Webサービスのテスト」を選択します。「Webサービスのテスト」入力ページが表示されます。

      4. テストするWebサービスのWSDLを入力します。WSDLがわからない場合、検索アイコンをクリックし、登録されているWebサービス(存在する場合)から選択します。

      5. 「WSDL解析」をクリックします。

        WSDLがHTTP Basic認証で保護されている場合は、「WSDLアクセスのためのHTTP Basic認証オプション」をクリックし、WSDL解析の前にユーザー名とパスワードを入力します。

        図12-1に示すような完全な「Webサービスのテスト」ページが表示されます。

    • Webサービス・アプリケーションのホーム・ページから操作を行う場合

      1. ナビゲータ・ペインで、「アプリケーションのデプロイ」を開き、ドメイン内のアプリケーションを表示します。

      2. Webサービスがテストされるアプリケーションを選択します。

      3. ページの「Webサービス」セクションで、テストするWebサービス・エンドポイントの「テスト」をクリックします。

        図12-1に示すように、Webサービスのテスト・ページが表示されます。WSDLフィールドには、エンドポイントのWSDLが自動的に移入されます。

      4. 「WSDL解析」をクリックします。

        WSDLがHTTP Basic認証で保護されている場合は、「WSDLアクセスのためのHTTP Basic認証オプション」をクリックし、WSDL解析の前にユーザー名とパスワードを入力します。

    「Webサービスのテスト」ページを図12-1に示します。デフォルトでは、テスト・オプションのセクションは折りたたまれて表示されます。

    図12-1 「Webサービスのテスト」ページ(折りたたんだ表示)

    図12-1の説明が続きます
    「図12-1 「Webサービスのテスト」ページ(折りたたんだ表示)」の説明

  2. テストするサービスとポートを選択します。WSDLに複数のサービスとポートがある場合は、これらのフィールドがドロップダウン・メニューとして表示されます。WSDLのサービスとポートが1つのみの場合は、図12-1に示すように、これらのフィールドは読取り専用です。

  3. 「操作」メニューからテストする操作を選択します。使用可能なオプションはWSDLにより決定されます。

    RESTful Webサービスをテストするには、GETまたはPOSTサービス・ポート操作を選択します。

  4. テストのエンド・ポイントURLを変更する場合は、「エンドポイントURLの編集」をクリックして変更を行います。

  5. 選択されていない場合は、「リクエスト」タブを選択します。

  6. セクション名の横のプラス記号(+)をクリックして、テスト・オプションのセクションを開きます。展開表示の「Webサービスのテスト」ページを図12-2に示します。

    図12-2 「Webサービスのテスト」ページの下部(展開表示)

    図12-2の説明が続きます
    「図12-2 「Webサービスのテスト」ページの下部(展開表示)」の説明

  7. 「セキュリティ」セクションで、WebサービスのテストでOracle WSMセキュリティ・ポリシー、HTTP Basic認証またはカスタム・ポリシーの認証を使用するか、あるいは資格証明を使用しないかを指定します。WSDLのポリシーではセキュリティ設定は決定されないため、テストするセキュリティのタイプを指定できます。デフォルトは「なし」です。選択したオプションに応じて、追加のフィールドが表示されます。使用可能なオプションの詳細は、「セキュリティ・テストの有効化」を参照してください。

    RESTful Webサービスのテスト時には、SOAPプロトコルは使用されないため、セキュリティ・オプションはHTTP Basic認証またはなしのみです。

  8. 「サービスのクオリティ」セクションで、信頼できるメッセージング(WS-RM)、WS-AddressingまたはMTOMポリシーを明示的にテストするかどうかを指定します。使用可能なオプションの詳細は、「サービスのクオリティ・テストの有効化」を参照してください。


    注意:

    この項の内容は、RESTful Webサービスのテスト時には使用できません。


  9. HTTPトランスポートセクションでは、テスト・メカニズムはWSDLを使用して、テストでSOAPアクションを使用可能にするかどうかを決定します。使用可能な場合は、SOAPアクションHTTPヘッダーを使用してリクエストを送信するかどうかを指定します。詳細は、「HTTPトランスポート・オプションの有効化」を参照してください。


    注意:

    この項の内容は、RESTful Webサービスのテスト時には使用できません。


  10. Webサービスを同時に複数回起動する場合は、「追加テスト・オプション」セクションでストレス・テストの有効化オプションを選択します。このオプションを設定すると、ストレス・テストのオプションに値を入力することも、デフォルトをそのまま使用することもできるようになります。詳細は、「Webサービス操作のストレス・テスト」を参照してください。

  11. 「引数の入力」セクションでは、Webサービスの入力引数を「値」フィールドに入力します。パラメータとタイプおよび要求される入力値は、WSDLにより決定されます。

    「ツリー表示」または「XML表示」を選択して、入力パラメータの階層リストとXMLコンテンツの階層リストを切り替えます。

  12. 「Webサービスのテスト」をクリックしてテストを開始します。

    テストを終了すると、「レスポンス」タブに結果が表示されます。

    テストが成功すると、図12-3に示すように、「テストのステータス」フィールドに「リクエストは正常に受信されました。」と表示され、レスポンス時間が表示されます。


    注意:

    SOAコンポジット・テストを実行すると、新規コンポジットが生成されたかどうかが「レスポンス」タブに示されます。「フロー・トレースの起動」ボタンをクリックして、「フローのトレース」ウィンドウを開くこともできます。このウィンドウでは、様々なコンポジットおよびコンポーネント・インスタンスを介したメッセージのフローを表示できます。


    図12-3 テストの成功

    図12-3の説明が続きます
    「図12-3 テストの成功」の説明

    テストが失敗すると、エラー・メッセージが表示されます。たとえば、図12-4には、var-Intパラメータのタイプ・エラーが原因のエラーが表示されています。この例の場合には、intが必要な状況でstringデータが入力されました。


    注意:

    レスポンスタブの結果は、標準Webサービス結果の簡易バージョンです。


  13. 図12-4 データ検証エラー

    図12-4の説明が続きます
    「図12-4 データ検証エラー」の説明

入力引数のXMLソースとしての編集

入力引数は、ユーザーにわかりやすい形式で表示できます。また、XMLソース・コードを直接編集できます。XMLソースを直接編集する場合は、有効なXMLを入力する必要があります。ツリー表示XML表示を切り替えるには、ページの「引数を入力」セクションのドロップダウン・リストを使用します。

セキュリティ・テストの有効化

「Webサービスのテスト」ページでは、Oracle WSMセキュリティ・ポリシー、HTTP Basic認証またはカスタム・ポリシーを使用してWebサービスのセキュリティをテストできます。ページの「セキュリティ」セクション内のいずれかのオプションを選択することによって、テストのタイプを選択できます。

WSDLのポリシーではセキュリティ設定は決定されないため、テストするセキュリティのタイプを指定できます。デフォルトは「なし」です。

使用できるオプションは次のとおりです。以降の項で、その詳細を説明します。


注意:

RESTful Webサービスのテスト時には、SOAPプロトコルは使用されないため、セキュリティ・オプションはHTTP Basic認証またはなしのみです。


OWSMセキュリティ・ポリシー

「OWSMセキュリティ・ポリシー」を選択すると表示されるオプションを、図12-5に示します。この図では、「拡張オプション」フィールドが選択されているために、使用可能なすべてのフィールドが表示されています。

図12-5 OWSMセキュリティ・ポリシーのテスト・オプション

図12-5の説明が続きます
「図12-5 OWSMセキュリティ・ポリシーのテスト・オプション」の説明

Oracle WSMセキュリティ・ポリシーを使用してWebサービスのセキュリティをテストする手順は、次のとおりです。

  1. WSDLで指定されている、互換性があるクライアント・ポリシーの一覧が表示される「互換性のあるクライアント・ポリシー」で、テストするクライアント・ポリシーを選択します。

    または、エンドポイントでネガティブ・テストを実行するには、「その他のクライアント・ポリシー」リストから、互換性のないポリシーまたは「すべて」を選択します。


    注意:

    セキュリティ・ポリシーでないもの、およびテスト機能でサポートされていないポリシーは、読取り専用で表示され、選択できません。テスト機能でサポートされるクライアント・ポリシーのリストについては、「サポートされるクライアント・セキュリティ・ポリシー」を参照してください。

    複数のセキュリティ・ポリシーをサポートするサービス・ポリシーは、テスト機能でサポートされません。


    選択したポリシーで必須の構成プロパティは、アスタリスク(*)付きで表示されます。たとえば、次のようにします。

    • username_tokenおよびhttp_tokenポリシーの場合、「ユーザー名」「パスワード」フィールドは必須です。SAMLポリシーの場合、「ユーザー名」フィールドのみ必須です。

    • メッセージ保護ポリシーおよび双方向SSLポリシーの場合、「JKSキーストア・ロケーション」フィールドと「JKSキーストア・パスワード」フィールドは必須です。(一方向SSLポリシーの場合は、これらのフィールドを設定する必要はありません。)

  2. ポリシーが必須と判断したフィールドに値を入力します。

    「JKSキーストア・ロケーション」フィールドおよび「JKSキーストア・パスワード」フィールドがポリシーによって要求される場合、NFSがアクセス可能な一時ユーザーが作成したキーストアの場所とパスワードを入力し、「キーのロード」をクリックします。「拡張オプション」の下にある関連するキーストア・フィールドに、キーストアで指定されている別名が移入されます。

    キーストアの作成の詳細は、「秘密鍵の生成およびJavaキーストアの作成」を参照してください。

  3. 「拡張オプション」をクリックします。追加のキーストア別名およびSAMLプロパティのフィールドが表示されます。選択したポリシーで必須のプロパティは、アスタリスク付きで表示されます。該当のフィールドに必要な値を入力するか、オーバーライド値を入力します。

HTTP Basic認証

このオプションでは、HTTPトランスポート・ヘッダーに挿入されたユーザー名およびパスワード資格証明が必要です。ユーザー名とパスワードは存在していて、WebLogic Serverで有効である必要があります。

拡張

「拡張」を選択すると表示されるオプションを、図12-6に示します。

図12-6 「拡張」テスト・オプション

図12-6の説明が続きます
「図12-6 「拡張」テスト・オプション」の説明

「拡張」オプションでは、カスタム・ポリシーを使用してWebサービスのセキュリティをテストできます。これを行うには、次の手順を実行します。

  1. カスタム・ポリシーのURIは、「ポリシーURI」フィールドで指定します。このフィールドは必須です。

  2. 「名前」「値」フィールドに、ポリシー構成のオーバーライドを指定します。プロパティを追加するには、「追加」をクリックして、構成をオーバーライドする名前と値のペアを指定します。プロパティを削除するには、表内のプロパティを選択して、「削除」をクリックします。


    注意:

    プロパティの指定には、各プロパティの完全名を使用する必要があります。たとえば、oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_KEYSTORE_LOCATIONのように指定します。オーバーライド可能なプロパティのプロパティ名のリストについては、「クライアントのプログラムによる構成オーバーライドの使用」表11-2を参照してください。


サポートされるクライアント・セキュリティ・ポリシー

テスト機能では次のOracle WSMクライアント・セキュリティ・ポリシーがサポートされます。

  • oracle/wss_http_token_client_policy

  • oracle/wss_http_token_over_ssl_client_policy

  • oracle/wss_saml_token_bearer_over_ssl_client_policy

  • oracle/wss_saml_token_over_ssl_client_policy

  • oracle/wss_saml20_token_bearer_over_ssl_client_policy

  • oracle/wss_saml20_token_over_ssl_client_policy

  • oracle/wss_username_token_client_policy

  • oracle/wss_username_token_over_ssl_client_policy

  • oracle/wss10_message_protection_client_policy

  • oracle/wss10_saml_token_with_message_integrity_client_policy

  • oracle/wss10_saml_token_with_message_protection_client_policy

  • oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

  • oracle/wss10_saml20_token_with_message_protection_client_policy

  • oracle/wss10_username_id_propagation_with_msg_protection_client_policy

  • oracle/wss10_username_token_with_message_protection_client_policy

  • oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

  • oracle/wss10_x509_token_with_message_protection_client_policy

  • oracle/wss11_message_protection_client_policy

  • oracle/wss11_saml_token_identity_switch_with_message_protection_client_policy

  • oracle/wss11_saml_token_with_message_protection_client_policy

  • oracle/wss11_saml20_token_with_message_protection_client_policy

  • oracle/wss11_username_token_with_message_protection_client_policy

  • oracle/wss11_x509_token_with_message_protection_client_policy

サービスのクオリティ・テストの有効化


注意:

この項の内容は、RESTful Webサービスのテスト時には適用されません。


「Webサービスのテスト」ページの「サービスのクオリティ」セクション(図12-7)では、サービスのクオリティ(QoS)の信頼できるメッセージング(WS-RM)、WS-AddressingおよびMessage Transmission Optimization Mechanism(MTOM)という3つの特性をテストできます。サービスのクオリティの各タイプには、3つのオプションがあります。

図12-7 「Webサービスのテスト」ページのサービスのクオリティのパラメータ

図12-7の説明が続きます
「図12-7 「Webサービスのテスト」ページのサービスのクオリティのパラメータ」の説明

HTTPトランスポート・オプションの有効化


注意:

この項の内容は、RESTful Webサービスのテスト時には適用されません。


テスト・メカニズムはWSDLを使用して、テストでSOAPアクションを使用可能にするかどうかを決定します。WSDLのsoap:operationにsoapAction属性が指定されている場合、これが表示され、「SOAPアクションの有効化」が有効にされています。

「SOAPアクションの有効化」が選択された状態でリクエストが送信されると、SOAPアクションHTTPヘッダーが送信されます。

この動作を変更するには、「SOAPアクションの有効化」ボックスの選択を解除します。その場合、HTTPヘッダーは送信されません。または、「SOAPアクション」フィールドに異なる値を入力することによって、この動作をオーバーライドできます。(必ず、テスト対象のSOAPアクションとその構文を把握しておく必要があります)。

図12-8 「Webサービスのテスト」ページのHTTPトランスポート・オプション

図12-8の説明が続きます
「図12-8 「Webサービスのテスト」ページのHTTPトランスポート・オプション」の説明

Webサービス操作のストレス・テスト

Webサービス操作の連続した呼出しを起動するには(図12-9)、ストレス・テストの有効化チェック・ボックスを選択します(図12-9)。次のオプションがあります。

テストを起動すると、進捗ボックスにテストのステータスが表示されます。ストレス・テストが完了すると、確認ページにテストの結果が表示されます。

「レスポンス」タブには、エラーが発生したテスト数、レスポンス時間の平均値、最小値および最大値など、ストレス・テストに関する追加情報が表示されます。各テストの詳細は、表形式で示されます。各テストについて、スレッド数、ループ数、テスト時間、テストの開示時刻と終了時刻、および呼出しステータスを表示できます。表に表示されたフィールドは、「表示」メニューを使用してフィルタリングできます。

図12-10 「Webサービスのテスト」ページのストレス・テストの結果

図12-10の説明が続きます
「図12-10 「Webサービスのテスト」ページのストレス・テストの結果」の説明

Webサービスのテスト・ページの無効化


注意:

この項の内容は、Java EE Webサービスには該当しません。


Webサービスのテスト・ページを無効化すると、Webサービスを公開するアプリケーションの、外部から参照可能な詳細が少なくなり、セキュリティが強化されます。


注意:

「エンドポイント・テストの有効化」コントロールの無効化は、Webサービスの外部から参照可能なテスト・ページにのみ影響します。この章で説明されているWebサービス・テストの機能には影響しません。


Fusion Middleware Controlを使用してテスト・ページを無効化する方法

  1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」の説明に従って、Webサービスのサマリー・ページに移動します。

  2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・ポートを表示するWebサービスのプラス記号(+)をクリックします。

  3. ポート名をクリックして「Webサービス・エンドポイント」ページに移動します。

  4. 「構成」タブをクリックします。

  5. 「エンドポイント・テストの有効化」フィールドで、リストから「False」を選択します。

  6. 「適用」をクリックします。