サポートされている Web サービス・セキュリティー仕様の機能拡張
2002 年 9 月から、Organization for the Advancement of Structured Information
Standards (OASIS) が SOAP メッセージ規格の Web Services Security (WSS) を開発してきました。2004 年 4 月、OASIS は、Web サービス保護における主要なマイルストーンとなる Web Services Security バージョン 1.0 仕様をリリースしました。
この仕様は他の Web サービス・セキュリティー仕様の基礎となり、作業中の
ドラフトである Basic Security Profile (WS-I BSP) バージョン 1.0 作業の
基本でもあります。詳しくは、Basic Security Profile を
参照してください。
Web Services Security バージョン 1.0 は Web サービス・セキュリティー・インターオペラビリティーに向けての戦略的な動きであり、Web サービス・セキュリティー・ロードマップでの最初のステップです。
Web サービス・セキュリティー・ロードマップについて詳しくは、「Security in a Web Services World: A Proposed Architecture
and Roadmap」を参照してください。
WebSphere Application Server バージョン 6 は、以下の仕様とプロファイルをサポートしています。
以前の仕様のどの部分が WebSphere Application Server バージョン 6 でサポートされているかについて詳しくは、OASIS 仕様からサポートされた機能を参照してください。
WebSphere Application Server バージョン 6.0.x 以降での高水準機能の概要
Web Services Security for SOAP メッセージ・バージョン 1.0 仕様は、フレキシブルに、Web サービスの要件に対応できるよう設計されています。
例えば、この仕様には Web Service Security バージョン 1.0 仕様の必須セキュリティー・トークン定義がありません。
その代わり、この仕様は汎用メカニズムを定義し、セキュリティー・トークンと Simple
Object Access Protocol (SOAP) メッセージを関連付けます。セキュリティー・トークンの仕様は、以下のようなさまざまなセキュリティー・トークン・プロファイルで定義されています。
OASIS でのセキュリティー・トークン・プロファイル開発について詳しくは、「Organization for the Advancement of Structured Information
Standards」を参照してください。
重要: Web Services Security バージョン 1.0 仕様のワイヤー・フォーマットは変更され、Web サービス・セキュリティー仕様の以前のドラフトと互換性がありません。
Web サービス・セキュリティー仕様の以前のドラフトを使用して、ワイヤー・フォーマットの実装を行い、Web サービス・セキュリティー・バージョン 1.0 仕様と相互運用することはできません。
プラグ可能なセキュリティー・トークンのサポートは、WebSphere Application Server バージョン 5.0.2 以降で使用可能です。ただし、WebSphere
Application Server バージョン 6 では、プラグ可能なアーキテクチャーが、Web サービス・
セキュリティー・バージョン 1.0 仕様、他のプロファイル、およびその他の
Web サービス・セキュリティー仕様をサポートするよう拡張されています。
WebSphere Application
Server バージョン 6 以降は以下の主な機能拡張が含まれます。
- SOAP メッセージで複数のセキュリティー・トークンを送信するクライアント (送信側または生成プログラム) に対するサポート。
- デジタル・シグニチャー (検証) および暗号化 (暗号化解除) のためにセキュリティー・トークンから鍵を派生させる機能。
- SOAP メッセージでの要素の署名または暗号化のサポート。ただし、一部制限があります。
例えば、メッセージのあるパーツを暗号化すると、SOAP メッセージ・フォーマットが壊れる場合があります。
SOAP 本体要素を暗号化すると、SOAP メッセージ・フォーマットが壊れます。
- SOAP エンベロープ、SOAP ヘッダー、および Web サービス・セキュリティー・ヘッダーの署名に関するサポート。
- デジタル・シグニチャーと暗号化の順序を構成する機能。
- 直接参照、鍵 ID、鍵の名前、および組み込み参照などのセキュリティー・トークンを参照するさまざまなメカニズムのサポート。
- X.509 セキュリティー・トークンに対する、PKCS#7 フォーマット証明書失効リスト (CRL) エンコードのサポート。
- CRL 検査のサポート。
- nonce およびタイム・スタンプを Web サービス・セキュリティー・ヘッダー内の要素、署名済み要素、または暗号化済み要素に挿入する機能。
- WebSphere Application Server の現在のセキュリティー・コンテキストで Run As (呼び出し) ID を使用した ID 表明のサポート。
- アプリケーション用デフォルトの Web サービス・セキュリティー・バインディングのセットである、デフォルトのバインディングのサポート。
- プラグ可能なデジタル・シグニチャー (検証) と暗号化 (暗号化解除) アルゴリズムを使用する機能。
- ハードウェア暗号化デバイスの加速のサポート。
- セキュアな鍵のサポート。
- Basic Security Profile (WS-I BSP) のサポート。
これらの拡張機能の一部について詳しくは、Web サービス・セキュリティーの機能拡張を参照してください。
構成
WebSphere
Application Server バージョン 6 は、Web Services Security バージョン
1.0 仕様、Username Token バージョン 1.0 プロファイル、X.509 Token バージョン
1.0 プロファイルを実装するためにデプロイメント・モデルを使用します。
デプロイメント・モデルは、Java™ 2 Platform, Enterprise Edition (J2EE) の Web サービス・デプロイメント・モデルの拡張です。
Web サービス・セキュリティー制約は、Web サービス・ポートに基づいて、IBM® 拡張デプロイメント記述子とバインディング・ファイルで定義されています。
デプロイメント記述子とバインディング・ファイルのフォーマットは、IBM 専有の資料で、入手することはできません。
ただし、WebSphere Application Server は、デプロイメント記述子およびバインディング・ファイルを編集するために使用することができる以下のツールを提供しています。
- Application Server Toolkit
- WebSphere Application Server バージョン 6 のアセンブリー・ツール設計機能である、Application Server Toolkit (AST) を使用して、Web サービス・セキュリティーのデプロイメント記述子とバインディング・ファイルを指定することができます。
- WebSphere Application
Server 管理コンソール
- 管理コンソールを使用して、デプロイメント記述子で定義される Web サービス・セキュリティー制約でデプロイされるアプリケーションの Web サービス・セキュリティー・バインディングを構成することができます。
重要: WebSphere Application Server バージョン 6.0.x 以降の Web サービス・セキュリティーに対するデプロイメント記述子とバインディング・ファイルのフォーマットは、WebSphere Application Server バージョン 5.0.2、5.1 および 5.1.1 とは異なります。
WebSphere Application Server バージョン
5.0.2、5.1、および 5.1.1 の Web サービス・セキュリティー・サポートは、Web サービス・セキュリティー・ドラフト 13 仕様
およびユーザー名トークン・ドラフト 2 プロファイルに基づいています。
このため、このサポートは推奨されません。
ただし、Web サービス・セキュリティー・バージョン 5.0.2、5.1、および
5.1.1 デプロイメント記述子とバインディング・ファイルを使用して構成された
アプリケーションは、WebSphere
Application Server 6 以降と作動することが可能です。
これらのアプリケーションは、ドラフト 13 仕様フォーマットを使用して
SOAP メッセージ・セキュリティーを発行するデプロイメント記述子と
バインディング・ファイルを使用します。
WebSphere Application
Server バージョン 6.0.x 以降の Web サービス・セキュリティーのデプロイメント記述子とバインディング・ファイルは、J2EE バージョン 1.4 アプリケーションにのみ使用可能です。そのため、Web サービス・セキュリティー・バージョン 1.0 仕様は、J2EE バージョン 1.4 アプリケーションでのみサポートされます。
Web Services Security バージョン 1.0 仕様に関連する実装を利用するには、以下のことを行う必要があります。
- 既存のアプリケーションを J2EE バージョン 1.4 にマイグレーションします
- 新規デプロイメント記述子およびバインディング・フォーマットの Web サービス・セキュリティー制約を再構成します
重要: Rational® Web
Developer および Application Server Toolkit を使用して、Web サービス・セキュリティーのデプロイメント記述子とバインディング・ファイルをバージョン 5.0.2、5.1、および 5.1.1 フォーマットから新規バージョン 6.0.x 以降のフォーマットにマイグレーションするための自動プロセスは存在しません。手動で構成をマイグレーションする必要があります。
重要: WebSphere
Application Server バージョン 6.1 での Web サービス・セキュリティーの
サポートは、「Web Services Security: X.509 Token Profile 1.0 plus the first errata (Errata 1.0)」という
タイトルの OASIS 仕様の一部を基にしています。