wsadmin スクリプトを使用したポリシー構成を共有するためのサービス・プロバイダーの構成
WebSphere® Application Server サービス・プロバイダーは、HTTP GET 要求 あるいは Web Services Metadata Exchange (WS-MetadataExchange) GetMetadata 要求を使用して取得される公開済みの Web サービス記述言語 (WSDL) 内のポリシー構成を共有することができます。
始める前に
サポートされる WS-Policy アサーション仕様および WS-Policy ドメインのリストについては、 WS-Policy に関する学習についてのトピックを参照してください。
このタスクについて
- サービス・プロバイダーのポリシー構成を 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 ツールを使用することもできます。
アプリケーション・レベルまたはサービス・レベルでポリシー構成を共有するようにサービス・プロバイダーを構成できます。 任意の下位レベルに関連付けられたポリシー・セットで表されているポリシー構成も共有されます。 下位レベルに関連付けられたポリシー・セットによって、高位レベルに関連付けられたポリシー・セット構成がオーバーライドされます。
手順
タスクの結果
<wsp:Policy>
<wsp:ExactlyOne>
</wsp:ExactlyOne>
</wsp:Policy>
このポリシーによって、サービスに受け入れ可能なポリシー構成がないことがクライアントに通知されます。 WSDL のその他の部分には影響はありません。構成を標準の WS-PolicyAttachments 形式で表せないため、サービス・プロバイダーがそのポリシー構成を共有できない場合があります。 原因の 1 つとして、互換性のない複数のポリシーが特定の関連付けポイントに定義されていることが考えられます。 また、標準ポリシーを生成するためのバインディング情報が不十分であることが原因である可能性もあります。ポリシー構成には、WS-Trust サービスにアクセスするためのポリシーなどのブートストラップ・ポリシーが組み込まれている場合があるため、そのブートストラップ・ポリシーも WS-PolicyAttachment 形式で表されている必要があります。