プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle WebLogic Server WebLogic Webサービスの保護
12c (12.2.1.3.0)
E90365-02
目次へ移動
目次

前
前へ
次
次へ

1 Webサービス・セキュリティの概要

この章では、WebLogic Webサービスのセキュリティの構成方法について説明します。

この章の内容は次のとおりです:

このマニュアルおよびこの他のマニュアルに、なじみのない用語が出てきた場合は、用語集で定義を確認してください。

どのタイプのセキュリティを構成すべきか

メッセージ・レベルのセキュリティには、SSLのすべてのセキュリティの利点が含まれますが、追加の柔軟性と機能が伴います。メッセージ・レベルのセキュリティはエンド・ツーエンドです。つまり、トランザクションに複数の仲介機能が含まれる場合でもSOAPメッセージのセキュリティは保護されます。接続だけでなく、SOAPメッセージ自体がデジタル署名および暗号化されます。また、メッセージの個々の部分や要素のみを署名または暗号化したり、必須にするよう指定できます。これに対し、トランスポート・レベルのセキュリティでは接続そのものしか保護されません。つまり、クライアントとWebLogic Serverの間にルーターやメッセージ・キューなどの仲介機能がある場合、その仲介機能はSOAPメッセージをプレーン・テキストで取得します。仲介機能から次の送信先にメッセージが送信されたとき、その受信側では元々そのメッセージがどこから来たのかわかりません。また、SSLで使用される暗号化は「オール・オア・ナッシング」です。つまり、SOAPメッセージの全体が暗号化されるか、あるいはまったく暗号化されないかのいずれかになります。SOAPメッセージの選択部分のみを暗号化するように指定する方法はありません。メッセージ・レベルのセキュリティには認証用のIDトークンを含めることができます。

トランスポート・レベルのセキュリティでは、クライアント・アプリケーションとWebLogic Serverの間の接続がSecure Sockets Layer (SSL)で保護されます。SSLでは、ネットワーク接続している2つのアプリケーションが互いのアイデンティティを認証できるようにするとともに、アプリケーション間でやりとりされるデータを暗号化することでセキュアな接続が実現します。認証を使用すると、サーバー(および必要に応じてクライアント)はネットワーク接続の相手側アプリケーションのIDを検証できます。クライアント証明書(双方向SSL)を使用してユーザーを認証できます。

ネットワーク経由で送信されるデータは暗号化されるので、予定されている宛先以外には解釈できません。

トランスポート・レベルのセキュリティには、SSLだけでなくHTTP基本認証も含まれます。

アクセス制御のセキュリティは、「誰が何を実行できるか」という質問の回答となります。まず、Webサービスへのアクセスを許可するセキュリティ・ロールを指定します。セキュリティ・ロールとは、特定の条件に基づいてユーザーまたはグループに付与される権限です。次に、クライアント・アプリケーションがWebサービス操作を呼び出す際に、そのクライアント自体がWebLogic Serverに対して認証され、権限がある場合はその呼出しを続行できます。アクセス制御セキュリティは、WebLogic Serverのリソースのみを保護します。つまり、アクセス制御のセキュリティのみを構成した場合は、クライアント・アプリケーションとWebLogic Serverの接続が保護されず、SOAPメッセージはプレーン・テキストになります。

スレッドの安全性

JAX-RPCクライアントおよびJAX-WSクライアントはスレッド・セーフではありません。

生成されるJAX-RPCクライアント・スタブはデフォルトでスレッド・セーフです。ただし、SSLを有効にすると、クライアント・スタブはスレッド・セーフではなくなります。

JAX-WSのスレッドの安全性に関する詳細および回避策は、JAX-WSクライアント・プロキシのスレッド・セーフを参照してください。