Web サービスの保護

WebSphere® Application Server 用の Web サービス・セキュリティーは、Organization for the Advancement of Structured Information Standards (OASIS) Web サービス・セキュリティー (WSS) バージョン 1.0 仕様、ユーザー名トークン・バージョン 1.0 プロファイル、および X.509 トークン・バージョン 1.0 プロファイルに含まれている基準に基づいています。これらの標準およびプロファイルは、Web サービス環境で交換されるメッセージの保護方法を規定します。 この仕様は、メッセージの保全性と機密性を保護するための中核機構を定義し、セキュリティー関連の要求とメッセージを関連付けるためのメカニズムを提供します。Web サービス・セキュリティーは、メッセージ・レベルの業界標準です。この標準は、XML デジタル署名による Simple Object Access Protocol (SOAP) メッセージの保護、XML 暗号化による機密性、およびセキュリティー・トークンを使用した資格情報の伝搬を基にしています。Feature Pack for Web Services の新機能として、ポリシー・セットを使用して簡単に JAX-WS Web サービスを保護できるようになりました。

Web サービスを保護するには、アプリケーションとビジネス・トポロジーの範囲に渡る認証、許可、プライバシー、信頼、保全性、機密性、保護通信チャネル、統合、代行、および監査を含めた、一連の広範囲なセキュリティー要件を検討する必要があります。 今日のビジネス環境における セキュリティー・モデルの主な要件の 1 つとして、異種の環境 (Microsoft .NET と Java™ 2 Platform, Enterprise Edition (J2EE) など) において以前は非互換であったセキュリティー・テクノロジー (公開鍵インフラストラクチャーおよび Kerberos など) 間で相互運用を行う機能が必要とされています。

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

ポリシー・セットによる JAX-WS Web サービス・セキュリティーの使用可能化

v 6.1 Feature Pack for Web Services および v7 では、WebSphere Application Server は、Web サービス・セキュリティー・バージョン 1.1 仕様、ユーザー名トークン・バージョン 1.1 プロファイル、および X.509 トークン・バージョン 1.1 プロファイルを実装するためにポリシー・セット・モデルを使用します。ポリシー・セットを使用すると、さまざまな構成設定を組み合わせることができます。それらの設定には、WS-Addressing、WS-ReliableMessaging、WS-SecureConversation、WS-Security など、トランスポートおよびメッセージ・レベルの構成設定も含まれます。

Web サービスのポリシー・セットを使用可能にするには、トピック JAX-WS Web サービスおよびクライアントのポリシー・セットの管理を参照してください。

IBM® Redbooks®: Web Services Feature Pack for WebSphere Application Server V6.1 の資料には、WebSphere Application Server v6.1 Feature Pack for Web Services のポリシー・セットに関する章が記載されています。

Web サービス・セキュリティー・ウィザードによる JAX-RPC Web サービス・セキュリティーの使用可能化

Web サービス・セキュリティー・ ウィザードを使用すると、実動レベルの Web サービス・セキュリティーを使用可能にする ことができます。これらのウィザードは、以下のオプションを提供します。
XML デジタル署名の追加
XML デジタル署名は、転送中のメッセージに対して不正な変更が 行われないように保護して、Web サービスの保全性を提供します。伝送中に内容が不正に変更された場合は、シグニチャーが変化し、受信側に通知されます。
XML 暗号化の追加
XML 暗号化は、送信の間中、送信データをアクセス不能または理解不能な ものにして、Web サービスの機密性を提供します。情報は、Web サービスに送信されるまえに暗号化され、適切な宛先に 着信したときに暗号化解除されます。暗号化された情報にアクセスする唯一の方法は、適切な鍵を使用することです。
スタンドアロン・セキュリティー・トークンの追加
スタンドアロン・セキュリティー・トークンは、ユーザーを検証して、 クライアントが特定のコンテキストで妥当かどうかを判別することで、Web サービスに 対する認証を提供します。認証のプライマリー・フォームの 1 つでは、ユーザー・ トークンを Web サービス・サーバーに送信します。ユーザー名とパスワードが トークンから抽出され、検証されます。サーバーは、ユーザー名とパスワードの 組み合わせが有効であるかどうかを検査し、有効な場合にのみメッセージを 受け入れて処理します。
別の Web サービスのセキュリティー設定の複製
複数の Web サービスを作成して、すべてに同じセキュリティーを 設定したい場合は、Web サービスのセキュリティー設定を複製して、別の Web サービスに適用することができます。

Web サービス・セキュリティー・ウィザードを使用して、Web サービス・セキュリティーを使用可能にするには、Web サービス・セキュリティー・ウィザードを使用した JAX-RPC Web サービスの保護

ウィザードを使用して Web サービスにセキュリティー設定を適用する実例などについて詳しくは、IBM Redbooks: Rational® Application Developer V7 Programming Guide を参照してください。

Web サービス作成ウィザードでの JAX-RPC Web サービス・セキュリティーの使用可能化

WebSphere ランタイム環境を使用して「Web サービス」ウィザードで Web サービスを作成する場合は、以下の 4 つのセキュリティー・オプションを選択できます。

Web サービス・クライアントと Web サービスは、相互に通信できるように、 同じ設定にする必要があります。例えば、クライアントのセキュリティー設定が非セキュア または XML 暗号化になっている場合は、XML デジタル署名でセキュアなサービスを 呼び出すことはできません。

ウィザードから選択できるセキュリティー・オプションは、 単なる一例なので、実稼働環境では絶対に使用しないでください。 このオプションは、 WebSphere Application Server の 鍵ストアおよび証明書ファイルを指します。WebSphere Application Server が提供するデフォルトのセキュリティー構成について詳しくは、Web サービス・セキュリティーのデフォルト構成を参照してください。

実稼働環境で Web サービス・セキュリティーを使用可能にする場合は、Web サービス・ セキュリティー・ウィザードを使用した Web サービスの保護または WS-Security を 基にした手動での Web サービスの保護を参照してください。

手動での JAX-RPC Web サービス・セキュリティーの使用可能化

Web サービス・セキュリティー・ウィザードがニーズに合わない場合、ご使用の Web サービスを手動で保護することができます。 このプロセスにより、セキュリティー設定をさらに制御することができますが、 ウィザードを使用してセキュリティーを使用可能にする場合より時間がかかり、 エラーが発生しやすくなります。

手動での Web サービス・セキュリティーの使用可能化について詳しくは、WS-Security を基にした手動での JAX-RPC Web サービスの保護

Web サービスの保護に関する追加情報

このインフォメーション・センターで提供されている情報に加えて、WebSphere Application Server を使用して Web サービスを保護 する方法を示す、いくつかの役に立つチュートリアル および記事を developerWorks® で参照できます。


フィードバック