ポリシー構成を共有するサービス・プロバイダーの構成

WebSphere® Application Server サービス・プロバイダーは、HTTP GET 要求 あるいは Web Services Metadata Exchange (WS-MetadataExchange) GetMetadata 要求を使用して取得される公開済みの Web サービス記述言語 (WSDL) 内のポリシー構成を共有することができます。

始める前に

すべての必要な成果物を含む Web サービスのサービス・プロバイダーを開発し、 Web サービス・アプリケーションをアプリケーション・サーバー・インスタンスにデプロイしました。ポリシー・セットを関連付け、関連するバインディングを管理しました。

サポートされる WS-Policy アサーション仕様および WS-Policy ドメインのリストについては、 WS-Policy に関する学習についてのトピックを参照してください。

このタスクについて

Java™ API for XML-Based Web Services (JAX-WS) サービス・エンドポイントのポリシー構成は、以下の方法で共有可能にすることができます。
  • サービス・プロバイダーのポリシー構成を WSDL に組み込みます。 これにより WSDL が、HTTP GET 要求を使用して、公開や取得に使用できるようになります。
  • サービス・プロバイダーのポリシー構成が WSDL に組み込まれ、WS-MetadataExchange GetMetadata 要求でその構成が使用できるように、Web Services Metadata Exchange (WS-MetadataExchange) プロトコルを使用可能に設定することができます。 適切なシステム・ポリシー・セットを使用して WS-MetadataExchange GetMetadata 要求にメッセージ・レベルのセキュリティーを適用できることが、WS-MetadataExchange プロトコルを使用する利点です。

サービス・プロバイダー・アプリケーションで複数パーツ WSDL が使用されている場合、すべての WSDL は、Web サービス・アプリケーションに対してローカルでなければなりません。複数パーツの WSDL について詳しくは、WSDL に関するトピックを参照してください。

ポリシー構成はデフォルトでは WSDL で使用できないため、 ポリシー構成を共有するようにサービス・プロバイダーを構成する必要があります。 Web サービス記述言語 (WSDL) でポリシー構成を組み込むように、サービス・プロバイダーを構成することで、HTTP Get リクエストを使用してこのプロバイダーにアクセスしたり、プロバイダーを公開したりすることができます。ポリシー構成は、Web Services Metadata Exchange (WS-MetadataExchange) リクエストでも使用可能にすることができます。このトピックでは、サービス・プロバイダーを構成し、そのポリシー構成を管理コンソールを使用して共有する方法について説明します。wsadmin コマンドまたは Rational® Application Developer ツールを使用して、 ポリシー構成を共有するようにサービス・プロバイダーを構成することもできます。

アプリケーション・レベルまたはサービス・レベルでポリシー構成を共有するようにサービス・プロバイダーを構成できます。 任意の下位レベルに関連付けられたポリシー・セットで表されているポリシー構成も共有されます。 下位レベルに関連付けられたポリシー・セットによって、高位レベルに関連付けられたポリシー・セット構成がオーバーライドされます。

手順

  1. 管理コンソールのナビゲーション・ペインで、「アプリケーション」 > 「アプリケーション・タイプ」 > 「WebSphere エンタープライズ・アプリケーション」 > service_provider_application_instance > [Web サービス・プロパティー]「サービス・プロバイダーのポリシー・セットおよびバインディング (Service provider policy sets and bindings)」とクリックします。
  2. 共有するプロバイダー・ポリシーが関連付けられているアプリケーションまたはサービスの行で、 「ポリシー共有」列のリンクをクリックします。 リンクは、「使用可能」または「使用不可」のいずれかです。 「ポリシー共有 (Policy Sharing)」ペインが表示されます。
  3. WSDL にサービス・プロバイダーのポリシー構成を組み込んで、HTTP GET 要求を使用して公開または取得できるようにするには、「エクスポートされる WSDL (Exported WSDL)」を選択します。
  4. WS-MetadataExchange を有効にし、サービス・プロバイダーのポリシー構成を WS-MetadataExchange GetMetada 要求に対して使用可能にするには、「WS-MetadataExchange 要求 (WS-MetadataExchange request)」を選択します。
  5. オプション: WS-MetadataExchange 要求 (WS-MetadataExchange request)」を選択してメッセージ・レベルのセキュリティーを使用する場合は、「システム・ポリシー・セットを WS-MetadataExchange に関連付け (Attach a system policy set to the WS-MetadataExchange)」を選択して、ドロップダウン・リストから適切なポリシー・セットとバインディングを選択します。 WS-MetadataExchange 要求のセキュリティーの構成を参照してください。
  6. 「OK」をクリックして、変更をマスター構成に保存します。

タスクの結果

サービス・プロバイダーのポリシー構成がそのクライアントに対して使用可能になります。サービス・プロバイダーの WSDL には、現在のポリシー構成が WS-PolicyAttachments 形式で含まれているため、 Web サービス・ポリシー (WS-Policy) 仕様をサポートする他のクライアント、サービス・レジストリー、またはサービスで使用できます。サービス・プロバイダーのポリシー・セットおよびバインディング (Service provider policy sets and bindings)」ペインにある「ポリシー共有 (Policy Sharing)」列のリンクが、「使用可能」に変わります。
ポリシー構成が共有できない場合、問題を説明するエラーがサービス・プロバイダーのエラー・ログに書き込まれ、以下のポリシーがサービス・プロバイダーの WSDL に関連付けられます。
<wsp:Policy>
<wsp:ExactlyOne>
</wsp:ExactlyOne>
</wsp:Policy>
このポリシーによって、サービスに受け入れ可能なポリシー構成がないことがクライアントに通知されます。 WSDL のその他の部分には影響はありません。

構成を標準の WS-PolicyAttachments 形式で表せないため、サービス・プロバイダーがそのポリシー構成を共有できない場合があります。 原因の 1 つとして、互換性のない複数のポリシーが特定の関連付けポイントに定義されていることが考えられます。 また、標準ポリシーを生成するためのバインディング情報が不十分であることが原因である可能性もあります。ポリシー構成には、WS-Trust サービスにアクセスするためのポリシーなどのブートストラップ・ポリシーが組み込まれている場合があるため、そのブートストラップ・ポリシーも WS-PolicyAttachment 形式で表されている必要があります。


トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_wsp_server_share
ファイル名:twbs_wsp_server_share.html