Web サービス・プロバイダーにおけるポリシー構成の共有
WebSphere® Application Server サービス・プロバイダーは、 現在のポリシー構成を、Web サービス記述言語 (WSDL) を介して共有することができます。 ポリシー構成は、標準の WSDL WS-PolicyAttachment フォーマットになっているため、Web Services Policy (WS-Policy) 仕様をサポートする他のクライアント、サービス・レジストリー、またはサービスと共有することができます。
システム管理者は、管理コンソールまたは管理コマンドを使用して、ファイル拡張子が .zip の公開された圧縮ファイルを通じて WSDL 文書にアクセスすることもできます。 しかし、圧縮ファイルで公開された静的 WSDL 文書は、アプリケーション・コードに存在する可能性のある Web サービス・フィーチャー、アノテーション、またはデプロイメント記述子エレメント (WS-Addressing アノテーションなど) を考慮に入れることができないため、この方法で入手した WSDL 文書は、HTTP GET 要求または WS-MetadataExchange プロトコルにより入手した WSDL 文書とは異なる可能性があります。
デフォルトでは、ポリシー共有はオフになっています。管理コンソールや wsadmin コマンドを使用して、サービス・プロバイダーのポリシー構成を WSDL に組み込んだり、その共有方法を指定したりできます。
ポリシー共有がオンになっている場合、以前 WSDL に組み込まれた WS-Policy の関連付けはすべて削除されます。 ポリシー構成情報は、WSDL で公開に使用できるようになりましたが、管理コンソールから直接 WSDL 文書を表示する場合や、管理エージェントを使用してリモートで WSDL を公開する場合には使用できません。
Security Assertion Markup Language (SAML) を使用するように 構成されたサービス・プロバイダーは、WebSphere Application Server クライアントまたはサービス・レジストリー で使用できるようポリシーを共有できます。SAML トークンが専有形式で公開される点に注意してください。
アプリケーション開発者は、Web サービスが生成される際に Rational® Application Developer ツールを使用して、サービス・プロバイダーがポリシー構成を共有すること、およびその共有方法を指定できます。 詳しくは、Rational Application Developer の資料を参照してください。
トランスポート・ポリシー情報は、HTTP、SSL および JMS などのトランスポート・ポリシーが WS-PolicyAttachment 形式で表せないため、ポリシー構成に組み込まれません。
ブートストラップ・ポリシー情報 (例えば、WS-Trust サービスにアクセスするポリシー) は、ブートストラップ・ポリシーが標準の公開可能な WS-PolicyAttachment 形式で表現されている場合には、ポリシー構成に組み込むことができます。
アプリケーション・レベルまたはサービス・レベルでポリシー構成を共有するようにサービス・プロバイダーを構成できます。 前のレベルに関連付けられたポリシー・セットで表されているポリシー構成も共有されます。 前のレベルで関連付けられたポリシー・セットによって、後のレベルで関連付けられたポリシー・セット構成がオーバーライドされます。
- ポリシーを、アプリケーションにポリシー・セットを関連付けることによって定義する方法。
- ポリシーを、port-component-ref エレメント内でデプロイメント記述子エレメントを使用することによって定義する方法。
- ポリシーを、アプリケーション・コードでアノテーションまたはフィーチャーを使用することによって定義する方法。
- ポリシーを、アプリケーションに同梱の WSDL 文書で WS-Policy 関連付けを使用することによって定義する方法。
アプリケーションがセル内にデプロイされている状態で、管理コンソールを使用して WSDL を公開している場合は、WSDL にセル内のデプロイメント・マネージャーのポリシー・セット構成が含まれています。どのポリシー・セットを変更しても、構成が更新されるまで、デプロイメント・マネージャーの構成に影響はありません。例えば、デプロイメント・マネージャーの再始動による、あるいはスクリプト・コマンドの実行によるデプロイメント・マネージャーのポリシー・セット構成の更新がこれに該当します。
- ポリシー共有が使用可能になっている場合、WSDL 内の WS-Policy 関連付けが、サービスのポリシー構成を記述します。
- ポリシー共有が使用可能になっていない場合は、以下のようになります。
- HTTP GET 要求によって返される WSDL は、アプリケーションに同梱の WSDL です。
注: このような WSDL は、変更せずに返されるので、サービスの構成にそぐわない、以前に存在した WS-Policy 関連付けが含まれる場合があります。
- サービスに関連付けられた特定の WSDL 文書がない場合は、サーバー・ランタイムが自動的に WSDL 文書を生成し、それをサービスと関連付けます。 この場合、WSDL には WS-Policy 関連付けは含まれません。ただし、サービス実装に @Addressing アノテーションがある場合は例外で、その場合は、生成される WSDL の WS-Policy 関連付けで、@Addressing アノテーション構成が表現されます。
- HTTP GET 要求によって返される WSDL は、アプリケーションに同梱の WSDL です。