ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Service Bus開発者ガイド
11gリリース1 (11.1.1.6.2)
B61435-05
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

32 WSトランスポート

この章では、WSトランスポートの概要と、サービスでの使用および構成方法について説明します。

Web Services Reliable Messaging (WSRM)の仕様では、ソフトウェアやシステム、ネットワークに障害が発生した場合でも、分散アプリケーション間で信頼性のあるメッセージ配信を可能にするプロトコルについて記述されています。

WS-ReliableMessagingは、IBM、Oracle、Microsoft、およびTIBCO Systemsによって共同開発された仕様です。この仕様は、OASISによって開発された競合関係にある仕様のWS-Reliability (WSR)とは異なります。

WSRMの機能は、Oracle Service BusではWSトランスポートとして使用できます。Oracle Service Busは、2005年2月に提出された仕様をサポートしています。この仕様の詳細は、「Web Services Reliable Messagingプロトコル(WS-ReliableMessaging)」(http://schemas.xmlsoap.org/ws/2005/02/rm/)を参照してください。

WSトランスポートでは、WSRMポリシーを使用するWSDLに基づいてSOAP 1.1およびSOAP 1.2から派生したサービスのインバウンドおよびアウトバウンド・リクエストの両方が実装されています。ただし、WSRMポリシーはWSDLの一部である場合と、サービスにアタッチされる場合とがあります。さらに、セキュリティ・ポリシーもWSDLで宣言される場合と、WSDLベースのサービスに関連付けられる場合があります。Oracle Service Bus管理コンソールを使用してWSRMポリシーを含むWSDLベースのサービスを構成する場合、サービスに対してWSトランスポートを選択する必要があります。Oracle Service Busでは、サービスの構成が保存されるときにWSRMポリシーがチェックされて、WSRMポリシーがサービスに関連付けられたWSDLで宣言されていない場合、検証エラーがスローされます。

WSトランスポートの主要な機能を次に示します。

32.1 サポートされている機能

ここでは、WSトランスポートでサポートされる機能の詳細について説明します。

32.1.1 メッセージング・パターン

WSRMでは、一方向とリクエスト/レスポンスの両方のメッセージング・パターンがサポートされます。WSトランスポートでは、信頼性のあるレスポンスはサポートされていません。リクエストには常に信頼性がありますが、レスポンスには信頼性がありません。

ビジネス・サービスの場合、外部Webサービスへのリクエストの送信は非同期で行われます。呼出しの成功は、メッセージがRMレイヤーに無事に到達し、確実に配信されることを示します。しかし、呼出しに成功しても、メッセージがエンドポイントに送信され、Webサービスの呼出しに成功するという意味ではありません。

リクエスト/レスポンス・メッセージング・パターンの場合、リクエストに対するレスポンスを外部Webサービスから受信します。この場合、リクエストとレスポンスのパスには2つの異なるトランザクションがあり、2つの異なるスレッドで実行されます。レスポンス・パイプラインは、一方向メッセージングのメッセージ・パターンで均等に実行されます。一方向のパターンの場合、レスポンス・パイプラインの呼出しは、メッセージが確実にターゲットの宛先に到達し、Webサービスの呼出しが完了したことを意味します。

32.1.2 ポリシー

WSトランスポートを使用するプロキシ・サービスまたはビジネス・サービスは、RMアサーションを使用するWS-Policyを持つ必要があります。このことは逆に、WSトランスポート以外のトランスポートを使用するサービスではRMアサーションを使用するWS-Policyを持てないことを示しています。WSトランスポートでは、RMアサーションを使用するWS-PolicyとWSSP v1.2トランスポート・レベル・セキュリティ・アサーションがサポートされます。

ただし、WSSP v1.2メッセージ・レベル・セキュリティ・アサーションと9.X Oracle独自のセキュリティ・アサーションはサポートされません。RMアサーションは、操作レベルや操作のリクエスト/レスポンス・レベルではなく、サービス・レベルでのみバインドされる必要があります。


注意:

WS-Policyで使用するRMアサーションは1つに限られます。


32.1.2.1 WS-Policyの構成

WS-Policyは、次の2つの方法のどちらかを使用して構成できます。

  • WS-Policyの構成をサービスに関連付けられたWSDLの一部として指定します。WSDLで指定されるポリシーは、WSDLに含まれているか、あるいはWSDLで参照されています。

  • Oracle Service Bus管理コンソールを使用してWS-Policyをサービスに割り当てます。


    注意:

    サービスにセキュリティ・ポリシーを関連付けるには、この2つの方法のどちらか1つのみを使用できます。そのため、Oracle Service Bus管理コンソールを使用してポリシーを構成した場合、WSDLで定義されているポリシーはすべて無視されます。


32.1.3 サイズの大きいメッセージ・コンテンツのストリーミング

WSトランスポートでは、基礎となるインフラストラクチャ(WLS JAX-RPCスタック)で完全に具体化されたペイロードを使用しているため、サイズの大きいメッセージのストリーミングのサポートがありません。ただし、プロキシ・サービスでサイズの大きいメッセージの処理を構成した場合は、WSトランスポートによってOracle Service Busのストリーミングの最適化が使用されて、メッセージはJavaオブジェクトに完全に具体化されます。サイズの大きいメッセージの処理でコンテンツをストリーミングする場合は、プロキシ・サービスの構成中に、メモリーまたはディスクにコンテンツのバッファリングを行うようにします。詳細は、『Oracle Fusion Middleware Oracle Service Bus管理者ガイド』の本文コンテンツのストリーミングに関する項を参照してください。

32.1.4 Webサービスの相互運用性

WSトランスポートでは、WS-I基本プロファイルによってWebサービスの相互運用性をサポートします。現在、Oracle Service Busプロキシ・サービスはWS-I基本プロファイルの制限に従っていません。しかし、このトランスポートを使用するように構成されたすべてのサービスは、WS-I基本プロファイルの仕様に厳密に従っています。WSプロキシ・サービスにはサービスの構成にWS-I準拠のチェックがなく、常にWS-I基本プロファイルに従います。WS-I基本プロファイルはSOAP 1.1にのみ適用されるため、このことはSOAP1.1 WSDLバインディングに対して有効です。

32.2 サービスの認証と認可

この項では、プロキシ・サービスとビジネス・サービスが認証および認可される方法について説明します。

32.2.1 プロキシ・サービスの認証

WSプロキシ・サービスでは基本認証とクライアント証明書(双方向SSL)認証の両方をサポートします。WS-Policyで基本認証が指定された場合は、WSプロキシ・サービスに対するすべてのHTTPリクエストには、RMプロトコル・メッセージも含めて、有効なユーザー名とパスワードが含まれている必要があります。

プロキシ・サービス認証のサポートは次のように行われます。

  • プロキシ・サービスが参照するサービス・キー・プロバイダに割り当てられたSSLキー・ペアを使用したクライアント証明書のアウトバウンド認証。

  • WSプロキシ・サービス(基本認証を使用する)による他の任意のアウトバウンド・トランスポート、またはアウトバウンドWSSユーザー名トークンに対するユーザー名とパスワードの識別の伝播。

  • WSプロキシ・サービス(基本認証または双方向SSL認証)と他の任意のトランスポートとの間の資格証明のマッピング。

  • WSプロキシ・サービスからRMクライアントへのHTTPまたはHTTPSによる非同期レスポンスの送信。プロキシ・サービスとビジネス・サービスで使用されるデフォルトのプロトコルはHTTPです。

  • WSプロキシ・サービスから、RMクライアントによって指定されるAcksToまたはReplyToエンドポイント参照に接続するRMクライアントへの非同期レスポンス。RMクライアントはHTTP URLまたはHTTPS URLのどちらかを使用できます。RMクライアントがHTTPSを使用する場合、RMクライアントはSSLハンドシェイク中にクライアント証明書をリクエストできます。WSトランスポートでは、リクエスト時にサービス・キー・プロバイダのSSLのキー・ペアを使用します。

32.2.2 プロキシ・サービスの認可

管理者は、Oracle Service Bus管理コンソールでトランスポートレベルのアクセス制御ポリシーをWSプロキシ・サービスに割り当てることができます。他のすべてのトランスポートと同様に、このポリシーは、インバウンド・トランスポート・プロバイダがリクエスト・メッセージをOracle Service Busバインディング・レイヤーに渡した後、リクエスト・パイプラインを呼び出す前に実施されます。詳細は、32.3.4項「プロキシ・サービスへのトランスポート・アクセス制御の割当て」を参照してください。

32.2.3 ビジネス・サービスの認証

WSビジネス・サービスでは基本認証とクライアント証明書認証をサポートします。アウトバウンド基本認証は、サービス・アカウントによってサポートされます。ユーザー名/パスワードの識別の伝播と資格証明のマッピングがサービス・アカウントによって提供されます。ただし、静的アカウントも認証に使用されることがあります。サービス・アカウントは、静的、パススルーまたはマップになります。パススルー認証では、クライアント・リクエストからバックエンドRMサービスへユーザー名/パスワードを渡すことが可能です。マップされたサービス・アカウントでは資格証明のマッピングが可能です。静的サービス・アカウントは、固定した資格証明が必要な場合に使用されます。

WSビジネス・サービスでは、SSLクライアント証明書認証(双方向SSL)もサポートされています。アウトバウンドの双方向SSLで使用されるキー・ペア(秘密鍵と証明書)は、WSビジネス・サービスではなく、プロキシ・サービスによって参照されるサービス・キー・プロバイダで構成されます。

1つのメッセージをWSビジネス・サービスにルーティングすると、Oracle Service Busサーバーとバックエンド・サービスからの複数のHTTP/Sリクエストが対象となることがあります。このようなメッセージはすべて、WSビジネス・サービスで構成される認証方法の影響を受けます。つまり、サービスが基本認証用に構成されている場合は、Oracle Service Busから送信されるすべてのメッセージに、ユーザー名/パスワードが格納されたHTTP認可ヘッダーが含まれており、メッセージがクライアント証明書認証用に構成されている場合は、Oracle Service Busでキー・ペアを使用してすべてのメッセージの認証を行います。

32.3 WSトランスポートの使用

WSトランスポートは、分散ネットワークにおいて信頼性のあるメッセージ配信に使用できます。

WSRM機能は、SOAP 1.1およびSOAP 1.2に基づくWSRMポリシーを持ったWSDLでのみトランスポートとして使用できます。サービスがRMポリシーを持つSOAP 1.1または1.2 WSDLに関連付けられていること、あるいはRMポリシーがサービスにアタッチされていることを確認してください。WS-PolicyはWSDLで構成するか、またはサービスに割り当てることができます。詳細は、32.3.1.1項「WSポリシーの構成」を参照してください。

WSトランスポートを使用するためのプロキシ・サービスおよびビジネス・サービスの構成を始める前に、必要なWSDLまたはWS-Policyファイルが、使用するOracle Service Busドメインで利用可能であることを確認します。詳細は、32.3.1項「Oracle Service Busドメインへのリソースの追加」32.3.3項「WSトランスポートを使用するプロキシ・サービスの構成」、および32.3.6項「WSトランスポートを使用するビジネス・サービスの構成」を参照してください。

サービスにエラー・キューを構成して、Oracle Service Busがエラーになったメッセージをこのキューに配信するようにすることもできます。このキューは分散キューにすることができます。このキューは自動的には作成されないので、サービスの構成を始める前に作成しておく必要があります。詳細は、32.3.2項「エラー・キューの構成」を参照してください。

また、Oracle Service Bus管理コンソールを使用してリソースをインポートおよびエクスポートすることもできます。詳細は、32.5項「リソースのインポートとエクスポート」および32.6項「UDDIレジストリを使用したサービスのインポートとパブリッシュ」を参照してください。

32.3.1 Oracle Service Busドメインへのリソースの追加

Oracle Service Bus管理コンソールを使用して、ドメインにWSDLやカスタムのWS-Policyファイルを追加できます。

32.3.1.1 WSポリシーの構成

WSトランスポートはWSRMポリシーのあるSOAP WSDLのみで使用できます。WSDLでWS-Policyを構成するか、Oracle Service Busサービス構成ツールでWS-Policyをサービスに割り当てることができます。詳細は、32.1.2項「ポリシー」を参照してください。

RMポリシー・アサーションがサービスに関連付けられたWSDLで指定されていない場合(ポリシーのないWSDLを使用するサービスを構成する場合)、セッションをアクティブ化すると検証メッセージが表示されます。

図32-1 競合 - WSDLにRMポリシー・アサーションが指定されていない場合

図32-1の説明が続きます
「図32-1 競合 - WSDLにRMポリシー・アサーションが指定されていない場合」の説明

この競合を解決するには、WSDLを更新するか、またはサービスにポリシーをアタッチする必要があります。詳細は、32.3.1.2項「サービスへのWS-Policyのアタッチ」および第51章「Oracle Service Busプロキシ・サービスおよびビジネス・サービスでのWS-Policyの使用」を参照してください。

32.3.1.2 サービスへのWSポリシーのアタッチ

WS-Policyファイルをサービスにアタッチするには

  1. プロキシ・サービスまたはビジネス・サービスを検索し、サービスの名前をクリックします。

    「プロキシ・サービスの表示」ページまたは「ビジネス・サービスの表示」ページが表示されます。

  2. 「ポリシー」タブを選択します。サービス・ポリシー構成の詳細が表示されます。

  3. 「事前定義ポリシーまたはWS-Policyリソースから」オプションを選択します。

  4. プロキシ・サービス・フォルダを展開し、「追加」をクリックします。

    「WS-Policyの選択」ページが表示されます。

  5. 必要なポリシーを検索し、事前定義されたポリシーのリストまたはカスタム・ポリシー・リソースのリストからポリシーを選択して、「発行」をクリックします。

  6. 「更新」をクリックします。

選択したポリシーがプロキシ・サービスまたはビジネス・サービスにアタッチされます。


注意:

サービスにWS-Policyをアタッチすると、サービスに関連付けられたWSDLで定義されたすべてのポリシーは無視されます。


32.3.2 エラー・キューの構成

デフォルトでは、配信されなかったメッセージは指定された回数の再試行を行った後、破棄されます。ただし、ビジネス・サービスにエラー・キューを構成して、Oracle Service Busがメッセージ・フローでエラーになったメッセージをこのキューに配信するようにすることもできます。

エラー・キューにはJMSキューを構成する必要があります。Oracleでは、エラー・キューをリモート・キューではなく、ローカルで構成することをお薦めします。

ビジネス・サービスでは、レスポンスのタイムアウトが発生すると、レスポンス・パイプラインがエラーで呼び出されます。シーケンスの有効期限に達すると、メッセージはビジネス・サービス用に構成されたエラー・キューに置かれ、レスポンス・パイプラインがエラーで呼び出されます。ただし、レスポンスのタイムアウトがすでに発生していた場合は、メッセージはエラー・キューに置かれますが、レスポンス・パイプラインは呼び出されません。


注意:

一方向サービスおよびリクエスト/レスポンス・サービスではどちらも、エラーになったメッセージをエラー・キューに入れる処理は「そうするように最善を尽くす」に過ぎません。


32.3.3 WSトランスポートを使用するプロキシ・サービスの構成

WSトランスポートを使用するプロキシ・サービスは、RMアサーションを持つWS-Policyと関連付けられている必要があります。詳細は、32.1.2項「ポリシー」を参照してください。

プロキシ・サービスでは、クライアントからリクエストを受信し、WSRMに関連する処理を行った後で、これをメッセージ・フローに渡します。プロキシ・サービスでは、レスポンス・パイプラインからレスポンスを受信した後、これをクライアントに送信することもできます。WSトランスポートを使用するプロキシ・サービスは他の任意のプロキシ・サービスから呼び出すことが可能で、外部クライアントから呼び出されたときと同じ動作を行います。

HTTPプロキシ・サービスが構成されると(WLS wseeスタックごとに)、WSプロキシ・サービスはHTTPプロキシ・サーバーを使用して非同期メッセージを送信します。

SOAP 1.2バインディングのWSDLに基づくプロキシ・サービスではSOAP 1.2メッセージのみをサポートしており、SOAP 1.1メッセージによるバージョンの不一致エラーが発生すると、エラーがスローされます。同様に、SOAP 1.1バインディングのWSDLに基づくプロキシ・サービスではSOAP 1.1メッセージのみをサポートしており、SOAP 1.2メッセージによるバージョンの不一致エラーが発生すると、エラーがスローされます。

Oracle Service Bus管理コンソールでプロキシ・サービスを作成する場合、「トランスポート構成」ページでwsの転送プロトコルを選択します。


注意:

プロキシ・サービスの構成方法の詳細は、第2章「プロキシ・サービスの操作」を参照してください。


表32-1は、WSトランスポート・を使用するプロキシ・サービスを構成するために指定できるフィールドについて説明しています。

表32-1 WSトランスポートを使用するプロキシ・サービスの構成で必要なフィールド

フィールド 説明

プロトコル

使用可能なプロトコルのリストからwsを選択します。

エンドポイントURI

WSトランスポートを使用するプロキシ・サービスのエンドポイント構成は、HTTP/Sプロキシ・サービスの構成と同様です。URIを/contextPathの形式で指定します。

注意: HTTPトランスポートまたはWSトランスポートのどちらかを使用するプロキシ・サービスに対して、コンテキスト・パスが一意であることを確認します。


次に、WSトランスポートに固有の構成の詳細を指定する必要があります。

表32-2は、プロキシ・サービス用のWSトランスポートの構成で指定できるディスパッチ・ポリシーと、再試行回数や再試行遅延値などの詳細なオプションについて説明しています。

表32-2 プロキシ・サービス用のWSトランスポートの構成で必要なフィールド

フィールド 説明

ディスパッチ・ポリシー

このエンドポイントのディスパッチ・ポリシーに使用するOracle WebLogic Serverワーク・マネージャのインスタンスを選択しますほかのワーク・マネージャが存在しない場合は、デフォルトのワーク・マネージャが使用されます。

ワーク・マネージャの詳細は、次の説明を参照してください。

  • 『Oracle Fusion Middleware Oracle WebLogic Serverサーバー環境の構成』のワーク・マネージャを使用したスケジューリング済作業の最適化に関する説明

  • 『Oracle Fusion Middleware Oracle Service Bus管理者ガイド』のOracle Service Busでのワーク・マネージャの使用に関する項

再試行回数

WSRMレイヤーがOracle Service Busメッセージ・フローへのメッセージ配信を試行する回数です。デフォルト値は3です。

プロキシのリクエスト・フローで未処理の例外が発生した場合、着信WSトランスポート・メッセージはこの値で指定される回数までメッセージ・フローに再配信されます。これはWSトランスポート・メッセージを確実に処理するために重要です。

注意: メッセージの配信が失敗すると、現在のトランザクションはロール・バックされますが、メッセージはキューから削除されません。サーバーはメッセージの配信に成功するまで、または再試行回数の制限に到達するまでメッセージの送信を試行します。再試行回数の制限に到達すると、メッセージはキューから削除されるか、またはエラー・キューに移されます。エラー・キューは分散キューにすることができ、Oracle WebLogic Server管理コンソールで作成することができます。詳細は、32.3.2項「エラー・キューの構成」を参照してください。

再試行の遅延

サーバーがメッセージ配信を再試行する前に待機する時間です。デフォルトは5秒です。


WSトランスポートを使用するプロキシ・サービスの構成の詳細は、第2章「プロキシ・サービスの操作」の「WSトランスポート構成ページ」を参照してください。

32.3.4 プロキシ・サービスへのトランスポート・アクセス制御の割当て

管理者は、Oracle Service Bus管理コンソールでトランスポートレベルのアクセス制御ポリシーをWSプロキシ・サービスに割り当てることができます。他のすべてのトランスポートと同様に、このポリシーは、インバウンド・トランスポート・プロバイダがリクエスト・メッセージをOracle Service Busバインディング・レイヤーに渡した後、リクエスト・パイプラインを呼び出す前に実施されます。

トランスポート・レベルのアクセス制御ポリシーは、Oracle Service Busセッション内で管理されます。セッションがアクティブ化されるとき、アクセス・ポリシーは認可プロバイダ内に格納されます。実行時に、バインディング・レイヤーがセキュリティ・フレームワーク認可APIを呼び出し、このAPIによって次に認可プロバイダが呼び出されます。

プロキシ・サービス・リソースのアクセス制御を実行時に決定するために、管理者は1つまたは複数のポリシー条件を追加できます。たとえば、基本ポリシーではOperatorユーザーだけを指定します。実行時にセキュリティ・フレームワークはこのポリシーを「プロキシ・サービス・リソースにアクセスできるのは、Operatorのみである」と解釈します。詳細は、32.3.4.1項「ポリシー条件の追加」を参照してください。


注意:

Oracle Service Bus管理コンソールでWSトランスポートを使用するように構成されたプロキシ・サービスは、Oracle WebLogic Server管理コンソールにも表示されます。管理者はOracle WebLogic Server管理コンソールとOracle Service Bus管理コンソールからアクセス制御ポリシーを割り当てることができます。ただし、Oracle WebLogic Server管理コンソールから割り当てられたポリシーには実効性がなく、実行時に評価されません。Oracle Service Bus管理コンソールから割り当てられたアクセス制御ポリシーのみが実施されます。


プロキシ・サービスにトランスポート・アクセス制御を割り当てるには

  1. プロキシ・サービスを検索し、プロキシ・サービスの名前をクリックします。

  2. 「プロキシ・サービスの表示」ページで「セキュリティ」タブをクリックします。

    図32-2 プロキシ・サービスの「セキュリティ」タブ

    図32-2の説明が続きます
    「図32-2 プロキシ・サービスの「セキュリティ」タブ」の説明

  3. プロキシ・サービス名をクリックします。

    このページでは、プロキシ・サービスのトランスポート・レベルのポリシーを設定できます。

    図32-3 トランスポートレベルのポリシー

    図32-3の説明が続きます
    「図32-3 トランスポートレベルのポリシー」の説明

  4. 「条件の追加」をクリックします。「述部の選択」ページが表示されます。

  5. 必要な述部を選択し「次へ」をクリックします。「引数の編集」ページが表示されます。

  6. ポリシー条件を定義するために述部に関係のあるパラメータと値を入力します。

    管理者は次の作業を行うことができます。

    • 複合条件を作成し、これらを論理演算子ANDとOR (非排他的なOR)で結合します。条件の結合は必要であれば後から解除できます。

    • 条件を否定して、指定したポリシー条件の逆が適用されるようにします。

    • ポリシー条件が実行される順序を指定します。

    • 既存のポリシー条件を削除します。

    • 複数の条件間でANDとORを適用します。

    実行時に、条件のコレクション全体がプロキシ・サービスに対してtrueになっている必要があります。

    各述部で指定されるパラメータの詳細は、32.3.4.1項「ポリシー条件の追加」を参照してください。

  7. 「保存」をクリックします。

  8. 「戻る」をクリックし、「更新」をクリックします。

これで指定されたアクセス制御ポリシー条件がプロキシ・サービスに関連付けられ、実行時に適用されます。

32.3.4.1 ポリシー条件の追加

管理者によって設定されたポリシー条件は、プロキシ・サービスのリソースへのアクセスを制御します。ポリシー文に条件を追加するときには、既存のすべての述部やポリシー条件を使用できます。各述部は事前定義された文で、セキュリティ・ポリシー文の定義に使用できます。述部ごとに、その述部に関連付けられた引数を編集する必要があります。

述部のリストを表示するには、「条件の追加」をクリックします。

図32-4 述部のリスト

図32-4の説明が続きます
「図32-4 述部のリスト」の説明

これらの述部には次のものが含まれます。

  • 指定されたユーザー、グループまたはロールの追加や全員に対するアクセスの許可または拒否などを行う基本ポリシー条件

  • 指定した日付または時刻に基づいてリソースへのアクセスを許可する場合に使用する日付と時刻に基づくポリシー条件

  • HTTPサーブレット・リクエスト属性、HTTPセッション属性、およびEJBメソッドのパラメータの値に基づくポリシーの作成に使用されるコンテキスト要素ポリシー条件

ポリシー条件でロールを追加または削除するには、次の手順を実行します。

  1. 「述部リスト」「ロール」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. ロールを指定し、「追加」をクリックします。

    このポリシー条件には、1つまたは複数のロールを追加できます。複数のロールを追加した場合は、ユーザーがこのポリシー条件に関連付けられたロールのいずれかのメンバーであるときに、条件がtrueと評価されます。


    注意:

    ロールを削除するには、削除リストでロールを選択して「削除」をクリックします。


  4. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

ポリシー条件にグループを追加するには、次の手順を実行します。

  1. 「述部リスト」「グループ」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. グループ名を指定し、「追加」をクリックします。

    このポリシー条件には、1つまたは複数のグループを追加できます。複数のグループを追加した場合は、ユーザーがこのポリシー条件に関連付けられたグループのいずれかのメンバーであるときに、条件がtrueと評価されます。


    注意:

    グループを削除するには、「削除」リストから該当グループを選択し、「削除」をクリックします。


  4. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

ポリシー条件にユーザーを追加するには、次の手順を実行します。

  1. 「述部リスト」「ユーザー」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. ユーザー名を指定し、「追加」をクリックします。

    このロールには1つまたは複数のユーザーを追加できます。


    注意:

    ユーザーを削除するには、「削除」リストから該当ユーザーを選択し、「削除」をクリックします。


  4. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

指定した曜日にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「指定した曜日にアクセスが発生」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. 曜日を入力します。

  4. GMTとの時差を入力します。使用する場所の時間帯がGMTよりも進んでいる場合は、GMT + hh:mmと入力し、使用する場所の時間帯がGMTよりも遅れている場合は、GMT -hh:mmと入力します。

  5. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

指定した時間帯にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「指定した時間帯にアクセスが発生」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. リソースへのアクセスが有効になる開始時間と終了時間を入力します。時間はhh:mm AM|PMの形式で入力します。

  4. GMTとの時差を入力します。使用する場所の時間帯がGMTよりも進んでいる場合は、GMT + hh:mmと入力し、使用する場所の時間帯がGMTよりも遅れている場合は、GMT -hh:mmと入力します。

  5. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

コンテキスト要素の値が数値定数よりも大きい場合にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「コンテキスト要素の値が数値定数より大きい」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. コンテキスト要素の名前を入力します。

  4. 数値を入力します。リソースへのアクセスは、指定されたコンテキスト要素の値がこの数字よりも大きい場合にのみ有効になります。

  5. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

全員に対してアクセスを拒否するには、次の手順を実行します。

  1. 「述部リスト」「全員に対してアクセスを拒否」を選択します。

  2. 「終了」をクリックします。

すべてのユーザーおよびグループで、プロキシ・サービスのリソースへのアクセスが拒否されます。

コンテキスト要素の値が数値定数に等しい場合にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「コンテキスト要素の値が数値定数と等しい」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. コンテキスト要素の名前を入力します。

  4. 数値を入力します。プロキシ・サービスのリソースへのアクセスは、指定されたコンテキスト要素の値がこの数字と等しい場合にのみ有効になります。

  5. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

指定した日付よりも前の場合にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「次の日時より前にアクセスが発生」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. これよりも前の日付である場合に、プロキシ・サービスのリソースへのアクセスが有効になる日付を入力します。日付はm/d/yyまたはm/d/yy hh:mm:ss AM|PMの形式で入力します。

  4. GMTとの時差を入力します。使用する場所の時間帯がGMTよりも進んでいる場合は、GMT + hh:mmと入力し、使用する場所の時間帯がGMTよりも遅れている場合は、GMT -hh:mmと入力します。

  5. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

月の中で指定した日にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「指定した日にアクセスが発生」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. プロキシ・サービスのリソースへのアクセスが有効になる日を入力します。

    プロキシ・サービスのリソースへのアクセスは、月の中である日数が経過した後で有効になります。-31から31の範囲で、現在の月での日数を入力します。負の値は月末から逆に数えることを意味し、-1は月の最終日を表します。0は、その月の初日の前日を表します。

  4. GMTとの時差を入力します。使用する場所の時間帯がGMTよりも進んでいる場合は、GMT + hh:mmと入力し、使用する場所の時間帯がGMTよりも遅れている場合は、GMT -hh:mmと入力します。

  5. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

コンテキスト要素の値が文字列定数に等しい場合にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「コンテキスト要素の値が文字列定数と等しい」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. コンテキスト要素の名前を入力します。

  4. 文字列値を入力します。プロキシ・サービスのリソースへのアクセスは、指定されたコンテキスト要素の値がこの文字列値と等しい場合にのみ有効になります。

  5. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

定義されたコンテキスト要素が使用可能な場合にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「コンテキスト要素が定義されている」を選択します。

  2. 「終了」をクリックします。

プロキシ・サービスのリソースへのアクセスは、指定されたコンテキスト要素が存在する場合にのみ有効になります。

全員に対してアクセスを許可するには、次の手順を実行します。

  1. 「述部リスト」「全員に対してアクセスを許可」を選択します。

  2. 「終了」をクリックします。

すべてのユーザーおよびグループで、プロキシ・サービスのリソースへのアクセスが有効になります。

指定した日付よりも後の場合にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」後のアクセスを許可を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. これよりも後の日付である場合に、プロキシ・サービスのリソースへのアクセスが有効になる日付を入力します。日付はm/d/yyまたはm/d/yy hh:mm:ss AM|PMの形式で入力します。

  4. GMTとの時差を入力します。使用する場所の時間帯がGMTよりも進んでいる場合は、GMT + hh:mmと入力し、使用する場所の時間帯がGMTよりも遅れている場合は、GMT -hh:mmと入力します。

  5. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

月の中で指定した日より前の場合にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「指定した日より前にアクセスが発生」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. 月の中のこれよりも前の日ではプロキシ・サービスのリソースへのアクセスが有効になる日を入力します。

    プロキシ・サービスのリソースへのアクセスは、月の中である日数が経過した後で有効になります。-31から31の範囲で、現在の月での日数を入力します。負の値は月末から逆に数えることを意味し、-1は月の最終日を表します。0は、その月の初日の前日を表します。

  4. GMTとの時差を入力します。使用する場所の時間帯がGMTよりも進んでいる場合は、GMT + hh:mmと入力し、使用する場所の時間帯がGMTよりも遅れている場合は、GMT -hh:mmと入力します。

  5. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

コンテキスト要素の値が数値定数よりも小さい場合にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「コンテキスト要素の値が数値定数より小さい」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. コンテキスト要素の名前を入力します。

  4. 数値を入力します。プロキシ・サービスのリソースへのアクセスは、指定されたコンテキスト要素の値がこの数字よりも小さい場合にのみ有効になります。

  5. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

月の中で指定した日より後の場合にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「指定した日より後にアクセスが発生」を選択します。

  2. 「次へ」をクリックします。「引数の編集」ページが表示されます。

  3. 月の中のこれよりも後の日ではプロキシ・サービスのリソースへのアクセスが有効になる日を入力します。

    プロキシ・サービスのリソースへのアクセスは、月の中である日数が経過した後で有効になります。-31から31の範囲で、現在の月での日数を入力します。負の値は月末から逆に数えることを意味し、-1は月の最終日を表します。0は、その月の初日の前日を表します。

  4. GMTとの時差を入力します。使用する場所の時間帯がGMTよりも進んでいる場合は、GMT + hh:mmと入力し、使用する場所の時間帯がGMTよりも遅れている場合は、GMT -hh:mmと入力します。

  5. 「終了」をクリックします。

条件がポリシー文に追加され、「ポリシー条件」ページに表示されます。

サーバーが開発モードで実行されている場合にのみプロキシ・サービスのリソースへのアクセスを有効にするには、次の手順を実行します。

  1. 「述部リスト」「サーバーが開発モードである」を選択します。

  2. 「終了」をクリックします。

ユーザーとグループは、サーバーが開発モードで実行されている場合にのみ、プロキシ・サービスのリソースにアクセスできます。

32.3.5 HTTPプロキシ・サーバーを経由するWSトランスポートのルーティング

HTTPプロキシ・サーバーが構成されている場合、WSビジネス・サービスはHTTPプロキシ・サーバーを使用してアウトバウンド・メッセージを送信します。クライアント・アプリケーションでHTTPプロキシ・サーバーの詳細を指定する方法の詳細は、『Oracle Fusion Middleware Oracle WebLogic Server JAX-RPC Webサービス・スタート・ガイド』のWebサービスの呼出しに関する項を参照してください。

32.3.6 WSトランスポートを使用するビジネス・サービスの構成

WSトランスポートを使用するビジネス・サービスは、RMアサーションを持つWS-Policyと関連付けられている必要があります。詳細は、32.1.2項「ポリシー」を参照してください。ビジネス・サービスは、外部の信頼性のあるWebサービスを呼び出すクライアントとして動作します。ビジネス・サービスによってサービスにリクエストが送信され、Oracle Service Busによってデプロイされたアプリケーションでレスポンスを受信します。これによりレスポンス・パスが呼び出されます。

Oracle Service Bus管理コンソールでWSDLリソースに基づいてビジネス・サービスを作成する場合、「トランスポート構成」ページでwsの転送プロトコルを選択します。


注意:

ビジネス・サービスの構成方法の詳細は、2.2項「ビジネス・サービスの操作」を参照してください。


表32-3は、WSトランスポートを使用するビジネス・サービスを構成する場合に指定する必要があるフィールドについて説明しています。次のフィールドを指定します。

表32-3 WSトランスポートを使用するビジネス・サービスの構成

フィールド 説明

プロトコル

使用可能なプロトコルのリストから「ws」を選択します。

ロード・バランシング・アルゴリズム

ロード・バランシング・アルゴリズムとして次の値の中から1つを指定します。

  • ラウンドロビン

  • ランダム

  • ランダムな重みベース

  • なし

エンドポイントURI

Webサービスの場所を指します。WSトランスポートを使用するビジネス・サービスのエンドポイント構成は、HTTP/HTTPSの構成と同様です。http://host:port number/nameまたはhttps://host:port number/nameの形式でURIを指定します。

ビジネス・サービスでは信頼性のある異なるWebサービスを指す複数のエンドポイントURIを指定できます。

再試行回数

アウトバウンド・リクエストの送信時に配信エラーが発生した場合に、個別のURLエンドポイントに対して再試行を行う回数を指定します。このフィールドの数字は、リスト上にあるURIの数ではなく、URIを再試行する回数の合計を示します。

再試行の反復間隔

リストにあるすべてのエンドポイントURIに対してシステムが再試行を行うときに休止する秒数を指定します。

アプリケーション・エラーの再試行

「はい」または「いいえ」を選択します。

アウトバウンド・リクエストを送信する際の配信の失敗に備えて、アプリケーション・エラー(SOAPフォルトなど)に基づいてエンドポイントURIを再試行するかどうかを指定します。詳細は、32.4項「エラー処理」を参照してください。


ビジネス・サービス用にWSトランスポートを構成するには、表32-4に示す値を指定します。

表32-4 ビジネス・サービス用のWSトランスポートの構成

フィールド 説明

レスポンス・タイムアウト

リクエストの送信後、定義された間隔以内にレスポンスが返されない場合、サービスがタイムアウトしたというエラーでレスポンス・パイプラインが呼び出されます。値0が指定されると、レスポンスのタイムアウトが起こらないことを示します。

サービス・アカウント

サービス・アカウントを指定します。

注意: これは基本認証を必要とするWS-PolicyがWSビジネス・サービスにある場合にのみ適用されます。

詳細は、2.1.15項「サービス・アカウント・リソースの作成」を参照してください。

エラー・メッセージをキューに入れる

このオプションは、エラーになったリクエストをエラー・キューに送信する場合に選択します。以下のフィールドは、このオプションを選択した場合にのみ使用できます。

エラー・キューURI

ビジネス・サービスでエラーになったリクエストのために使用されるエラー・キューです。jms://host:port/conn-factory-jndi-name/queue-jndi-nameの形式でURIを指定します。

注意: このキューは分散キューにすることができます。エラー・キューは自動的には作成されないので、有効なキューが使用できることを確認してください。詳細は、32.3.2項「エラー・キューの構成」を参照してください。

Oracle WebLogic Serverでは、JNDI名でmyqueues/myqueueのようにフォワード・スラッシュを使用できますが、フォワード・スラッシュのあるJNDI名は、Oracle Service Busに必要とされるURIフォーマットと一致しないため、このような名前を使用することはできません。この問題を回避するには、JMS外部サーバーを定義してURIでその外部サーバーを参照します。詳細は、Oracle Fusion Middleware Oracle WebLogic Server管理コンソールのオンライン・ヘルプの外部サーバーの構成に関する項を参照してください。

JMSエラー・キューのサービス・アカウント

JMSエラー・キューへの接続に使用されるサービス・アカウントです。

エラー・キューにSSLを使用

JMSエラー・キューへの接続にSSLを使用する場合は、このオプションを選択します。


WSトランスポートを使用するビジネス・サービスの構成方法の詳細は、2.2項「ビジネス・サービスの操作」を参照してください。

32.4 エラー処理

アプリケーション・エラーを処理するようにWSトランスポートベースのビジネス・サービスを構成できます。これには、アプリケーション・エラーの発生時にビジネス・サービスのエンドポイントURIを再試行するかどうかを指定します。4.2.4項「ビジネス・サービスの「トランスポート構成」ページ」を参照してください。

アプリケーション・エラーは、WSトランスポート・ベースのビジネス・サービスでSOAPフォルトがレスポンスとして受信され、BEA-380001エラー・コードが生成されると発生します。


注意:

ビジネス・サービスに対するリクエストでレスポンスまたはシーケンスのタイムアウトが発生した場合、Oracle Service Busサーバーは、ロード・バランシング・アルゴリズムに基づいてその次のURIにメッセージの送信を試行します。この動作は「アプリケーション・エラーの再試行」オプションに依存しません。


32.5 リソースのインポートとエクスポート

Oracle Service Busドメインにリソースが存在する場合、「セキュリティおよびポリシーの構成を保持」オプションを選択することで、リソースをOracle Service Busにインポートするときにセキュリティおよびポリシーの構成の詳細を保持できます。このオプションを選択すると、リソース内でセキュリティとポリシーについての構成が更新されている場合であっても、インポート時に既存のリソースの値が保持されます。

リソースのインポートの詳細は、2.1.14項「リソースのインポート」を参照してください。

32.6 UDDIレジストリを使用したサービスのインポートとパブリッシュ

プロキシ・サービスがUDDIレジストリにパブリッシュされると、サービスはWSDLを使用するWSビジネス・サービスに変換されます。認証の構成がある場合は、これもUDDIにエクスポートされます。

WSRMポリシーを使用するWSDLベースのビジネス・サービスがUDDIレジストリからOracle Service Busにインポートされる場合は、サービスは自動的にWSトランスポートを使用するように構成されたWSビジネス・サービスとしてインポートされます。詳細は、32.1.2項「ポリシー」を参照してください。

詳細は、『Oracle Fusion Middleware Oracle Service Bus管理者ガイド』の「UDDI」を参照してください。