Web サービスのメッセージ・レベル・セキュリティーの標準およびプログラミング・モデルの概要

Web Services Security 標準およびプロファイルには、Web サービス環境で交換される SOAP メッセージの保護方法が記載されています。

Web サービスを保護するには、アプリケーション・トポロジーおよびビジネス・トポロジーの全範囲にわたる認証、許可、プライバシー、信頼、保全性、機密性、保護通信チャネル、代行、および監査を含めた、一連の広範なセキュリティー要件を検討する必要があります。今日のビジネス環境におけるセキュリティー・モデルの主な要件の 1 つとして、異種の環境において、 以前は非互換であったセキュリティー・テクノロジー間で相互運用を行う機能が必要とされています。 完全な Web Services Security プロトコル・スタックおよびテクノロジー・ロードマップについては、 Security in a Web Services World: A Proposed Architecture and Roadmap を参照してください。

Web Services Security 標準

Organization for the Advancement of Structured Information Standards (OASIS) の Web Services Security (WS-Security) 仕様は、メッセージの保全性と機密性を保護するための中核機構を定義し、セキュリティー関連の要求とメッセージを関連付けるためのメカニズムを提供します。Web Services Security は、メッセージ・レベルの標準です。この標準は、XML デジタル署名による SOAP メッセージの保護、XML 暗号化による機密性、およびセキュリティー・トークンを使用したクレデンシャルの伝搬を基にしています。WebSphere® Application Server は、暗号化ヘッダー、指紋および署名の構成、ユーザー名トークン・プロファイル、および X.509 トークン・プロファイルなどのフィーチャーを含むバージョン 1.1 の Web Services Security 仕様をサポートします。さらに、Kerberos バージョン 1.1 トークン・プロファイル、WS-SecureConversation バージョン 1.3、WS-Trust バージョン 1.3 および WS-SecurityPolicy バージョン 1.2 に限定されたセキュリティー・シナリオがサポートされます。

Web Services Security: SOAP Message Security 1.1 仕様では、セキュア Web サービスを構築するために使用できる SOAP 1.1 拡張機能の標準セットについて概説しています。 この標準セットにより、一般にデジタル署名と暗号化技術によって実現される 保全性と機密性が提供されます。 さらに、Web Services Security では、セキュリティー・トークンとメッセージを関連付けるための汎用メカニズムが提供されます。セキュリティー・トークンの一般的な例は、 ユーザー名トークンであり、この場合、ユーザー名とパスワードはテキストとして組み込まれています。 Web Services Security は、X.509 証明書などの方式を使用してバイナリーのセキュリティー・トークンをエンコードする方法を定義します。ただし、必要なセキュリティー・トークンは、 SOAP Message Security 1.1 仕様で定義されません。 その代わりに、トークンは、ユーザー名トークン・プロファイル、X.509 トークン・プロファイルなどの別個のプロファイルで定義されます。

Web Services Security を使用して、クライアントからサービスへの通常の SOAP メッセージ要求およびサービスからクライアントへの通常の SOAP メッセージ応答に対する、メッセージ・レベルでの保全性と機密性の保護を実現できる一方で、SOAP 障害メッセージの保護には Web Services Security が使用できないことに注意してください。

WS-Security Draft 13 と WS-Security 標準バージョン 1.0 および 1.1 との互換性

WS-Security 標準は数年にわたり、ドラフト版から OASIS 標準へと改訂されてきました。 WebSphere Application Server バージョン 5.02 で WS-Security ドラフト 13 のサポートが導入され、WS-Security 1.0 のサポートの導入は WebSphere Application Server バージョン 6.0 から開始されました。WS-Security バージョン 1.1 は、JAX-WS ランタイムのみを使用する、WebSphere Application Server バージョン 6.1 Feature Pack for Web Services でサポートされます。 このサポートの推移について詳しくは、トピックの Web Services Security 仕様 - 年表 (Web services security specification - a chronology) を参照してください。

WS-Security ドラフト 13 のクライアントは、WS-Security バージョン 1.0 または Version 1.1 を使用するプロバイダーとの互換性がないことに注意してください。 ドラフト 13 の Web サービス・プロバイダーと通信するには、ドラフト 13 のクライアントを使用する必要があります。このドラフト 13 クライアントは、WS-Security バージョン 1.0 プロバイダーまたはバージョン 1.1 プロバイダーとの通信には使用できません。 この問題は、WS-Security ヘッダーと名前空間の SOAP メッセージ・フォーマットが、WS-Security ドラフト 13 対応のアプリケーションと WS-Security バージョン 1.0 またはバージョン 1.1 対応のアプリケーションの間で異なるために発生します。

また、使用する WS-Security 標準のバージョンに応じて、以下のように、Java™ Platform, Enterprise Edition (Java EE) アプリケーションの必要なバージョンが異なります。
  • Java EE バージョン 1.3 は、WS-Security ドラフト 13 でのみ使用されます。
  • Java EE バージョン 1.4 以降は、WS-Security バージョン 1.0 (JAX-RPC および JAX-WS) で使用され、WS-Security バージョン 1.1 (JAX-WS) でも使用されます。

以下のダイアグラムは、これらの互換性に関する考慮事項を示しています。

さまざまな Web サービス・ランタイムと J2EE との相互作用

WebSphere Application Server で Web サービスを保護するには、いくつかの異なる構成を指定する必要があります。これらの異なる構成を指定する特定の順序はありませんが、 一部の構成は他の構成を参照します。 Web Services Security 構成に関する考慮事項を参照してください。

異なる Web Services Security 構成間の関係のため、以下のセクションに記載されている順序で、構成の各レベルに応じて構成を指定することをお勧めします。環境やセキュリティーの必要性によって状況は異なるので、アプリケーション・レベル、サーバー・レベル、セル・レベルで Web Services Security の構成を決めることができます。

Web Services Security のプログラミング・モデル

実装が容易な Java™ API for XML-Based Web Services (JAX-WS) プログラミング・モデルを活用して、新規 Web サービス・アプリケーションおよびクライアントを開発できます。JAX-WS は、次世代の Web サービス・プログラミング・モデルです。JAX-WS を使用すると、動的プロキシーおよび Java アノテーションを使用することで、Java アプリケーションのプラットフォームからの独立性がより高まることにより、Web サービスおよびクライアントの開発が容易になります。JAX-WS は、Web サービス・アプリケーションおよびクライアントを開発するための標準的なアノテーション・ベースのモデルをサポートすることにより、アプリケーション開発を簡略化します。2 つの方法のいずれかを使用して、JAX-WS アプリケーションを Web Services Security で保護することができます。このアプリケーションは、ポリシー・セットを使用して保護することも、Web Services Security API (WSS API) を使用して保護することもできます。Java API for XML-Based Web Services (JAX-WS) プログラミング・モデルを使用して Web サービスを保護する場合は、トピックのメッセージ・レベルのセキュリティーを使用した JAX-WS Web サービスの保護から参照してください。

Java™ API for XML-based RPC (JAX-RPC) 仕様を使用すると、SOAP ベースの相互運用可能で移植可能な Web サービスおよび Web サービス・クライアントを開発できます。JAX-RPC 1.1 は、Web サービスを Java プラットフォームで開発およびデプロイするためのコア API を提供しており、Web Services for Java Platform , Enterprise Edition (Java EE) プラットフォームの一部となっています。IBM® WebSphere® Application Server は、JAX-WS プログラミング・モデルと JAX-RPC プログラミング・モデルの両方をサポートします。JAX-WS は、JAX-RPC プログラミング・モデルが提供する基盤を拡張する、次世代の Web サービス・プログラミング・モデルです。 Java API for XML-based RPC (JAX-RPC) プログラミング・モデルを使用して Web サービスを保護するには、まずトピックメッセージ・レベルのセキュリティーを使用した JAX-RPC Web サービスの保護を参照してください。


トピックのタイプを示すアイコン 概念トピック



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