ヘッダーをスキップ
Oracle® Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド
11g リリース1 (11.1.1.5.0)
B55916-05
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

6 SOAコンポジット・アプリケーションの保護

この章では、SOAコンポジット・アプリケーション固有のセキュリティ手順について説明します。

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

6.1 SOAコンポジット・アプリケーションの保護の概要

この章では、SOAコンポジット・アプリケーション固有のセキュリティ手順について説明します。ほとんどのSOAコンポジット・アプリケーションのセキュリティ手順は、SOA固有の手順を必要とせず、表6-1に示すドキュメントに従って実行できます。

表6-1 セキュリティに関するドキュメント

セキュリティ情報 参照ガイド

Oracleシングル・サインオン(OSSO)構成を含むOracle Fusion Middlewareの保護

『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』


Webサービスの保護および管理

『Oracle Fusion Middleware Webサービスのためのセキュリティおよび管理者ガイド』


Oracle WebLogic Serverのセキュリティの理解

『Oracle Fusion Middleware Oracle WebLogic Serverセキュリティについて』


Oracle WebLogic Serverの本番環境の保護

『Oracle Fusion Middleware Oracle WebLogic Server本番環境の保護』


Oracle WebLogic Serverの保護

『Oracle Fusion Middleware Oracle WebLogic Serverの保護』


Oracle WebLogic Serverで使用する新規セキュリティ・プロバイダの開発

『Oracle Fusion Middleware Oracle WebLogic Serverセキュリティ・プロバイダの開発』


Oracle WebLogic ServerのWebサービスのセキュリティ

『Oracle Fusion Middleware Oracle WebLogic Server WebLogic Webサービスの保護』


Oracle WebLogic Serverのセキュリティ・プログラミング

『Oracle Fusion Middleware Oracle WebLogic Serverセキュリティのプログラミング』



6.2 Oracle BPM Worklist用のOracle HTTP Serverの構成

Oracle BPM WorklistがOracle HTTP Server経由で動作するように、Oracle HTTP Serverのmod_wl_ohs.confファイルに/integrationの場所を追加する必要があります。

  <Location /integration>
       SetHandler weblogic-handler
   #   PathTrim /weblogic
       ErrorPage  http:/WEBLOGIC_HOME:WEBLOGIC_PORT/
  </Location>

6.3 SOAインフラストラクチャのSAMLメッセージ保護付きポリシー構成の設定

この項では、WebLogic Scripting Tool (WLST)を使用して、SOAインフラストラクチャのメッセージ保護付きSecurity Assertion Markup Language (SAML)ポリシー構成を設定する方法を説明します。この項の例では、タスク問合せサービスの構成について説明します。ただし、これらの説明はSAMLトークン・ポートをサポートするすべてのヒューマン・ワークフロー・サービスに関連します。

別のサービスのポリシーを変更する場合は、同じWLSTコマンドをそのサービスのSAMLトークン・ポートに適用する必要があります。

SAMLメッセージ保護付きポリシー構成を設定する手順は、次のとおりです。

  1. WLSTを使用してSOAドメイン(たとえば、base_domain)にログインします。

  2. 既存のwss10_saml_token_service_policyというサービス・ポリシーをデタッチします。

    wls:/base_domain/domainRuntime> detachWebServicePolicy('/base_domain/soa
    _server1/soa-infra','integration/services/TaskQueryService','web',
    'WorkflowProvider','TaskQueryServicePortSAML','oracle/
    wss10_saml_token_service_policy')
    
  3. アプリケーションを再起動して、ポリシーまたは構成の変更をアクティブ化します。

  4. 新しいポリシーをアタッチします。この場合、ポリシーにはoracle/wss10_saml_token_with_message_protection_service_policyという名前が付けられます。

    wls:/base_domain/domainRuntime> attachWebServicePolicy('/base_domain/soa
    _server1/soa-infra','integration/services/TaskQueryService',
    'web','WorkflowProvider','TaskQueryServicePortSAML','ora
    cle/wss10_saml_token_with_message_protection_service_policy')
    
  5. アプリケーションを再起動して、ポリシーまたは構成の変更をアクティブ化します。

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

    wls:/base_domain/domainRuntime> listWebServicePolicies('/base_domain/soa
    _server1/soa-infra','integration/services/TaskQueryService',
    'web','WorkflowProvider','TaskQueryServicePortSAML')
        TaskQueryServicePortSAML :
        security :
    oracle/wss10_saml_token_with_message_protection_service_policy,
        enabled=true 
    Attached policy or policies are valid; endpoint is secure.
    
  7. キーストアを作成して、orakeyという別名を追加し、Oracle Web Service Manager (OWSM)構成を実行して、SAMLメッセージ保護付きポリシーをアクティブ化します。例:

    keytool -genkeypair
            -keystore  domain_home/config/fmwconfig/default-keystore.jks
            -keyalg RSA
            -dname "cn=consumer,dc=example,dc=com"
            -alias clientalias
            -keypass  password 
            -storepass password
            -validity 3600
    
    keytool -exportcert 
            -keystore domain_home/config/fmwconfig/default-keystore.jks
            -v 
            -alias clientalias
            -storepass password 
            -rfc 
            -file domain_home/config/fmwconfig/certificate.cer
    
    keytool -importcert 
            -keystore domain_home/config/fmwconfig/default-keystore.jks
            -alias orakey
            -file domain_home/config/fmwconfig/certificate.cer
            -storepass password
             createCred(map="oracle.wsm.security", key="keystore-csf-key",
             user="owsm", password="welcome1", desc="Keystore key")
             createCred(map="oracle.wsm.security", key="enc-csf-key",
             user="clientalias", password="welcome1", desc="Encryption key")
             createCred(map="oracle.wsm.security", key="sign-csf-key",
             user="clientalias", password="welcome1", desc="Signing key") 
    
  8. サーバーを再起動します。

6.4 ユーザーの自動認証

この項では、様々な環境でOracle BPM WorklistおよびOracle Business Process Managementのユーザーを認証する方法について説明します。

6.4.1 SAML SSO環境でのOracle BPM Worklistユーザーの自動認証

SAML SSO環境で最初のOracle BPM Worklistから2番目のOracle BPM Worklistにアクセスするとき自動認証されるようにするには、次の手順を実行する必要があります。この手順を実行しないと、2番目のOracle BPM Worklistにアクセスするときに再度ログインするように求められます。この環境では、最初のOracle BPM WorklistはSAML IDプロバイダとして構成され、アクセスする2番目のOracle BPM WorklistはSAMLサービス・プロバイダとして構成されます。

SAML SSO環境でOracle BPM Worklistユーザーを自動認証する手順は、次のとおりです。

  1. /integration/worklistapp/*worklistappのリダイレクトURLとして、SAMLサービス・プロバイダ・サイトのSAML2IdentityAsserter構成に追加します。

    1. Oracle WebLogic Server管理コンソールで、「セキュリティ・レルム」を選択します。

    2. サービス・プロバイダのレルムをクリックします。

    3. 「プロバイダ」タブを選択し、「認証」サブタブを選択します。

    4. プロバイダ・リストから、SAML 2.0 IDアサーション・プロバイダと説明されているプロバイダを選択します。

      SAML IDアサーション・プロバイダ構成が見つからない場合は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』の説明に従ってください。

    5. 「管理」タブを選択します。

      「管理」タブには、IDプロバイダ・パートナのリストが表示されます。これらは、このSAML IDサービス・プロバイダ・サイトのSAML IDプロバイダ・パートナとして構成されているホストです。この構成手順は、ワークリスト・アプリケーションがホスト管理されるIDサービス・プロバイダ・サイトで実行されることに注意してください。

    6. ユーザーが最初のログインを実行するIDプロバイダ・サイトを選択します。

    7. 「リダイレクトURI」フィールドが表示されるまでページを下にスクロールします。

    8. /integration/worklistapp/*をリストに追加します。

    この手順を実行した後、通常の/integration/worklistappというURLを使用してSAML IDプロバイダ・サイトでOracle BPM Worklistにログインできます。必要に応じて、SAMLサービス・プロバイダ・サイトでURL /integration/worklistapp/ssologinに移動できます。ここで、Oracle BPM Worklistにアクセスして自動認証されます。

    SAML2IdentityAsserter、およびWebブラウザとHTTPクライアントを使用したSSOの構成については、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』を参照してください。

6.4.2 Windowsのネイティブ認証環境でのOracle BPM Worklistユーザーの自動認証

Kerberosを使用したWindowsのネイティブ認証をOracle BPM Worklistで使用するには、保護されたURL /integration/worklistapp/ssologinを使用する必要があります。たとえば、Windowsのネイティブ認証を構成した後は、次のようにOracle BPM Worklistにアクセスします。

http://host_name.domain_name:8001/integration/worklistapp/ssologin 

Microsoftクライアントを使用したSSOの構成については、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』を参照してください。

6.4.3 Windowsのネイティブ認証環境でのOracle Business Process Management Process Composerユーザーの自動認証

Kerberosを使用したWindowsのネイティブ認証をOracle Business Process Management Process Composerで使用するには、保護されたURL bpm/composer/ssologinを使用する必要があります。たとえば、Windowsのネイティブ認証を構成した後は、次のようにProcess Composerにアクセスします。

http://host_name.domain_name:8001/bpm/composer/ssologin 

Microsoftクライアントを使用したSSOの構成については、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』を参照してください。

6.5 認証プロバイダの表示

この項では、最初の認証プロバイダを設定する方法を説明します。

6.5.1 Oracle Internet Directoryを最初の認証プロバイダとして表示

Oracle BPM Worklistおよびワークフロー・サービスでは、Java Platform Security(JPS)と、ユーザーおよびロールAPIが使用されます。このため、Oracle Internet Directoryでワークフローが使用されるときは、Oracle Internet Directory認証者が最初のプロバイダとして表示される必要があります。Oracle Internet Directoryが最初に表示されない場合(たとえば、DefaultAuthenticatorの下に表示される場合)、ログイン認証は失敗します。

認証プロバイダの順序の変更方法については、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』を参照してください。

6.5.2 デフォルトの認証プロバイダを使用したWebベースのアプリケーションへのアクセス

Oracle Internet Directoryの認証を使用している場合、Webベースのアプリケーションへのログインが失敗することがあります。これは、Oracle WebLogic Serverの構成が、デフォルトの認証の前にOracle Internet Directoryの認証を使用するように設定されている場合に起こります。

この場合、次のエラーが発生することがあります。

"@ User "weblogic" is not found in configuration "jazn.com" Check if the user
 exists in the repository specified by the configurations. Check the error stack
 and fix the cause of the error. Contact oracle support if error is not fixable."

セキュリティ・プロバイダの順序は次のようにしてください。

  1. デフォルトの認証

  2. Oracle Internet Directory/LDAP認証

6.6 SSLの構成

この項では、Oracle SOA SuiteおよびOracle Business Process Managementの環境でSSLを構成する方法について説明します。

6.6.1 SSLで管理対象サーバーを全部構成する、または構成しないための推奨事項

SSL (SOA、BAMなど)で管理対象サーバーを全部構成するか、構成しないかのいずれかをベスト・プラクティスとしてお薦めします。一部の管理対象サーバーをSSLで構成し、他の管理対象サーバーを構成しないと、Oracle BPM WorklistおよびOracle Web Services Manager (OWSM)では好ましくない結果になる可能性があります。たとえば、SSL構成された管理対象サーバー(bam_server)がある場合、SSL構成されていないサーバーはOWSMでは使用されません。SSL構成されたサーバーが停止した場合、OWSMは停止状態になり、Oracle BPM Worklistが停止状態になる原因となります。

6.6.2 Oracle BPM Worklistでの非SSLからSSL構成への切替

Oracle BPM Worklistで非SSLからSSL構成に切り替えるには、Oracle WebLogic Server管理コンソールで「フロントエンド・ホスト」および「フロントエンドHTTPSポート」フィールドを設定する必要があります。設定しないと、To-Doタスクを作成するときに例外エラーが発生します。

Oracle BPM Worklistで非SSLからSSL構成に切り替える手順は、次のとおりです。

  1. Oracle WebLogic Server管理コンソールにログインします。

  2. 「環境」セクションで、「サーバー」を選択します。

  3. 管理対象サーバーの名前(たとえば、soa_server1)を選択します。

  4. 「プロトコル」を選択し、次に「HTTP」を選択します。

  5. 「フロントエンド・ホスト」フィールドに、Oracle BPM Worklistがあるホスト名を入力します。

  6. 「フロントエンドHTTPSポート」フィールドに、SSLリスナー・ポートを入力します。

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

6.6.3 SOAコンポジット・アプリケーションの双方向SSL通信の構成

Oracle SOA Suiteでは、双方向SSL通信を構成するために、Oracle WebLogic ServerおよびSun社のSecure Socket Layer(SSL)スタックの両方を使用します。

  • インバウンドのWebサービス・バインディングの場合、Oracle SOA SuiteではOracle WebLogic Serverインフラストラクチャを使用し、SSL用にOracle WebLogic Serverライブラリを使用します。

  • アウトバウンドのWebサービス・バインディングの場合、Oracle SOA SuiteではJRF HttpClientを使用し、SSL用にSun JDKライブラリを使用します。

このように違いがあるため、次のJVMオプションを使用してOracle WebLogic Serverを起動します。

SOAコンポジット・アプリケーションの双方向SSL通信を構成する手順は、次のとおりです。

  1. 次のファイルを開きます。

    • UNIXオペレーティング・システムでは、$MIDDLEWARE_HOME/user_projects/domains/domain_name/bin/setDomainEnv.shを開きます。

    • Windowsオペレーティング・システムでは、MIDDLEWARE_HOME\user_projects\domains\domain_name\bin\setDomainEnv.batを開きます。

  2. サーバーが一方向SSL(サーバー認可のみ)に対して有効な場合は、次の行をJAVA_OPTIONSセクションに追加します。

    -Djavax.net.ssl.trustStore=your_truststore_location
    

    双方向SSLの場合は、キーストア情報(場所とパスワード)は不要です。

また、次の手順を実行してSOAコンポジット・アプリケーションの双方向SSLが別のSOAコンポジット・アプリケーションまたは別の非SOAアプリケーションを起動できるようにします。


注意:

サーバーとクライアントの両方が相互認証でSSL用に構成されていることが前提となります。

SOAコンポジット・アプリケーションが別のアプリケーションを呼び出すために双方向SSLを有効化する手順は、次のとおりです。

  1. クライアント側で、キーストアの場所を指定します。

    1. 「SOAインフラストラクチャ」メニューから、「SOA管理」「共有プロパティ」の順に選択します。

    2. ページの下部で、「詳細SOAインフラ拡張構成プロパティ」をクリックします。

    3. 「KeystoreLocation」をクリックします。

    4. 「値」列に、キーストアの場所を入力します。

    5. 「適用」をクリックします。

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

  2. Oracle JDeveloperでの設計時に、composite.xmlファイル内の参照セクションをoracle.soa.two.way.ssl.enabledプロパティで更新します。

    <reference name="Service1" 
       ui:wsdlLocation=". . ."> 
       <interface.wsdl interface=". . ."/> 
         <binding.ws port=". . ."> 
          <property name="oracle.soa.two.way.ssl.enabled">true</property> 
      </binding.ws> 
     </reference> 
    
  3. Oracle Enterprise Manager Fusion Middleware Controlで、「WebLogicドメイン」「domain_name」の順に選択します。

  4. 「domain_name」を右クリックし、「セキュリティ」「資格証明」の順に選択します。

  5. 「マップの作成」をクリックします。

  6. 「マップ名」フィールドに名前(SOAなど)を入力し、「OK」をクリックします。

  7. 「キーの作成」をクリックします。

  8. 次の詳細を入力します。

    フィールド 説明
    マップの選択 ステップ6で作成したマップ(この場合はSOA)を選択します。
    キー キー名を入力します(KeystorePasswordがデフォルトです)。
    タイプ 「パスワード」を選択します。
    ユーザー名 ユーザー名を入力します(KeystorePasswordがデフォルトです)。
    パスワード キーストアに対して作成したパスワードを入力します。


    注意:

    SSLをOracle WebLogic Serverで設定する場合は、キーの別名が必要です。別名の値として「mykey」を入力する必要があります。この値は必須です。

  9. Oracle Enterprise Manager Fusion Middleware Controlでキーストアの場所を設定します。方法については、ステップ1を参照してください。

  10. httpsおよびsslportを使用してSOAコンポジット・アプリケーションを起動するようにcomposite.xml構文を変更します。たとえば、次の太字で示されている構文を変更します。

    <?xml version="1.0" encoding="UTF-8" ?> 
    <!-- Generated by Oracle SOA Modeler version 1.0 at [4/1/09 11:01 PM]. --> 
    <composite name="InvokeEchoBPELSync" 
    revision="1.0" 
    label="2009-04-01_23-01-53_994" 
    mode="active" 
    state="on" 
    xmlns="http://xmlns.oracle.com/sca/1.0" 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" 
    xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy" 
    xmlns:ui="http://xmlns.oracle.com/soa/designer/"> 
    <import 
    namespace="http://xmlns.oracle.com/CustomApps/InvokeEchoBPELSync/BPELProcess1"
      location="BPELProcess1.wsdl" importType="wsdl"/>
    <import namespace="http://xmlns.oracle.com/CustomApps/EchoBPELSync/
    BPELProcess1"location="http://hostname:port/soa-infra/services/default/EchoBPEL
    Sync/BPELProcess1.wsdl"
    importType="wsdl"/>
    

    httpsおよびsslportを使用するように変更します。

    location="https://hostname:sslport/soa-infra/services/default/EchoBPELSync
    /BPELProcess1.wsdl"
    

6.6.4 Oracle JDeveloperの一方向SSL環境での参照の呼出し

Webサービスを一方向SSL環境でSOAコンポジット・アプリケーションからの外部参照として呼び出す場合は、サーバーの証明書名(CN)とホスト名が完全に一致することを確認します。これにより、正しいSSLハンドシェイクが保証されます。

たとえば、Webサービスの名前がadfbcで、証明書のサーバー名がmyhost05の場合は、次のコードでSSLハンドシェイク例外が発生します。

  <import namespace="/adfbc1/common/" 
           
 location="https://myhost05.us.oracle.com:8002/CustomApps-adfbc1-context-root/Ap 
pModuleService?WSDL" 
          importType="wsdl"/> 
 <import namespace="/adfbc1/common/" location="Service1.wsdl" 
          importType="wsdl"/> 

importの順序を入れ替えると、SSLハンドシェイクに成功します。

<import namespace="/adfbc1/common/" location="Service1.wsdl" 
          importType="wsdl"/> 
<import namespace="/adfbc1/common/" 
           location="https://myhost05.us.oracle.com:8002/CustomApps-adfbc1-context-root/Ap 
pModuleService?WSDL" 
          importType="wsdl"/> 

この問題に関連して次の制限があります。

  • Oracle WebLogic Server管理コンソールにあるようなホスト名の検証を無視するオプションはOracle JDeveloperにありません。これは、Oracle JDeveloperで使用されているSSLキットが異なるためです。トラスト・ストアのみコマンドラインから構成できます。他のすべての証明書引数は渡されません。

  • WSDLファイルで、https://hostnameは前述のように証明書内の名前と一致する必要があります。ブラウザで行う場合と同じ手順は実行できません。たとえば、証明書のCNのホスト名がmyhost05.us.oracle.comの場合、ブラウザではmyhost05myhost05.us.oracle.comまたはIPアドレスを使用できます。Oracle JDeveloperでは、必ず証明書内の名前と同じ名前(myhost05.us.oracle.com)を使用する必要があります。

6.6.5 Oracle SOA SuiteおよびOracle HTTP ServerのSSL通信の構成

ここでは、Oracle SOA SuiteとOracle HTTP Server間でSSL通信を構成する手順について説明します。

6.6.5.1 Oracle HTTP ServerのSSL通信の構成

Oracle HTTP ServerのSSL通信を構成する手順は、次のとおりです。

  1. <Location /integration/services>場所ディレクティブを使用してmod_ssl.confを更新します。

    LoadModule weblogic_module   ${ORACLE_HOME}/ohs/modules/mod_wl_ohs.so
    
    <IfModule mod_weblogic.c>
          WebLogicHost host.domain.com
          WLLogFile <logdir>/ohs_ssl.log
          Debug ALL
          DebugConfigInfo ON
          SecureProxy ON
          MatchExpression *.jsp
          WlSSLWallet <OHS_
    HOME>/instances/instance1/config/OHS/ohs1/keystores/default
    </IfModule>
    
    <Location /soa-infra>
          WebLogicPort 8002
          SetHandler weblogic-handler
          ErrorPage http://host.domain.com:port/error.html
    </Location>
    
    <Location /b2bconsole>
          WebLogicPort 8002
          SetHandler weblogic-handler
          ErrorPage http://host.domain.com:port/error.html
    </Location>
    
    <Location /b2b> 
          WebLogicPort 8002 
          SetHandler weblogic-handler 
           ErrorPage http://host.domain.com:port/error.html 
    </Location> 
    
    <Location /integration/worklistapp>
          WebLogicPort 8002
          SetHandler weblogic-handler
          ErrorPage http://host.domain.com:port/error.html
    </Location>
    
    <Location /integration/services>
          WebLogicPort 8002
          SetHandler weblogic-handler
          ErrorPage http://host.domain.com:port/error.html
    </Location>
    
    <Location /DefaultToDoTaskFlow>
          WebLogicPort 8002
          SetHandler weblogic-handler
          ErrorPage http://host.domain.com:port/error.html
    </Location>
    
    <Location /OracleBAM>
          WebLogicPort 9002
          SetHandler weblogic-handler
          ErrorPage http://host.domain.com:port/error.html
    </Location>
    
    <Location /OracleBAMWS>
    >       WebLogicPort 9002
    >       SetHandler weblogic-handler
    >       ErrorPage  http://host.domain.com:port/error.html
    > </Location>
    
    <Location /sdpmessaging/userprefs-ui/>
          WebLogicPort 8002
          SetHandler weblogic-handler
          ErrorPage http://host.domain.com:port/error.html
    </Location>
    
  2. 第6.6.3項「SOAコンポジット・アプリケーションの双方向SSL通信の構成」の説明に従って、Oracle WebLogic Serverを起動します。

6.6.5.2 Oracle Client、Oracle HTTP ServerおよびOracle WebLogic Serverの証明書の構成

Oracle Client、Oracle HTTP ServerおよびOracle WebLogic Serverの証明書を構成する手順は、次のとおりです。

  1. Oracle HTTP Serverウォレットからユーザー証明書をエクスポートします。

    orapki wallet export -wallet . -cert cert.txt  -dn 'CN=\"Self-Signed
     Certificate for ohs1 \",OU=OAS,O=ORACLE,L=REDWOODSHORES,ST=CA,C=US'
    
  2. エクスポートした証明書をOracle WebLogic Serverトラスト・ストアに信頼できる証明書としてインポートします。

    keytool -file cert.txt -importcert -trustcacerts -keystore DemoTrust.jks
    
  3. Oracle WebLogic Serverトラスト・ストアから証明書をエクスポートします。

    keytool -keystore DemoTrust.jks -exportcert -alias wlscertgencab -rfc -file
    certgencab.crt
    
  4. エクスポートした証明書をOracle HTTP Serverウォレットに信頼できる証明書としてインポートします。

    orapki wallet add -wallet . -trusted_cert -cert certgencab.crt -auto_login_only
    
  5. Oracle HTTP Serverを再起動します。

  6. 第6.6.3項「SOAコンポジット・アプリケーションの双方向SSL通信の構成」の説明に従って、Oracle WebLogic Serverを再起動します。

6.6.6 SOAコンポジット・アプリケーション・インスタンスとOracle WebCache間のSSLの構成

Oracle WebCacheおよびOracle HTTP Server環境では、「Webサービスのテスト」ページでOracle WebCacheとの通信が必要になる場合があります。したがって、SOAコンポジット・アプリケーション・インスタンスとOracle WebCache間でSSLを構成する必要があります(つまり、ユーザー証明書をOracle WebCacheウォレットからエクスポートし、その証明書をOracle WebLogic Serverトラスト・ストアに信頼できる証明書としてインポートします)。

6.6.7 設計時の一方向SSLでのカスタム・トラスト・ストアの使用

keytoolorapkiなどのツールで作成したカスタム・トラスト・ストアを使用している場合にHTTPSを介してSOAコンポジット・アプリケーションを別のコンポジットから起動するには、Oracle JDeveloperで次の操作を実行します。

設計時に一方向SSLでカスタム・トラスト・ストアを使用する手順は、次のとおりです。

  1. 参照セクションでWSDLファイルをフェッチするには、「ツール」「プリファレンス」「HTTPアナライザ」「HTTPS設定」「クライアントの信頼する証明書キーストア」でトラスト・ストア情報を設定します。

  2. SSL対応サーバーへのデプロイメント時に、コマンドラインでJSSEプロパティを使用します。

    jdev -J-Djavax.net.ssl.trustStore=your_trusted_location
    

6.6.8 SSL対応の管理対象サーバーにデプロイ済の非同期プロセスの有効化による、HTTPを介した別の非同期プロセスの呼出し

次の環境を作成するとします。

  • 非同期BPELプロセスAが非同期BPELプロセスBを呼び出す

  • 非同期BPELプロセスAは一方向SSL対応の管理対象サーバーにデプロイされる

  • すべてのWSDL参照およびバインディングでプレーンHTTPを使用する

実行時に、WSDLはHTTPSを介して検索され、非同期BPELプロセスBからのコールバック・メッセージが失敗します。

この問題を解決するには、callbackServerURLプロパティをcomposite.xmlファイルの参照バインディング・レベルで渡す必要があります。これは、特定の参照呼出しのコールバックURLの値を示します。クライアント・コンポジットがSSL管理対象サーバーで実行されている場合、コールバックはデフォルトでSSLになります。

<reference name="Service1" 
ui:wsdlLocation="http://localhost:8000/soa-infra/services/default/AsyncSecondB 
PELMTOM/BPELProcess1.wsdl"> 
    <interface.wsdl
 interface="http://xmlns.oracle.com/Async/AsyncSecondBPELMTOM/BPELProcess1#wsdl 
.interface(BPELProcess1)" 
callbackInterface="http://xmlns.oracle.com/Async/AsyncSecondBPELMTOM/BPELProce
ss1#wsdl.interface(BPELProcess1Callback)"/> 
    <binding.ws 
port="http://xmlns.oracle.com/Async/AsyncSecondBPELMTOM/BPELProcess1#wsdl.endp 
oint(bpelprocess1_client_ep/BPELProcess1_pt)" 
                
location="http://localhost:8000/soa-infra/services/default/AsyncSecondBPELMTOM 
/bpelprocess1_client_ep?WSDL"> 
         <wsp:PolicyReference URI="oracle/wss_username_token_client_policy" 
                           orawsp:category="security" 
orawsp:status="enabled"/> 
      <wsp:PolicyReference URI="oracle/wsaddr_policy" 
                           orawsp:category="addressing" 
orawsp:status="enabled"/> 
. 
 <property name="callbackServerURL">http://localhost:8000/</property> 
. 
    </binding.ws> 
. 
  <callback> 
      <binding.ws 
port="http://xmlns.oracle.com/Async/AsyncSecondBPELMTOM/BPELProcess1#wsdl.endp 
oint(bpelprocess1_client_ep/BPELProcess1Callback_pt)"> 
            <wsp:PolicyReference 
URI="oracle/wss_username_token_service_policy" 
                           orawsp:category="security" 
orawsp:status="enabled"/> 
 </binding.ws> 
    </callback> 
    
. 
  </reference> 

6.7 ヒューマン・ワークフローWSDLファイルに対するセキュリティの構成

ヒューマン・ワークフロー・サービスのWSDLファイルを外部コンシューマに公開しない場合は、各サービスのWSDL公開フラグをfalseに設定します。

<expose-wsdl>false</expose-wsdl>

詳細は、『Oracle Fusion Middleware Developer's Guide for Oracle Web Services』を参照してください。