Web サービス・セキュリティー仕様の開発には、Organization for the Advancement of Structured Information Standards (OASIS) Web サービス・セキュリティー仕様についての情報が含まれています。OASIS Web サービス・セキュリティー仕様は、WebSphere Application Server バージョン 6 以降において Web サービスを保護する基礎としての役割を果たします。
この仕様には、Web サービスの許可ポリシーが定義されています。しかし、WS-Authorization 仕様はまだ公表されていません。既存の Web サービス・セキュリティーのインプリメンテーションは、Java 2 Platform, Enterprise Edition (J2EE) 仕様または Java Specification Requirements (JSR) 109 仕様の Web サービスに基づいています。 Web サービス・セキュリティーのインプリメンテーションは、J2EE 役割ベースの許可検査を利用します。 役割ベースの許可に関する概念的な情報については、役割ベースの許可 を参照してください。 メソッド・レベルの許可検査が必要な Web サービスを開発する場合は、ステートレス・セッション Bean を使用して Web サービスをインプリメントする必要があります。 詳しくは、エンタープライズ Bean アプリケーションの保護 を参照してください。
サーブレットとしてインプリメントされる Web サービスを開発する場合は、簡単な許可または URL ベースの許可を Web コンテナーで使用することができます。 ただし、そのような状況においては、許可検査のために Web サービス・セキュリティーの ID を使用することはできません。 代わりに、トランスポートの ID を使用することができます。 HTTP 経由で SOAP を使用する場合、ID は HTTP トランスポートにあります。
次の図は、これらの仕様間の関係を示しています。
前の図のブルー・ボックスの仕様は、業界のさまざまなベンダーによって提案されたものであり、 提案された仕様を検証および洗練するために、さまざまなインターオペラビリティー・イベントがベンダーによって編成されました。
2002 年 6 月、OASIS は、IBM、Microsoft、 および Verisign から提案された Web サービス・セキュリティー仕様を受理しました。 提出後、直ちに 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 サービス・セキュリティー仕様とその補足の両方の内容が含まれていました。
議論が進むに連れて、技術委員会の担当範囲がさらに広がりました。 Web Services Security Core Specification により、 任意のタイプのセキュリティー・トークンを使用できるようになるため、 提案はプロファイルとして公表されました。 このプロファイルには、 Web サービス・セキュリティー・メッセージに組み込まれる Security Assertion Markup Language (SAML) トークンおよび Kerberos トークンを含め、 トークンを組み込む方法についての記述がありました。 その後、元の Web Services Security 仕様に定義されていたユーザー名トークンと X.509 バイナリー・セキュリティー・トークンの使用法の定義が、 プロファイルに分割されました。
次の図に、さまざまな Web サービス・セキュリティー関連の仕様を示します。
WebSphere Application Server Version 6 以降はまた、 プラグイン機能を拡張および提供します。これにより、セキュリティー・プロバイダーは、ランタイム機能を拡張し、 Web サービス・セキュリティー・スタックにおいて一部の高水準仕様をインプリメントすることができるようになります。 プラグイン・ポイントは、Service Provider Programming Interfaces (SPI) として公開されます。 これらの SPI の詳細については、 Web サービス・セキュリティー・サービス・プロバイダーのプログラミング・インターフェースのデフォルトのインプリメンテーション を参照してください。
W3C Recommendation, February 2002 (同様に、IETF RFC 3275, March 2002)
W3C Recommendation, March 2001
W3C Recommendation, July 2002
W3C Recommendation, November 2002
W3C Recommendation, December 2002
W3C Recommendation, December 2002
これらの仕様は、 Web サービス・セキュリティーのコンテキストにおいて WebSphere Application Server バージョン 6 以降でサポートされています。 例えば、デプロイメント記述子で保全性オプションを指定することによって、 SOAP メッセージに署名することができます。 ただし、SOAP メッセージにおける XML エレメント上でアプリケーションが XML Signature 用に使用できるアプリケーション・プログラミング・インターフェース (API) はありません。
OASIS Web Services Security バージョン 1.0 仕様には、 メッセージの保全性と機密性を得るための機能強化が定義されています。 この仕様はまた、セキュリティー・トークンを SOAP メッセージと関連付ける汎用フレームワークも提供します。 この仕様は、複数のセキュリティー・トークン・フォーマットをサポートするように、 拡張が可能なように設計されています。 特定のセキュリティー・トークンの使用法は、 セキュリティー・トークン・プロファイルに示されています。
OASIS は、さまざまなプロファイルについて作業を行っています。 詳しくは、 「Organization for the Advancement of Structured Information Standards Committees」を参照してください。
以下のリストには、公表済みのドラフト・プロファイル、および OASIS の Web Services Security Technical Committee で進行中の作業が含 まれています。
WebSphere Application Server バージョン 6 以降では次 のプロファイルはサポートされていません。
Web サービス・セキュリティー バージョン 1.0 の Web サービス・セキュリティーにおける SOAP メッセージのワイヤー・フォーマットは変更されて、 OASIS Web サービス・セキュリティー仕様の前のドラフトとは互換性がありません。 OASIS Web サービス・セキュリティー バージョン 1.0 と前の Web サービス・セキュリティー・ドラフトとのインターオペラビリティーは、サポートされていません。 ただし、Web サービス・セキュリティーのドラフト 13 に準拠したアプリケーションを WebSphere Application Server バージョン 6 以降で実行することは可能です。 このアプリケーションは、WebSphere Application Server バージョン 5.0.2、5.1、または 5.1.1 上で、 Web サービス・セキュリティーのドラフト 13 に準拠したアプリケーションと相互運用することができます。
WebSphere Application Server バージョン 6 以降では、 OASIS Web サービス・セキュリティーのドラフト 13 と OASIS Web サービス・セキュリティー 1.0 仕様を両方ともサポートしています。 しかし、WebSphere Application Server バージョン 6 以降では、 OASIS Web サービス・セキュリティーのドラフト 13 のサポートは推奨されません。 ただし、WebSphere Application Server 5.0.2、5.1.0、 および 5.1.1 上で OASIS Web サービス・セキュリティーのドラフト 13 を使用して開発されたアプリケーションは、 WebSphere Application Server バージョン 6 以降で実行することができます。OASIS Web サービス・セキュリティー バージョン 1.0 のサポートは、Java 2 Platform, Enterprise Edition (J2EE) バージョン 1.4 アプリケーションでのみ使 用可能です。 デプロイメント記述子およびバインディングの構成フォーマットは、 WebSphere Application Server の旧バージョンとは異なっています。 既存のアプリケーションを J2EE 1.4 にマイグレーションし、 Web サービス・セキュリティー構成を WebSphere Application Server バージョン 6 フォーマットにマイグレーションする必要があります。
Web Services Interoperability Organization (WS-I) は、ベンダー、プラットフォーム、プログラム言語、 およびアプリケーションにまたがる Web サービスのインターオペラビリティーを促進するためのオープンな業界活動の 1 つです。 この組織は、IBM、Microsoft、Oracle、Sun、Novell、VeriSign、 および Daimler Chrysler を含む多くの産業にまたがる企業のコンソーシアムです。 2003 年の春、WS-I は、基本セキュリティー・プロファイル (BSP) の作業を開始しました。 BSP は、特定企業などの権利に縛られない Web サービス仕様のセットで構成されています。 この Web サービス仕様のセットは、それらの仕様を明確にし、拡張して、 異なるベンダー・インプリメンテーション間における、Web サービス・セキュリティーのインターオペラビリティーを促進します。 2004 年 6 月の時点で、BSP は公開ドラフトです。 詳しくは、 「Web Services Interoperability Organization」を参照してください。
具体的に、BSP について詳しくは、Basic Security Profile Version 1.0 を参照してください。 WebSphere Application Server は、BSP との整合性をサポートしています。BSP に準拠したアプリケーションを構成するための詳細については、基本セキュリティー・プロファイル準拠のヒント を参照してください。