ヘッダーをスキップ
Oracle Fusion Middleware Webサービスのためのセキュリティおよび管理者ガイド
11g リリース1(11.1.1)
B56247-03
  目次へ移動
目次

前
 
次
 

8 Webサービスへのポリシーの添付

この章では次の項について説明します。

Webサービスに添付されたポリシーの表示

次の項では、Fusion Middleware ControlおよびWebLogic Scripting Tool (WLST)を使用してWebサービスに添付されたポリシーを表示する方法について説明します。

Fusion Middleware Controlの使用

Webサービスに添付されたポリシーを表示する手順

  1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」で説明されているように、Webサービスのホームページに移動します。

  2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・エンドポイントを表示するWebサービスのプラス記号(+)をクリックします。

  3. エンドポイントの名前をクリックし、特定のWebサービスの「Webサービス・エンドポイント」ページに移動します。

  4. 「OWSMポリシー」タブをクリックします。

    図8-1に、グローバルに添付されたポリシーおよび直接添付されたポリシーの両方を含むOracle Infrastructure Webサービスのエンドポイントの画面表示を示します。エンドポイントの有効なポリシーのみが表示されます。エンドポイントで有効なポリシーの詳細は、「有効なポリシー・セットの算定」を参照してください。

    図8-1 Oracle Infrastructure Webサービス・エンドポイントに添付されたポリシー

    図8-1の説明が続きます
    「図8-1 Oracle Infrastructure Webサービス・エンドポイントに添付されたポリシー」の説明

    図8-2にWebLogic Java EEエンドポイントの画面表示を示します。エンドポイントに直接添付されているポリシーのみが表示されます。グローバルに添付されているポリシーは表示されません。

    図8-2 WebLogic Java EE Webサービス・エンドポイントに添付されたポリシー

    図8-2の説明が続きます
    「図8-2 WebLogic Java EE Webサービス・エンドポイントに添付されたポリシー」の説明

WLSTの使用

Webサービスに添付されたポリシーを表示するには、次の手順に従ってください。


注意:

この手順は、Oracle Infrastructure Webサービスにのみ適用されます。

  1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、アプリケーションがデプロイされるWebLogic Serverの実行中のインスタンスに接続します。

  2. 「アプリケーションのWebサービスの表示」の説明に従って、WLSTコマンドlistWebServicesを使用して、アプリケーションのWebサービスのリストを表示します。

  3. listWebServicePortsコマンドを使用して、Webサービスのポート名とエンドポイントURLを表示します。

    listWebServicePorts(application,moduleOrCompName,moduleType,serviceName)
    

    たとえば、WsdlConcreteServiceのポートを表示するには、次のようにします。

    wls:/wls-domain/serverConfig> listWebServicePorts("/wls-domain/AdminServer/jaxwsejb30ws",
    "jaxwsejb","web","WsdlConcreteService")
     
    WsdlConcretePort   http://host.us.oracle.com:7001/jaxwsejb/WsdlAbstract
    
  4. listWebServicePoliciesコマンドを使用して、Webサービス・ポートに添付されたポリシーを表示します。

    listWebServicePolicies(application,moduleOrCompName,moduleType,serviceName,subjectName)
    

    たとえば、WsdlConcretePortポートに添付されたポリシーとポリシーのオーバーライド設定を表示するには、次のようにします。

    wls:/wls_domain/serverConfig> listWebServicePolicies("/wls_domain/AdminServer/jaxwsejb30ws",
    "jaxwsejb","web","WsdlConcreteService","WsdlConcretePort")
     
    WsdlConcretePort : 
    addressing : oracle/wsaddr_policy , enabled=true
    management : oracle/log_policy , enabled=true
    security : oracle/wss_username_token_service_policy, enabled=true
    Attached policy or policies are valid; endpoint is secure.
    

単一のサブジェクトへのポリシーの添付

サブジェクトは、ポリシーを関連付けられるエンティティです。サブジェクトには、1つ以上のポリシーを添付できます。

ポリシーが実行される順序は、サブジェクトにポリシーが添付される順序や、添付されたポリシーのリストの順序では決定されません。クライアントとWebサービス間でメッセージが受け渡される際に、ポリシー・インターセプタ・チェーン内のインターセプタの順序でポリシーが実行される順序が決定されます。

詳細は、「ポリシー実行の仕組み」を参照してください。


注意:

クラスタ内のSOA、ADF、WebCenterの各Webサービスでは、ポリシー添付は自動的に同期化されません。クラスタ内のSOA、ADF、WebCenterの各Webサービスを使用する場合は、クラスタの各インスタンスにポリシーを添付または解除(あるいはその両方)する必要があります。この問題は、WebLogic Java EE WebサービスおよびSOAコンポジット・サービスには適用されません。

Fusion Middleware Controlを使用したWebサービスへのポリシーの添付

単一のWebサービス・エンドポイントにポリシーを添付するには、次の手順に従ってください。複数のWebサービスに同時にポリシーを添付するには、「複数のサブジェクトへのポリシーの添付(一括添付)」を参照してください。


注意:

Fusion Middleware Controlを使用したWebLogic Java EE Webサービスへのポリシー添付の場合は、次の点に注意してください。
  • Oracle WSMセキュリティ・ポリシーのみ添付できます。

  • Oracle WSMポリシーとWebLogic Webサービス・ポリシーは、同じエンドポイントには添付できません。WebLogic Java EEエンドポイントにWebLogicポリシーが添付されていると、Fusion Middleware Controlを使用してOracle WSMセキュリティ・ポリシーを添付することはできません。WebLogicポリシーは、WebLogic Server管理コンソールを使用して添付できることに注意してください。Fusion Middleware Controlを使用してWebLogicポリシーを添付することはできません。


Webサービスにポリシーを添付する手順

  1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」で説明されているように、Webサービスのホームページに移動します。

  2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・エンドポイントを表示するWebサービスのプラス記号(+)をクリックします。

  3. エンドポイントの名前をクリックし、特定のWebサービスの「Webサービス・エンドポイント」ページに移動します。

  4. 「OWSMポリシー」タブをクリックします。

    すでにエンドポイントにグローバルにおよび直接添付されているポリシーが図8-1に表示されます。

  5. 「アタッチ/デタッチ」をクリックします。

  6. 「使用可能なポリシー」リストからポリシーを選択し、「添付」をクリックします。図8-3を参照してください。

    図8-3 Webサービスへのポリシーの添付

    図8-3の説明が続きます
    「図8-3 Webサービスへのポリシーの添付」の説明

  7. ポリシーの詳細を表示するには、ポリシーを選択して、「詳細の表示」アイコンをクリックします。ポップアップ・ウィンドウに、ポリシーの読取り専用の詳細説明とそのポリシーに含まれるアサーションのリストが表示されます。図8-4を参照してください。ポリシーの詳細を確認し終わったら、「OK」をクリックします。

    図8-4 ポリシーの詳細の表示

    図8-4の説明が続きます
    「図8-4 ポリシーの詳細の表示」の説明

  8. ポリシーの選択と添付を続行します。完了したら、「検証」をクリックして、選択されたポリシーの組合せが有効であることを確認します。

  9. 「OK」をクリックします。

  10. 「Webサービス・エンドポイント」ページの「OWSMポリシー」タブに、添付されたポリシーが表示されます。


    注意:

    ポリシー・セットを使用してグローバルに添付されているポリシーと同じカテゴリのアサーションを含むポリシーを直接添付する場合、グローバルに添付されたポリシーは直接添付されたポリシーにより上書きされます。この場合、グローバルに添付されたポリシーは無効になり、エンドポイントに添付されているポリシーのリストには表示されません。有効なポリシーの詳細は、「ポリシーの有効なセットの算定」を参照してください。

  11. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットまたはWebLogic Java EE Webサービス・アプリケーションでは再起動する必要はありません。


    注意:

    アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTを使用したWebサービスへのポリシーの添付

WLSTを使用して単一のWebサービスに単一のポリシーまたは複数のポリシーを添付(または解除)するには、次の手順に従ってください。


注意:

この手順は、Oracle Infrastructure Webサービスにのみ適用されます。

  1. 「Webサービスに添付されたポリシーの表示」「WLSTの使用」の説明に従って、現在ポートに添付されているポリシーのリストを表示します。

  2. 「WLSTを使用した使用可能なポリシーのリストの表示」の説明に従って、使用可能なポリシーのリストを表示します。

  3. ポリシーを添付するには、次のいずれかを実行します。

    • attachWebServicePolicyコマンドを使用して、Webサービス・ポートに単一のポリシーを添付します。policyURI引数を使用して、添付するポリシーを指定します。指定したポリシーがすでに添付されているかすでに存在する場合は、このコマンドでそのポリシーが有効になります(無効な場合)。

      attachWebServicePolicy(application, moduleOrCompName, moduleType, serviceName, 
      subjectName, policyURI, [subjectType=None]
      

      たとえば、ポリシーoracle/wss_username_token_service_policyWsdlConcreteServiceWsdlConcretePortに添付するには、次のコマンドを使用します。

      wls:/wls_domain/serverConfig> attachWebServicePolicy("/wls_domain/AdminServer/jaxwsejb30ws",
      "jaxwsejb","web","WsdlConcreteService","WsdlConcretePort",
      "oracle/wss_username_token_service_policy")
      
    • attachWebServicePoliciesコマンドを使用して、Webサービス・ポートに複数のポリシーを添付します。policyURIs引数を使用して、添付するポリシーを指定します。このコマンドで指定したポリシーのいずれかがすでに添付されている場合は、このコマンドでその添付済ポリシーが有効になり(無効な場合)、その他のポリシーは添付されます。

      attachWebServicePolicies(application, moduleOrCompName, moduleType,
       serviceName, subjectName, policyURIs, [subjectType=None]
      

      たとえば、ポリシーoracle/wss_username_token_service_policyoracle/wsrm10_policyWsdlConcreteServiceWsdlConcretePortに添付するには、次のコマンドを使用します。

      wls:/wls_domain/serverConfig> attachWebServicePolicies("/wls_domain/AdminServer/jaxwsejb30ws",
      "jaxwsejb","web","WsdlConcreteService","WsdlConcretePort",
      ["oracle/wss_username_token_service_policy","oracle/wsrm10_policy"])
      
      Please restart application to uptake the policy changes.
      

    注意:

    wsm-pmアプリケーションがWebLogic Serverにインストールされており、使用可能は場合は、policyURIsはOracle WSM Policy Manager APIにより検証されます。ポリシーの検証が失敗した場合、メッセージが表示されてコマンドは実行されません。

    wsm-pmアプリケーションがインストールされていないか使用可能でない場合は、これらのコマンドは実行されません。

    ポリシーの検証の詳細は、「ポリシー・サブジェクトの検証」を参照してください。


  4. ポリシーを解除するには、次のいずれかを実行します。

    • detachWebServicePolicyコマンドを使用して、Webサービス・ポートから単一のポリシーを解除します。policyURI引数を使用して、解除するポリシーを指定します。

      detachWebServicePolicy(application, moduleOrCompName, moduleType,
       serviceName, subjectName, policyURI, [subjectType=None]
      

      たとえば、ポリシーoracle/wss_username_token_service_policyWsdlConcreteServiceWsdlConcretePortから解除するには、次のコマンドを使用します。

      wls:/wls_domain/serverConfig> detachWebServicePolicy("/wls_domain/AdminServer/jaxwsejb30ws",
      "jaxwsejb","web","WsdlConcreteService","WsdlConcretePort",
      "oracle/wss_username_token_service_policy")
      
    • detachWebServicePoliciesコマンドを使用して、Webサービス・ポートから複数のポリシーを解除します。policyURIs引数を使用して、解除するポリシーを指定します。

      detachWebServicePolicies(application, moduleOrCompName, moduleType,
      serviceName, subjectName, policyURIs, [subjectType=None]
      

      たとえば、ポリシーoracle/wss_username_token_service_policyoracle/wsrm10_policyWsdlConcreteServiceWsdlConcretePortから解除するには、次のコマンドを使用します。

      wls:/wls_domain/serverConfig> detachWebServicePolicies("/wls_domain/AdminServer/jaxwsejb30ws",
      "jaxwsejb","web","WsdlConcreteService","WsdlConcretePort",
      ["oracle/wss_username_token_service_policy","oracle/wsrm10_policy"])
      
      Please restart application to uptake the policy changes.
      
  5. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。


    注意:

    アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

複数のサブジェクトへのポリシーの添付(一括添付)

「アプリケーション」ページから、1つ以上のWebサービスに1つ以上のポリシーを添付できます。


注意:

一括添付メカニズムでは、添付するポリシーの検証は実行されません。

一括添付メカニズムでは、サポートされていない構成(複数の認証ポリシー)を作成したり、同じポリシーを複数回添付したりできます。

クラスタ内のSOA、ADF、WebCenterの各Webサービスでは、ポリシー添付は自動的に同期化されません。クラスタ内のSOA、ADF、WebCenterの各Webサービスを使用する場合は、クラスタの各インスタンスにポリシーを添付または解除(あるいはその両方)する必要があります。この問題は、WebLogic Java EE WebサービスおよびSOAコンポジット・サービスには適用されません。


アプリケーション内の複数のWebサービスにポリシーを添付する手順

  1. ナビゲータ・ペインで「WebLogicドメイン」を開き、ポリシーの添付を行うドメインを表示します。

  2. ドメインと、ポリシーを添付するサーバーのインスタンスを選択します。サーバーは、管理サーバーまたは管理対象サーバーのいずれかになります。

  3. Fusion Middleware Controlを使用して、「WebLogicサーバー」「Webサービス」をクリックします。

  4. 「Webサービスのサマリー」ページで「ポリシーの添付」をクリックします。

  5. 図8-5に示すように、「ポリシー・サブジェクトの選択」ページで、ポリシーを添付するアプリケーションを1つ以上選択します。

    「検索」コントロールを使用して、特定のポリシー・サブジェクト・タイプ、アプリケーション名、またはポリシーを添付するWebサービスのタイプを検索します。有効なポリシー・サブジェクト・タイプとして、Webサービス・エンドポイント、Webサービス・クライアント、Webサービス接続、SOAコンポーネント、SOAサービス、SOA参照、非同期コールバック・クライアント、WLS Webサービス・エンドポイントがあります。非同期コールバック・クライアントの詳細は、Oracle Fusion Middleware概要 for Oracle Infrastructure Webサービスの非同期Webサービスの開発に関する項を参照してください。

    たとえば、Webサービス・クライアントのポリシー・サブジェクト・タイプを検索する場合、使用可能なWebサービス・クライアント(存在する場合)のみが表示されます。

    複数のアプリケーションを選択するには、[Ctrl]キーを押しながらアプリケーションをクリックします。

    図8-5 サブジェクトの選択ページ

    図8-5の説明が続きます
    図8-5「サブジェクトの選択ページ」の説明

  6. 「次へ」をクリックします。

  7. 図8-6に示すように、「ポリシーの選択」ページで、選択したアプリケーションに添付するポリシーを1つ以上選択します。「ポリシーの選択」ページには、前の手順で選択したすべてのサブジェクトに適用できるポリシーのみが表示されます。


    注意:

    Fusion Middleware Controlを使用してWebLogic Java EE Webサービス・エンドポイントに添付できるのはセキュリティ・ポリシーのみです。非セキュリティ・ポリシーをWebLogic Webサービス・エンドポイントに添付しようとした場合、そのアクションは無視されます。

    複数のポリシーを選択するには、[Ctrl]キーを押しながら添付するポリシーをクリックします。

    図8-6「ポリシーの選択」ページ

    図8-6の説明が続きます
    図8-6「「ポリシーの選択」ページ」の説明

  8. 「次へ」をクリックします。

    図8-7に示すように、「サマリー」ページに、選択したアプリケーションと、それらのアプリケーションに添付するポリシーが表示されます。

    図8-7 添付サマリーページ

    図8-7の説明が続きます
    「図8-7 添付サマリーページ」の説明

  9. 変更を行うには「戻る」をクリックし、一括添付を完了するには「添付」をクリックします。

  10. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットまたはWebLogic Java EE Webサービス・アプリケーションでは再起動する必要はありません。


    注意:

    アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

ポリシー・サブジェクトの検証

ポリシー内のアサーションのタイプおよび数が有効であれば、ポリシーは内部的に一貫性があり有効です。ただし、ポリシー・サブジェクトに複数のポリシーが添付されている場合は、ポリシーの組合せも有効であることが必要です。具体的には、次の内容を満たしている必要があります。


注意:

ポリシーを表示すると、セキュリティなどの主要なカテゴリのみが表示されます。(認証などの)サブタイプを表示するには、ポリシーのベースとなるアサーション・テンプレートの「アサーション詳細」セクションを参照してください。

ランタイムでは、自動的にSTS-Trust構成ポリシーを最初に適用し、認証ポリシーを最後に適用します。

一括添付機能を使用する場合は、ポリシー・サブジェクト検証を使用して、複数のポリシー・サブジェクトの妥当性を確認することはできません。この機能を使用してサブジェクトにポリシーを添付した後に、各サブジェクトを個別に検証する必要があります。


注意:

ポリシー・サブジェクト検証では、ポリシーのXMLスキーマは検証されません。そのため、ポリシー・ファイルを手動で編集する場合は、別のツールを使用してXMLが有効であることを確認する必要があります。

ポリシー・サブジェクト検証を確認する手順

  1. ナビゲータ・ペインで、「アプリケーションのデプロイ」フォルダのプラス記号(+)をクリックしてファーム内のアプリケーションを表示し、アプリケーションを選択します。

    「アプリケーションのデプロイ」ホームページが表示されます。

  2. Fusion Middleware Controlを使用して、「アプリケーションのデプロイ」「Webサービス」をクリックします。

    これにより、アプリケーションの「Webサービスのサマリー」ページが表示されます。

  3. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・ポートを表示するWebサービスのプラス記号(+)をクリックします。

  4. ポート名をクリックして「Webサービス・エンドポイント」ページに移動します。

  5. 「ポリシー」タブをクリックします。

  6. 「アタッチ/デタッチ」をクリックします。

  7. 「検証」をクリックします。

    検証エラーがある場合は、エラーを説明するダイアログ・ボックスが表示されます。エラーを修正して、ポリシー・サブジェクト検証を再度実行します。

Webサービス・クライアントへのポリシーの添付

この項では、SOA参照、ADF Data Control (DC)および非同期のWebサービス・コールバック・クライアントなどのWebサービス・クライアントに、ポリシーを添付する方法について説明します。

WLSTポリシーを使用してWebサービス・クライアントにポリシーを添付する場合は、どのWebサービス・クライアント・タイプでも手順は同じです。引数の設定により、ポリシーを添付するクライアントのタイプを指定します。


注意:

WebLogic Java EE Webサービス・クライアントへのOracle WSMポリシーの添付はサポートされていません。

Fusion Middleware Controlの使用

Fusion Middleware Controlでは、Webサービス・クライアントにポリシーを添付する手順は、どのWebサービス・クライアント・タイプでも同じです。ただし、次の項で説明するように、Webサービス・クライアントに移動する方法は、アプリケーション・タイプによって異なります。

SOA参照へのポリシーの添付

次の手順では、SOA参照にポリシーを添付する方法について説明します。SOA参照の開発に関する詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。

SOA参照にポリシーを添付する手順

  1. 「SOA参照の表示」の説明に従って、SOA参照を表示します。

  2. 「ポリシー」タブを選択します。

  3. このページの「直接アタッチされたポリシー」セクションで、「添付」または「解除」をクリックします。

  4. ページの「使用可能なポリシー」のセクションで、添付するポリシーを1つ以上選択します。ポリシーを検証するには「検証」をクリックし、クライアント・ポリシーとサービス・ポリシーの互換性を確認するには「サービスの互換性をチェックします」をクリックします。

  5. ポリシーを添付するには、「アタッチ」をクリックします。

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

接続ベースのWebサービス・クライアントへのポリシーの添付

次の手順では、ADF DC Webサービス・クライアント、ADF JAX-WS Indirection Proxy、WebCenterクライアントなどの接続ベースのWebサービスにポリシーを添付する方法について説明します。

ADF DCのWebサービス・クライアントの開発に関する詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』の「Fusion Web ApplicationでのOracle ADFモデルの使用」を参照してください。

接続ベースのWebサービス・クライアントにポリシーを添付するには、次の手順を実行します。

  1. Fusion Middleware Controlを使用して、「アプリケーションのデプロイ」を開きます。

  2. ターゲット・アプリケーションを選択します。

  3. 「アプリケーションのデプロイ」メニューから、「ADF」ADF接続の構成を選択します。

  4. ADF接続の構成ページで、「Webサービス接続」リストから1行を選択し、「Webサービスの構成」リストを使用してWebサービス・クライアントを構成します。

  5. 「Webサービス・クライアント」ページで、「OWSMポリシー」タブを選択します。

  6. このページの「直接アタッチされたポリシー」セクションで、「添付」または「解除」をクリックします。

  7. ページの「使用可能なポリシー」セクションで、添付するポリシーを1つ以上選択します。ポリシーを検証するには「検証」をクリックし、クライアント・ポリシーとサービス・ポリシーの互換性を確認するには「サービスの互換性をチェックします」をクリックします。

  8. ポリシーを添付するには、「アタッチ」をクリックします。

  9. 「OK」をクリックします。

非同期のWebサービス・コールバック・クライアントへのポリシーの添付

次の手順では、非同期のWebサービス・コールバック・クライアントにポリシーを添付する方法について説明します。非同期Webサービスおよび非同期コールバック・クライアントの開発に関する詳細は、Oracle Fusion Middleware概要 for Oracle Infrastructure Webサービスの非同期Webサービスの開発に関する項を参照してください。

非同期コールバック・クライアントにポリシーを添付する手順

  1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、非同期Webサービスのエンドポイントに移動します。

  2. エンドポイント・ページの右上角のコールバック・クライアントをクリックします。

  3. 「ポリシー」タブをクリックします。

  4. 「アタッチ/デタッチ」をクリックします。

  5. ページの「使用可能なポリシー」部分で、添付するポリシーを1つ以上選択します。ポリシーを検証するには「検証」をクリックし、クライアント・ポリシーとサービス・ポリシーの互換性を確認するには「サービスの互換性をチェックします」をクリックします。

  6. ポリシーを添付するには、「アタッチ」をクリックします。

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

WLSTの使用

次の手順では、SOA参照、接続ベースのWebサービス・クライアント(ADF DC Webサービス・クライアント、ADF JAX-WS Indirection Proxy、WebCenterクライアントなど)および非同期Webサービス・コールバック・クライアントにポリシーを添付する方法について説明します。どのクライアント・タイプでも手順は同じです。ただし、引数の設定は、ポリシーを添付または解除するクライアントのタイプによって異なります。

  1. 「Webサービス・クライアントの表示」「WLSTの使用」の説明に従って、Webサービス・クライアントを表示します。

  2. listWebServiceClientPortsコマンドを使用して、Webサービス・クライアントのポート名とエンドポイントURLを表示します。

    listWebServiceClientPorts(application,moduleOrCompName,moduleType,serviceRefName)
    

    たとえば、サービス参照clientのポートを表示するには、次のようにします。

    wls:/wls-domain/serverConfig> listWebServiceClientPorts('/base_domain/AdminServer/application1#V2.0',
    'test1','wsconn','client')
     
    HelloWorld_pt
    
  3. 「WLSTを使用した使用可能なポリシーのリストの表示」の説明に従って、使用可能なポリシーのリストを表示します。

    使用可能なクライアント・ポリシーのみを表示するには、subject引数にclientを設定します。たとえば、次のようにします。

    listAvailableWebServicePolicies("","client")
    
  4. ポリシーを添付するには、次のいずれかを実行します。

    • attachWebServiceClientPolicyコマンドを使用して、Webサービス・クライアント・ポートに単一のポリシーを添付します。

      attachWebServiceClientPolicy(application, moduleOrCompName, moduleType,
      serviceRefName, portInfoName, policyURI, [subjectType=None]
      

      次のように引数を設定します。

      • SOA参照の場合は、SOAコンポジットの名前を指定するにはmoduleOrCompName引数を使用し、soaを指定するにはmoduleType引数を使用し、SOA参照の名前を指定するにはserviceRefName引数を使用します。

      • ADF DC Webサービス・クライアント、ADF JAX-WS Indirection Proxy、WebCenterクライアントなどの接続ベースのWebサービス・クライアントの場合は、application引数を使用してクライアント・アプリケーションの名前を指定し、moduleType引数を使用してwsconnを指定し、serviceRefName引数を使用してサービス参照名を指定します。

      • 非同期Webサービス・コールバック・クライアントの場合は、moduleType引数を使用してwebを指定します。クライアント・アプリケーションの名前またはSOAコンポジットの名前を指定するには、それぞれapplication引数とmoduleOrCompName引数を使用します。

      • すべてのクライアント・タイプで、portInfoName引数を使用してポートの名前を指定します。

      • policyURI引数を使用して、添付するポリシーを指定します。指定したポリシーがすでに添付されているかすでに存在する場合は、このコマンドでそのポリシーが有効になります(無効な場合)。

      たとえば、クライアント・ポリシーoracle/wss_username_token_client_policyclientサービスのHelloWorld_ptに添付するには、次のコマンドを使用します。

      wls:/wls_domain/serverConfig> attachWebServiceClientPolicy("/wls_domain/AdminServer/application1#2.0",
      "test1","wsconn","client","HelloWorld_pt","oracle/wss_username_token_client_policy")
      
    • attachWebServiceClientPoliciesコマンドを使用して、Webサービス・クライアント・ポートに複数のポリシーを添付します。上記の単一クライアント・ポリシーの添付の手順に従って引数を設定しますが、添付する複数のポリシーを指定するには、policyURIs引数を使用します。このコマンドで指定したポリシーのいずれかがすでに添付されている場合は、このコマンドでその添付済ポリシーが有効になり(無効な場合)、その他のポリシーは添付されます。

      attachWebServiceClientPolicies(application, moduleOrCompName, 
      moduleType, serviceRefName, portInfoName, policyURIs, [subjectType=None]
      

      たとえば、ポリシーoracle/wss_username_token_client_policyoracle/wsrm10_policyclientサービスのHelloWorld_ptに添付するには、次のコマンドを使用します。

      wls:/wls_domain/serverConfig> attachWebServiceClientPolicies("/wls_domain/AdminServer/application1#2.0",
      "test1","wsconn","client","HelloWorld_pt",
      ["oracle/wss_username_token_client_policy","oracle/wsrm10_policy"])
      
      Please restart application to uptake the policy changes.
      

    注意:

    wsm-pmアプリケーションがWebLogic Serverにインストールされており、使用可能は場合は、policyURIsはOracle WSM Policy Manager APIにより検証されます。ポリシーの検証が失敗した場合、メッセージが表示されてコマンドは実行されません。

    wsm-pmアプリケーションがインストールされていないか使用可能でない場合は、これらのコマンドは実行されません。

    ポリシーの検証の詳細は、「ポリシー・サブジェクトの検証」を参照してください。


  5. ポリシーを解除するには、次のいずれかを実行します。

    • detachWebServiceClientPolicyコマンドを使用して、Webサービス・ポートから単一のポリシーを解除します。

      detachWebServiceClientPolicy(application, moduleOrCompName, moduleType,
      serviceRefName, portInfoName, policyURI, [subjectType=None]
      

      上記のステップ4の説明に従って、引数を設定します。

      たとえば、クライアント・ポリシーoracle/wss_username_token_client_policyclientサービスのHelloWorld_ptから解除するには、次のコマンドを使用します。

      wls:/wls_domain/serverConfig> detachWebServiceClientPolicy("/wls_domain/AdminServer/application1#2.0",
      "test1","wsconn","client","HelloWorld_pt","oracle/wss_username_token_client_policy")
      
    • detachWebServiceClientPoliciesコマンドを使用して、Webサービス・ポートから複数のポリシーを解除します。上記の単一クライアント・ポリシーの解除の手順に従って引数を設定しますが、解除する複数のポリシーを指定するには、policyURIs引数を使用します。

      detachWebServiceClientPolicies(application, moduleOrCompName, 
      moduleType, serviceRefName, portInfoName, policyURIs, [subjectType=None]]
      

      たとえば、ポリシーoracle/wss_username_token_client_policyoracle/wsrm10_policyclientサービスのHelloWorld_ptから解除するには、次のコマンドを使用します。

      wls:/wls_domain/serverConfig> detachWebServiceClientPolicies("/wls_domain/AdminServer/application1#2.0",
      "test1","wsconn","client","HelloWorld_pt",
      ["oracle/wss_username_token_client_policy","oracle/wsrm10_policy"])
      
      Please restart application to uptake the policy changes.
      
  6. ADF DCおよびWebCenterクライアント・アプリケーションの場合は、Webサービス・クライアント・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

オーバーライド可能なクライアント・ポリシーの添付

ポリシー構成のオーバーライド機能を使用すると、ポリシー添付のWebサービス・クライアント構成情報をグローバルに設定するかわりに、またはそれに加えて、特定の構成情報をクライアントごとに指定できます。構成情報のターゲット指定により、管理する個別ポリシーの数を制限できます。

1つのポリシーを定義して、構成値のデフォルト値を指定できます。構成がほとんど変わらない複数のポリシーを作成するのではなく、同じ一般ポリシーを使用し、要件に一致するように特定の値をオーバーライドできます。

たとえば、oracle/wss_http_token_client_policyポリシーには、csf-key プロパティがあり、デフォルト値はbasic.credentialsです。この値は、ユーザー名/パスワードにマッピングされているキーを表しています。このポリシーを複数のWebサービス・クライアントに添付するときに同じキー値を常に使用する可能性があります。この場合、oracle/wss_http_token_client_policyポリシーの「構成」ページでキー値を指定して、すべてのインスタンスに適用できます。

ただし、クライアントごとにキーの値を上書きすることもできます。上書きできるプロパティを含むクライアント・ポリシーに添付した後、ポリシーを選択して、図8-8に示すように、「OWSMポリシー」ページの「セキュリティ構成の詳細」セクションのプロパティの値を指定します。

図8-7 クライアント構成プロパティのオーバーライド

図8-8の説明が続きます
「図8-8 クライアント構成プロパティのオーバーライド」の説明

Webサービス・クライアント・ポリシーでは、次の表に定義されているプロパティのみをオーバーライドできます。

表8-1 Webサービス・クライアント・ポリシーのオーバーライド可能なプロパティ

プロパティ 注意

attesting.mapping.attribute

オプションで、設定は任意です。

caller.principal.name

ktpassコマンドを使用して生成され、Kerberosトークンを生成するためのユーザー名にマッピングされるクライアントのプリンシパル名。<username>@<REALM NAME>の形式を使用します。

注意: J2EEアプリケーションのクライアント・アイデンティティを伝搬するためには、keytab.locationおよびcaller.principal.nameが必要です。

csf-key

ポリシーの「構成」ページで設定するか、オーバーライドする必要があります。

keystore.enc.csf.key

オプションで、設定は任意です。

注意: keystore.enc.csf.keyプロパティは、クライアントの証明書をreplyToヘッダーに付けます。

WSS11ポリシーでは、非同期クライアントのみでkeystore.enc.csf.keyを使用します。WSS10ポリシーでは、非同期クライアントおよび同期クライアントの両方でkeystore.enc.csf.keyを使用します。

keystore.recipient.alias

「構成」ページで設定するか、オーバーライドできます。「サービス・アイデンティティ証明拡張の使用」の説明のとおり、サービス・アイデンティティ証明拡張の使用機能が優先されます。証明書がWSDLでパブリッシュされた場合、クライアントがオーバーライドしたプロパティ値は無視されます。

keystore.sig.csf.key

オプションで、設定は任意です。

keytab.location

クライアントのキータブ・ファイルの場所。

注意: J2EEアプリケーションのクライアント・アイデンティティを伝搬するためには、keytab.locationおよびcaller.principal.nameが必要です。

on.behalf.of

オプションで、設定は任意です。sts_trust_config_client_policyがクライアントWebサービスに添付された場合にのみ使用します。

saml.assertion.filename

オプションで、設定は任意です。

saml.audience.uri

オプションで、設定は任意です。

saml.enveloped.signature.required

オプションで、設定は任意です。デフォルト値はtrueです。

saml.issuer.name

オプションで、設定は任意です。

service.principal.name

ポリシーの「構成」ページで設定するか、オーバーライドする必要があります。

保護の必要のあるWebサービスのプリンシパル名。<host>/<machine name>@<REALM NAME>という形式を使用します。たとえば、HTTP/mymachine@MYREALM.COMです。

subject.precedence

オプションで、設定は任意です。

注意: wss11_saml_token_identity_switch_with_message_protection_client_policyポリシーでは、subject.precedenceが必須であり、認証されたサブジェクトのかわりにクライアント固有のユーザー名を使用できるようにするには、falseに設定します。その他すべてのSAMLポリシーでは、subject.precedencetrueに設定されます。これはオーバーライドできます。

Oracle WSMが外部から提供されるアイデンティティを受け入れる元のアプリケーションにWSIdentityPermission権限がある必要があります。これは、統制外のアプリケーションがOracle WSMにアイデンティティを提供できないようにするためです。

subject.precedenceの使用方法の詳細は、「アイデンティティ切替えのためのSAML Webサービス・クライアントの構成」を参照してください。特に、「javax.xml.ws.security.auth.usernameプロパティの設定」「WSIdentityPermission権限の設定」を行う必要があります。

sts.auth.on.behalf.of.csf.key

オプションで、設定は任意です。sts_trust_config_client_policyがクライアントWebサービスに添付された場合にのみ使用します。

sts.auth.user.csf.key

STS構成ポリシーに基づいて、sts.auth.user.csf.keyまたはsts.auth.x509.csf.keyの一方または両方を設定する必要があります。sts_trust_config_client_policyをクライアントWebサービスに添付する場合にのみ使用します。

sts.auth.x509.csf.key

STS構成ポリシーに基づいて、sts.auth.user.csf.keyまたはsts.auth.x509.csf.keyの一方または両方を設定する必要があります。sts_trust_config_client_policyをクライアントWebサービスに添付する場合にのみ使用します。

sts.keystore.recipient.alias

ポリシーの 「構成」ページで設定するか、オーバーライドする必要があります。sts_trust_config_client_policyがクライアントWebサービスに添付された場合にのみ使用します。

user.attributes

オプションで、設定は任意です。

user.roles.include

オプションで、設定は任意です。


構成プロパティのクリア

オーバーライドした構成プロパティをクリアするには、空の文字列を設定します。

クリアする前に、他のポリシーで同じプロパティを使用している可能性がないかを確認します。プロパティはクライアント固有ですが、同じプロパティを使用する同一クライアントに複数のポリシーが添付されている場合があります。

オーバーライド可能なWebサービス・ポリシーの添付


注意:

この項で説明する手順は、Oracle Infrastructure Webサービスにのみ適用されます。

事前定義済またはカスタムのWebサービス・ポリシーでサーバー側の構成プロパティの値を指定して、Webサービスにポリシーを添付するたびにその値を使用するか、または添付ごとのベースでその値をオーバーライドできます。

たとえば、構成プロパティとしてIPアドレスを指定し、そのIPアドレスをWebサービスから検証します。

サーバー側の構成プロパティ値のスコープは、指定されたポリシーに限定されます。つまり、サーバー側の構成プロパティの名前が同じ(たとえばP1)2つのポリシーを、同じWebサービス・エンドポイントに添付し、その2つのP1プロパティに異なる値を指定することができます。

オーバーライドできるサーバー側のプロパティには、事前定義済ポリシーに含まれるプロパティとユーザー定義ポリシーに含まれるプロパティの2つのタイプがあります。

メッセージ保護ポリシーのサーバー側オーバーライド・プロパティの構成

Oracle WSMのこのリリースには、表8-2に示す、メッセージ保護ポリシーのサーバー側オーバーライド・プロパティが含まれています。

これらのプロパティを設定(またはオーバーライド)すると、「メッセージ保護に関するキーストアの設定」で説明するように、添付されたWebサービスで、メッセージ保護に関するキーストアの設定の一部として構成されたキーストア・パスワードのかわりに新しい値が使用されます

これらのプロパティを設定せずにデフォルトの空白のままにすると、「メッセージ保護に関するキーストアの設定」で説明するように、メッセージ保護に関するキーストアの設定の一部として構成された値が使用されます。

表8-2 メッセージ保護ポリシーのサーバー側の構成プロパティ

プロパティ名 デフォルト値 説明

keystore.sig.csf.key

空白

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。

このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

(WSS10メッセージ保護ポリシーにのみ適用可能)

keystore.enc.csf.key

空白

暗号化キー・パスワードをキーストアに格納するために使用する別名とパスワード。

このプロパティにより、ドメイン・レベルのかわりに添付レベルで暗号化キーを指定できます。

(WSS11メッセージ保護同期ポリシーにのみ適用可能)

saml.enveloped.signature.required

True

Bearerトークンを署名しないようにするには(クライアント・ポリシーおよびサービス・ポリシーの両方で)falseに設定します。

デフォルト(true)では、bearerはドメイン署名鍵を使用して署名されます。これは、Bearerクライアント・ポリシーのkeystore.sig.csf.keyプロパティを使用してオーバーライドできます。


構成プロパティのデフォルト値の設定

デフォルトでは、keystore.sig.csf.keyおよびkeystore.enc.csf.keyプロパティは空白です。値を設定すると、ポリシーを添付するWebサービスでその値を使用したり、ポリシーを添付するときにその値をオーバーライドしたりできます。

ポリシーの構成プロパティの値を設定する手順

  1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

  2. 「Webサービス・ポリシー」ページで、「ポリシー」表からメッセージ保護ポリシーを選択して、「編集」をクリックします。

  3. 「ポリシーの編集」ページで、「構成」タブをクリックします。

  4. 構成プロパティを選択し、「編集」をクリックして、キーストア内のキーに基づいてkeystore.sig.csf.keyおよびkeystore.enc.csf.keyプロパティを変更します。図8-9を参照してください。

    図8-9 サーバー側の構成プロパティ

    図8-9の説明が続きます
    「図8-9 サーバー側の構成プロパティ」の説明

  5. 変更内容を検証します。

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

認可ポリシーのサーバー側オーバーライド・プロパティの構成

Oracle WSMのこのリリースには、表8-3で示す、oracle/binding_permission_authorization_policyポリシーのサーバー側オーバーライド・プロパティが含まれています。これらのプロパティを使用して、異なるアクションとリソースを設定できます。

これらのプロパティを設定(またはオーバーライド)すると、「認証権限の決定方法」で説明するように、添付されたWebサービスで、構成されたアクションとリソースのかわりに新しい値が使用されます。

表8-3 認可ポリシーのサーバー側の構成プロパティ

プロパティ名 デフォルト値 説明

action

*


このポリシーを実行する操作を指定します。

resource

*


Webサービス名(Webサービスの名前空間 + サービス名)を指定します。


構成プロパティのデフォルト値の設定

デフォルトでは、actionおよびresourceプロパティの値は*です。別の値を設定すると、ポリシーを添付するWebサービスでその値を使用したり、ポリシーを添付するときにその値をオーバーライドしたりできます。

構成プロパティの値を設定する手順

  1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

  2. 「Webサービス・ポリシー」ページで、「ポリシー」表からoracle/binding_permission_authorization_policyポリシーを選択して「編集」をクリックします。

  3. 「ポリシーの編集」ページで、「構成」タブをクリックします。

  4. 構成プロパティを選択し、「編集」をクリックして、使用環境に基づいてactionまたはresourceプロパティを変更します。

  5. 変更内容を検証します。

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

ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成


注意:

この項で説明する手順は、Oracle Infrastructure Webサービスにのみ適用されます。

新規構成プロパティの追加機能を使用して、使用環境で意味を持つ1つ以上の構成プロパティを追加できます。特に、1つ以上のユーザー定義のサーバー側またはクライアント側プロパティを、事前定義済ポリシーまたはカスタム・ポリシーに追加できます。それから、ユーザー定義のプロパティをそのまま使用するか、ポリシーに添付するときにそれをオーバーライドできます。

どちらの場合でも、ポリシーをWebサービスまたはクライアントに添付するときに、プロパティをオーバーライドする前にそのプロパティがポリシーに存在している必要があります。つまり、ポリシーにすでに存在するプロパティのみオーバーライドできます。

そのため、通常はユーザーが提供するプロパティをデフォルト値を含めて事前定義済またはカスタムのポリシーに追加し、それから添付単位でそれをオーバーライドします。

required、optional、またはconstantタイプのユーザー定義のプロパティを追加できますが、constantタイプのプロパティはオーバーライドできません。

ユーザー定義の構成プロパティのスコープ

事前定義済の構成プロパティと同様に、ポリシーのユーザー定義の構成プロパティのスコープは、クライアントとWebサービスで異なります。次の内容を考慮します。

  • クライアント側の構成プロパティ値のスコープは、そのクライアントです。同一クライアントに添付される複数のポリシーが同じプロパティを使用できます。

  • サーバー側の構成プロパティ値のスコープは、指定されたポリシーに限定されます。つまり、サーバー側の構成プロパティの名前が同じ(たとえばP1)2つのポリシーを、同じWebサービス・エンドポイントに添付し、その2つのP1プロパティに異なる値を指定することができます。

ユーザー定義の構成プロパティの追加

ユーザー定義の構成プロパティを追加するには、事前定義済またはカスタムのポリシーを編集します。

ユーザー定義の構成プロパティを追加する手順

  1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

  2. 「Webサービス・ポリシー」ページで、「ポリシー」表からプロパティを追加するポリシーを選択して、「編集」をクリックします。

  3. 「ポリシーの編集」ページで、「構成」タブをクリックします。

  4. 「追加」をクリックします。図8-10に示すように、新規構成プロパティの追加ダイアログ・ボックスが表示されます。

    図8-10 新規構成プロパティの追加

    図8-10の説明が続きます
    「図8-10 新規構成プロパティの追加」の説明

  5. 次の情報を入力して、「OK」をクリックします。

    • 「プロパティ・セット」は、このプロパティを含めるグループ(セット)の名前です。これは必須フィールドです。

    • 「名前」は、プロパティの名前です。名前はこのポリシーに対して一意である必要があります。これは必須フィールドです。

    • 「説明」は、プロパティの説明です。

    • 「値」は、プロパティの現在の文字列値です。これは必須フィールドです。

    • 「デフォルト」は、プロパティが他で設定されていない場合のプロパティのデフォルトの文字列値です。

    • 「コンテンツ・タイプ」は、Constant、Optional、Requiredのいずれかです。タイプがOptionalとRequiredのプロパティのみオーバーライドできます。

  6. ポリシーを検証します。

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

ユーザー定義の構成プロパティの編集

ユーザー定義の構成プロパティを変更する必要がある場合は、これを編集できます。

ユーザー定義の構成プロパティを編集する手順

  1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

  2. 「Webサービス・ポリシー」ページで、「ポリシー」表からプロパティを編集するポリシーを選択して、「編集」をクリックします。

  3. 「ポリシーの編集」ページで、「構成」タブをクリックします。

  4. 編集するユーザー定義の構成プロパティを選択して、「編集」をクリックします。

  5. 必要な変更を行います。

  6. ポリシーを検証します。

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

ユーザー定義の構成プロパティの削除

ユーザー定義の構成プロパティが必要なくなった場合は、これを削除できます。

ユーザー定義の構成プロパティを削除する手順

  1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

  2. 「Webサービス・ポリシー」ページで、「ポリシー」表からプロパティを削除するポリシーを選択して、「編集」をクリックします。

  3. 「ポリシーの編集」ページで、「構成」タブをクリックします。

  4. 削除するユーザー定義の構成プロパティを選択して、「削除」をクリックします。

  5. ポリシーを検証します。

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

ユーザー定義ポリシーの添付時の構成プロパティのオーバーライド

必要に応じて「単一のサブジェクトへのポリシーの添付」「複数のサブジェクトへのポリシーの添付(一括添付)」、または「Webサービス・クライアントへのポリシーの添付」の説明に従って、ポリシーを添付します。

ユーザー定義構成プロパティを含むポリシーを添付する場合は、次のように既存の値をオーバーライドできます。

サービス・ポリシーの添付時の構成プロパティのオーバーライド

サーバー側でオーバーライド可能な構成プロパティを含むポリシーを添付したら、既存の値をオーバーライドできます。WLSTでは、「WLSTを使用してポリシーの添付時の構成プロパティのオーバーライド」の説明のようにsetWebServicePolicyOverrideコマンドを使用して実行します。

Fusion Middleware Controlを使用して構成プロパティをオーバーライドするには、次の手順を実行します。

  1. オーバーライド可能な構成プロパティを含む添付されたポリシーを選択します。

    図8-11に示すように、ポリシー構成のオーバーライドボタンが表示されます。


    注意:

    選択されたポリシーにオーバーライド可能な構成プロパティが含まれる場合、ポリシー構成のオーバーライドボタンが表示されます。

    図8-11 ポリシー構成のオーバーライドボタン

    図8-11の説明が続きます
    「図8-11 ポリシー構成のオーバーライドボタン」の説明

  2. ポリシー構成のオーバーライドを選択します。

    図8-12に示すように、「セキュリティ構成の詳細」ウィンドウが表示されます。この図に、oracle/wss10_message_protection_service_policyのオーバーライド可能なプロパティを示します。

    図8-12 ポリシー構成プロパティのオーバーライド

    図8-12の説明が続きます
    「図8-12 ポリシー構成プロパティのオーバーライド」の説明

  3. プロパティの「値」フィールドのオーバーライド値を入力し、「適用」をクリックします。

    プロパティは添付単位でオーバーライドされます。

たとえば、oracle/wss10_message_protection_service_policyのkeystore.sig.csf.keyプロパティの値を変更しておらず、まだ空白のままであると仮定します。WebサービスAにoracle/wss10_message_protection_service_policyを添付し、keystore.sig.csf.keyプロパティに「sigkey」をオーバーライドした場合、keystore.sig.csf.keyプロパティが値「sigkey」を持つのは、WebサービスAに添付されたoracle/wss10_message_protection_service_policyポリシーだけです。

他のすべてのポリシーでは、「メッセージ保護に関するキーストアの設定」で説明するように、keystore.sig.csf.keyは、メッセージ保護に関するキーストアの設定の一部として構成された値になります。

WLSTを使用したポリシーの添付時の構成プロパティのオーバーライド


注意:

この手順は、Oracle Infrastructure Webサービスにのみ適用されます。

オーバーライド可能なプロパティを持つポリシーを添付する場合は、setWebServicePolicyOverrideコマンドを使用して既存の値をオーバーライドできます。これを実行するには、次の手順に従ってください。

  1. 「WLSTを使用したWebサービスへのポリシーの添付」の説明に従って、サービスにポリシーを添付します。

  2. setWebServicePolicyOverrideコマンドを使用して、ポリシー・プロパティをオーバーライドします。

    setWebServicePolicyOverride(application,moduleOrCompName,moduleType,
    serviceName,portName,policyURI,properties)
    

    表8-2および表8-3にリストされているプロパティと、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」に記載されているユーザー定義のプロパティをオーバーライドできます。

    たとえば、oracle/wss_username_token_service_policyポリシーのROLEプロパティをオーバーライドするには、次のコマンドを使用します。

    wls:/wls-domain/serverConfig>setWebServicePolicyOverride
    ('/wls_domain/AdminServer/Jaxwsejb30ws','jaxwsejb',
    'web','WsdlConcreteService','WsdlConcretePort',
    "oracle/wss_username_token_service_policy",[("ROLE","ADMIN")])   
    

    注意:

    指定したポリシーがポートに添付されていない場合は、エラーメッセージが表示されるか例外が返されます。

    properties引数をNoneに設定した場合は、ポリシーのすべてのオーバーライドが削除されます。


  3. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。


    注意:

    アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。