Web Services Security 仕様 - 年表

Web Services Security 仕様の開発には、Organization for the Advancement of Structured Information Standards (OASIS) Web Services Security 仕様についての情報が含まれています。OASIS Web Services Security 仕様は、WebSphere® Application Server における Web サービスの保護の基礎としての役割を果たします。

ベスト・プラクティス ベスト・プラクティス: IBM® WebSphere Application Server は、 Java™ API for XML-Based Web Services (JAX-WS) プログラミング・モデルおよび Java API for XML-based RPC (JAX-RPC) プログラミング・モデルをサポートします。 JAX-WS は、JAX-RPC プログラミング・モデルが提供する基盤を拡張する、次世代の Web サービス・プログラミング・モデルです。戦略的 JAX-WS プログラミング・モデルを使用すると、標準ベースの注釈モデルのサポートによって、Web サービスおよび Web クライアントの開発が容易になります。JAX-RPC プログラミング・モデルとアプリケーションは引き続きサポートされますが、Web サービス・アプリケーションおよびクライアントを新規に開発する場合は、実装が容易な JAX-WS プログラミング・モデルをご利用ください。best-practices
JAX-WS プログラミング・モデルを WebSphere Application Server バージョンで使用する利点には、以下のものがあります。
  • ポリシー・セットの使用時におけるサービスの品質 (QoS) の構成が容易である。ポリシー・セットは、トランスポート・レベルの構成設定およびメッセージ・レベルの構成設定を含む、複数の構成設定を組み合わせたものです。ポリシー・セットおよび汎用バインディングは、複数のアプリケーション間で再利用でき、Web サービスの QoS がより利用しやすくなります。
  • WS-Security for JAX-WS は、管理対象環境 (例えば、Java EE コンテナー) および非管理対象環境 (例えば、Java Platform, Standard Edition (Java SE 6)) の両方においてサポートされます。さらに、JAX-WS クライアントで WS-Security を使用可能にするための API があります。

OASIS 以外のアクティビティー

Web サービスは、 インターオペラビリティーおよび統合のための実用的なテクノロジーとして、急速に受け入れられています。 しかし、Web サービスの保護は、最も重要なサービスの品質の 1 つであり、 Web サービスを採択することは、企業にとって実用的な商用ソリューションとなります。IBM と Microsoft は、 「Security in a Web Services World: A Proposed Architecture and Roadmap」というタイトルの Web サービスに関するセキュリティー白書を共同で公表しました。この白書では、提案された Web Services Security ロードマップの中で、以下の初期およびその後の仕様について説明しています。
Web Services Security
この仕様には、 SOAP メッセージにおいてデジタル署名を添付する方法、 暗号化を使用する方法、およびセキュリティー・トークンを使用する方法が定義されています。
WS-Policy
この仕様には、セキュリティー制約、 および仲介者またはエンドポイントのポリシーを記述するために使用される言語が定義されています。
WS-Trust
この仕様には、Web サービス間の信頼性を確立するためのトラスト・モデルのフレームワークが定義されています。
WS-Privacy
この仕様には、 Web サービスおよび要求側のプライバシー・ポリシーを表現する方法のモデルが定義されています。
WS-SecureConversation
この仕様には、 Web サービス間のセッション鍵を派生させるセキュア・コンテキストを交換および確立する方法が定義されています。
WS-Authorization

この仕様には、Web サービスの許可ポリシーが定義されています。しかし、WS-Authorization 仕様はまだ公表されていません。既存の Web Services Security の実装は、Java Platform, Enterprise Edition (Java EE) 仕様または Java Specification Requirements (JSR) 109 仕様の Web サービスに基づいています。Web Services Security の実装は、Java EE ロール・ベースの許可検査を利用します。概念的な情報については、『ロール・ベースの許可』を参照してください。メソッド・レベルの許可検査が必要な Web サービスを開発する場合は、ステートレス・セッション Bean を使用して Web サービスを実装する必要があります。詳しくは、エンタープライズ Bean アプリケーションの保護に関する情報を参照してください。

サーブレットとして実装される Web サービスを開発する場合は、簡単な許可または URL ベースの許可を Web コンテナーで使用することができます。ただし、この状態の場合、Web Services Security の ID を許可検査に使用することはできません。代わりに、トランスポートの ID を使用することができます。 HTTP 経由で SOAP を使用する場合、ID は HTTP トランスポートにあります。

次の図は、これらの仕様間の関係を示しています。

さまざまな仕様の関係

2002 年 4 月、 IBM、Microsoft、および VeriSign は、それぞれの Web サイトで、 前の図のグリーン・ボックスで示された「Web Services Security (WS-Security) 仕様」を提案しました。この仕様には、セキュリティー・トークン、XML デジタル署名、 および XML 暗号化の基本概念が含まれています。 この仕様には、ユーザー名トークンおよびエンコードされたバイナリー・セキュリティー・トークンのフォーマットも定義されています。 度重なる検討と仕様に基づいたインターオペラビリティー・テストが行なわれた後、 以下の問題が指摘されました。
  • この仕様では、Web Services Security プロセッサーがスキーマを正しく認識していることが必要になります。これにより、プロセッサーが XML デジタル署名と XML 暗号化の ID 属性を区別できるようになります。
  • メッセージが事前定義された時間制約に従っているかどうかを示す、 メッセージの新鮮度を判別することはできません。
  • ダイジェスト・パスワード・ストリングにより、セキュリティーは強化されません。
2002 年 8 月、IBM、Microsoft、および VeriSign は、 Web Services Security Addendum を公表し、 その時点までに確認された問題に対応する意思を示しました。この補足には、以下の解決策が示されました。
  • XML シグニチャーと XML 暗号化のグローバル ID 属性が必要であること。
  • メッセージの作成、受信、または有効期限の時刻を示すタイム・スタンプ・ヘッダー・エレメントを使用すること。
  • タイム・スタンプと nonce (ランダムに生成されたトークン) を用いてダイジェストされたパスワード・ストリングを使用すること。

前の図のブルー・ボックスの仕様は、業界のさまざまなベンダーによって提案されたものであり、 提案された仕様を検証および洗練するために、さまざまなインターオペラビリティー・イベントがベンダーによって編成されました。

OASIS の活動

2002 年 6 月、OASIS は、IBM、Microsoft、および VeriSign から提案された Web Services Security 仕様を受理しました。提出後、直ちに OASIS に Web Services Security Technical Committee (WSS TC) が設立されました。 この技術委員会には、IBM、Microsoft、VeriSign、Sun Microsystems、および BEA Systems を含め、 多くの会社が参与しました。

2002 年 9 月、 WSS TC は最初の仕様である Web Services Security Core Specification, Working Draft 01 をパブリッシュしました。 この仕様には、元の Web Services Security 仕様とその補足の両方の内容が含まれていました。

議論が進むに連れて、技術委員会の担当範囲がさらに広がりました。 Web Services Security Core Specification により、 任意のタイプのセキュリティー・トークンを使用できるようになるため、 提案はプロファイルとして公表されました。 このプロファイルには、 Web Services Security メッセージに組み込まれる Security Assertion Markup Language (SAML) トークンおよび Kerberos トークンを含め、 トークンを組み込む方法についての記述がありました。 その後、元の Web Services Security 仕様に定義されていたユーザー名トークンと X.509 バイナリー・セキュリティー・トークンの使用法の定義が、 プロファイルに分割されました。

WebSphere Application Server バージョン 5.0.2、5.1、および 5.1.1 は、以下の仕様をサポートしています。
  • Web Services Security: SOAP Message Security Draft 13 (以前の Web Services Security Core Specification)
  • Web Services Security: Username Token Profile Draft 2
2004 年 4 月、Web Services Security 仕様 (正式には、Web Services Security: SOAP Message Security Version 1.0 と呼ばれる) は、Version 1.0 OASIS 標準となりました。同様に、Username トークン・プロファイルおよび X.509 トークン・プロファイルは、Version 1.0 仕様となりました。 WebSphere Application Server 6 以降は、OASIS からの以下の Web Services Security 仕様をサポートしています。
2006 年 2 月には、コア Web Services Security 仕様が更新され、バージョン 1.1 OASIS 標準になりました。また、ユーザー名トークン、X.509 トークン・プロファイル、および Kerberos トークン・プロファイルがバージョン 1.1 仕様に更新されています。OASIS の以下の Web Services Security 仕様の一部、具体的にはシグニチャー確認、暗号化ヘッダー、および指紋参照は、WebSphere Application Server でサポートされています。

以下の仕様には、Web Services Security のメッセージ・セキュリティー仕様に関連する Kerberos トークンの使用についての記述があります。仕様「OASIS: Web Services Security Kerberos Token Profile 1.1 OASIS Standard Specification, 1 February 2006」では、認証およびメッセージ保護をサポートするための Kerberos トークンの使用方法が定義されています。

2007 年に、OASIS Web Services Secure Exchange Technical Committee (WS-SX) で、次の仕様が作成され、承認されました。これらの仕様の一部は、WebSphere Application Server バージョン 7 以降でサポートされています。

次の図に、さまざまな Web Services Security 関連の仕様を示します。

OASIS 仕様

WebSphere Application Server は、セキュリティー・プロバイダーがランタイム機能を拡張し、一部の高水準仕様を Web Services Security スタックに実装することができるようにするためのプラグイン機能も提供しています。プラグイン・ポイントは、サービス・プロバイダー・プログラミング・インターフェース (SPI) として公開されます。 これらの SPI の詳細については、 Web Services Security サービス・プロバイダーのプログラミング・インターフェースのデフォルトの実装を参照してください。

Web Services Security 1.0 仕様の発展

OASIS Web Services Security 仕様は、 以下の World Wide Web Consortium (W3C) 仕様に基づいています。 W3C 仕様のほとんどは、標準団体から推奨されています。

これらの仕様は、WebSphere Application Server において Web Services Security のコンテキストでサポートされています。 例えば、デプロイメント記述子で保全性オプションを指定することによって、 SOAP メッセージに署名することができます。 また、クライアント・サイドのアプリケーション・プログラミング・インターフェースがあり、これによりアプリケーションでは、SOAP メッセージを保護するための Web Services Security を使用可能にすることができます。

OASIS Web Services Security バージョン 1.0 仕様には、 メッセージの保全性と機密性を得るための機能強化が定義されています。この仕様はまた、セキュリティー・トークンを SOAP メッセージと関連付ける汎用フレームワークも提供します。 この仕様は、複数のセキュリティー・トークン・フォーマットをサポートするように、 拡張が可能なように設計されています。 特定のセキュリティー・トークンの使用法は、 セキュリティー・トークン・プロファイルに示されています。

WebSphere Application Server における仕様とプロファイルのサポート

OASIS は、さまざまなプロファイルについて作業を行っています。 詳しくは、 「Organization for the Advancement of Structured Information Standards Committees」を参照してください。

以下のリストには、公表済みのドラフト・プロファイル、および OASIS の Web Services Security Technical Committee で進行中の作業が含 まれています。

WebSphere Application Server は、以下のプロファイルをサポートしていません。

  • Web Services Security : SAML トークン・プロファイル 1.0
  • Web Services Security: Rights Expression Language (REL) トークン・プロファイル 1.0
  • Web Services Security: SOAP Messages with Attachments (SwA) プロファイル 1.0
注: WebSphere Application Server 5.0.2、5.1.0、および 5.1.1 における Web Services Security のドラフト 13 およびユーザー名トークン・プロファイルのドラフト 2 のサポートは非推奨になりました。マイグレーションの詳細については、Java EE バージョン 1.3 からバージョン 1.4 への Web Services Security 対応 JAX-RPC アプリケーションのマイグレーションを参照してください。

Web Services Security バージョン 1.0 の Web Services Security における SOAP メッセージのワイヤー・フォーマットは変更されて、 OASIS Web Services Security 仕様の前のドラフトとは互換性がありません。 OASIS Web Services Security バージョン 1.0 と前の Web Services Security ドラフトとのインターオペラビリティーは、サポートされていません。ただし、Web Services Security のドラフト 13 に準拠したアプリケーションを WebSphere Application Server バージョン 6 以降で実行することは可能です。 このアプリケーションは、WebSphere Application Server バージョン 5.0.2、5.1、または 5.1.1 上で、 Web Services Security のドラフト 13 に準拠したアプリケーションと相互運用することができます。

WebSphere Application Server は、OASIS Web Services Security のドラフト 13 と OASIS Web Services Security 1.0 仕様の両方をサポートしています。しかし、WebSphere Application Server バージョン 6 以降では、 OASIS Web Services Security のドラフト 13 のサポートは推奨されません。 ただし、WebSphere Application Server 5.0.2、5.1.0、 および 5.1.1 上で OASIS Web Services Security のドラフト 13 を使用して開発されたアプリケーションは、 WebSphere Application Server バージョン 6 以降で実行することができます。OASIS Web Services Security バージョン 1.0 のサポートは、Java Platform, Enterprise Edition (Java EE) バージョン 1.4 以降のアプリケーションでのみ使用可能です。デプロイメント記述子およびバインディングの構成フォーマットは、 WebSphere Application Server の旧バージョンとは異なっています。 既存のアプリケーションを Java EE 1.4 にマイグレーションし、 Web Services Security 構成を WebSphere Application Server バージョン 6 フォーマットにマイグレーションする必要があります。

その他の Web Services Security 仕様の開発

以下の OASIS Web Services Security 仕様の最新更新バージョンが、WebSphere Application Server で、Web Services Security のコンテキストでサポートされています。
  • WS-Trust バージョン 1.3

    Web Services Trust Language (WS-Trust) は、Web Services Security のセキュアなメッセージング・メカニズムを使用して、セキュリティー・トークンの発行、交換、および検証のための追加の基本的機能および拡張機能を定義します。 WS-Trust は、異なるトラスト・ドメイン内のクレデンシャルの発行および配布を可能にします。 この仕様は、トラスト関係の設定方法、その存在の評価方法、および仲介方法を定義します。

  • WS-SecureConversation バージョン 1.3

    Web Services Secure Conversation Language (WS-SecureConversation) は、WS-Security モデルおよび WS-Policy モデルを基に作成され、サービス間のセキュア通信を提供します。 WS-Security はメッセージ認証モデルに重点を置いていますが、セキュリティー・コンテキストは重視しておらず、このため、複数の形式のセキュリティー・アタックに攻撃される可能性があります。 この仕様はセキュリティー・コンテキストの設定と共有のメカニズム、およびセキュリティー・コンテキストの派生鍵を定義し、セキュアな会話を可能にします。 SOAP 拡張性モデルを使用することにより、豊かなメッセージング環境を提供できるように、モジュラー SOAP ベースの各種仕様はお互いに構成されるように設計されています。

  • WS-SecurityPolicy バージョン 1.2

    Web Services Security Policy (WS-Policy) は汎用目的のモデルおよび構文を提供して、Web サービスのポリシーの記述および通信を行います。 WS-Policy 表明は、特定の Web サービスの機能および制約を表します。WS-PolicyAttachments は、WS-Policy の式を Web サービスと関連付けるための複数のメソッド (WSDL など) を定義します。2005 年 7 月の WS-Security ポリシーの再発表に伴い、Web Services Security 仕様が更新されて、WS-Security、WSTrust および WS-SecureConversation を使用している Web サービスの制約および機能を反映するようになりました。WS-ReliableMessaging ポリシーも 2005 年に再発表され、WS-ReliableMessaging を実装する Web サービスの機能と制約を表すようになりました。

Web Services Interoperability Organization (WS-I) のアクティビティー

Web Services Interoperability Organization (WS-I) は、ベンダー、プラットフォーム、プログラム言語、 およびアプリケーションにまたがる Web サービスのインターオペラビリティーを促進するためのオープンな業界活動の 1 つです。この組織は、IBM、Microsoft、Oracle、Sun、Novell、VeriSign、 および Daimler Chrysler を含む多くの産業にまたがる企業のコンソーシアムです。WS-I は、Basic Security Profile (BSP) のバージョン 1.0 と 1.1 を開発しました。BSP のバージョン 1.0 と1.1 は、どちらも特定企業などの権利に縛られない Web サービス仕様のセットで構成されています。 この Web サービス仕様のセットは、それらの仕様を明確にし、拡張して、 異なるベンダー実装間における、Web Services Security のインターオペラビリティーを促進します。

WebSphere Application Server JAX-WS WS-Security は、以下の仕様をサポートしています。

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



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