プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle WebCenter Portalの管理
12c (12.2.1.1)
E77296-01
目次へ移動
目次

前
次

31 ポートレット・プロデューサのセキュリティの構成

この章では、WSRPおよびJPDKポートレット・プロデューサのセキュリティを処理するようにWebCenter Portalを構成する方法を説明します。

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

権限

この章のタスクを実行するには、Oracle WebLogic Server管理コンソールでWebLogic ServerのAdminロールが付与されている必要があります。MonitorまたはOperatorロールを持つユーザーは、セキュリティ情報を表示できますが変更することはできません。

「管理操作、ロールおよびツールの理解」も参照してください。

31.1 WSRPプロデューサの保護

次の各項で、WebCenter PortalからJSR-168標準ベースのWSRPポートレットにセキュアにアクセスする方法を説明します。

31.1.1 プロデューサのデプロイ

WS-Security用にプロデューサを構成する前に、「ポートレット・プロデューサ・アプリケーションのデプロイ」で説明されている手順を実行して、標準準拠のポートレット・プロデューサをOracle WebLogic管理対象サーバーにデプロイする必要があります。

31.1.2 プロデューサ・エンドポイントへのポリシーの添付

この項では、セキュリティ・ポリシーをWSRPプロデューサ・エンドポイントに添付する方法について説明します。WSRPプロデューサでサポートされるポリシーは次のとおりです。

  • ユーザー名トークン(パスワードあり)

    wss10_username_token_with_message_protection_service_policy

    このポリシーは、メッセージ・レベルの保護(メッセージの整合性と機密保護)、およびWS-Security 1.0標準に従ったインバウンドSOAPリクエストの認証を行います。WS-SecurityのBasic 128スイートの非対称キー・テクノロジ、具体的には、メッセージの機密保護のためのRSA鍵メカニズム、メッセージの整合性のためのSHA-1ハッシュ・アルゴリズム、およびAES-128ビット暗号化が使用されます。キーストアはセキュリティ構成を通して構成されます。認証は、WS-Security UsernameToken SOAPヘッダーの資格証明を使用して行われます。ユーザーのサブジェクトは、現在構成されているアイデンティティ・ストアに対して確立されます。

  • ユーザー名トークン(パスワードなし)

    wss10_username_id_propagation_with_msg_protection_service_policy

    このポリシーでは、WS-Security 1.0標準で示されたメカニズムを使用して、メッセージレベルの保護(メッセージの整合性および機密保護)およびインバウンドSOAPリクエストのアイデンティティ伝搬を実施します。メッセージの保護は、非対称型キー・テクノロジであるWS-SecurityのBasic128スイート(具体的には、機密保護に使用するRSAキー・メカニズム、整合性に使用するSHA-1ハッシング・アルゴリズム、およびAES-128ビット暗号化)を使用して提供されます。アイデンティティは、UsernameToken WS-Security SOAPヘッダーに指定されたユーザー名を使用して設定されます。サブジェクトは、現在構成されているアイデンティティ・ストアに対して確立されます。

  • SAMLトークン

    次の4つの「SAMLトークン」ポリシーがあります。

    • WSS 1.0 SAMLトークン・ポリシー:

      wss10_saml_token_service_policy

      このポリシーは、WS-Security SOAPヘッダーのSAMLトークンで提供される資格証明を使用してユーザーを認証します。SAMLトークンに含まれる資格証明は、SAMLログイン・モジュールに対して認証されます。このポリシーは、どのようなSOAPベースのエンドポイントにも適用できます。

    • メッセージ整合性付きWSS 1.0 SAMLトークン

      wss10_saml_token_with_message_integrity_service_policy

      このポリシーは、メッセージ・レベルの整合性保護と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。また、このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイート、具体的には、メッセージ整合性のためのSHA-1ハッシュ・アルゴリズムが使用されます。

    • メッセージ保護付きWSS 1.0 SAMLトークン

      wss10_saml_token_with_message_protection_service_policy

      このポリシーはWS-Security 1.0標準に従って、着信SOAPリクエストに対するメッセージ・レベルの保護とSAMLベースの認証を行います。WS-Securityの非対称鍵テクノロジのBasic 128スイートを使用します。具体的には、RSA鍵メカニズム(メッセージの機密性)、SHA-1ハッシュ・アルゴリズム(メッセージの整合性)、およびAES-128ビットの暗号化を使用します。

    • メッセージ保護付きWSS 1.1 SAMLトークン

      wss11_saml_token_with_message_protection_service_policy

      このポリシーはWS-Security 1.1標準に従って、着信SOAPリクエストに対するメッセージ・レベルの保護(メッセージの整合性とメッセージの機密性)とSAMLベースの認証を行います。メッセージは、WS-Securityの対称鍵テクノロジのBasic 128スイートを使用して保護されます。具体的には、RSA鍵メカニズム(メッセージの機密性)、SHA-1ハッシュ・アルゴリズム(メッセージの整合性)、およびAES-128ビットの暗号化が使用されます。キーストアはセキュリティ構成を通して構成されます。WS-Securityのバイナリ・セキュリティ・トークンからSAMLトークンを抽出し、それらの資格証明を使用して、構成済のアイデンティティ・ストアに対してユーザーが検証されます。このポリシーは、SOAPベースのすべてのエンドポイントにアタッチできます。

    キーストアはセキュリティ構成を通して構成されます。WS-Securityのバイナリ・セキュリティ・トークンからSAMLトークンを抽出し、それらの資格証明を使用して、構成済のアイデンティティ・ストアに対してユーザーが検証されます。

ポリシーをプロデューサ・エンドポイントに添付する手順は次のとおりです。

  1. Fusion Middleware Controlを開き、ターゲット・ドメインにログインします。

    Fusion Middleware Controlへのログインの詳細は、「Enterprise Manager Fusion Middleware Controlの起動」を参照してください。

  2. ナビゲーション・ペインで、「アプリケーションのデプロイ」ノードを開き、ポリシーの添付先のプロデューサをクリックします。
  3. 「アプリケーションのデプロイ」メニューから、「Webサービス」を選択します。

    プロデューサの「Webサービスのサマリー」ページが表示されます。

  4. 「Webサービス・エンドポイント」タブを開き、ポリシーの添付先のエンドポイントをクリックします。

    「WSMポリシー・サブジェクト構成」ページが表示されます(図31-1を参照)。

    図31-1 WSMポリシー・サブジェクト構成

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

    注意:

    マークアップ・サービス・ポートのみを保護する必要があります(WSRP_V2_Markup_ServiceおよびWSRP_V1_Markup_Service)。

    プロデューサの「Webサービス・エンドポイント」ページが表示されます。

  5. 「ポリシー」タブを開いて、プロデューサに現在添付されているポリシーを表示します。
  6. 「アタッチ/デタッチ」をクリックして、ポリシーを追加または削除します。

    使用可能なポリシーとその説明が示された「ポリシーのアタッチ/デタッチ」ページが表示されます。

  7. 「使用可能なポリシー」で、検索するポリシー・カテゴリとしてCategoryおよびSecurityを選択し、「検索」アイコンをクリックすると、セキュリティ・ポリシーが表示されます。
  8. 添付するポリシーを選択し、「添付」をクリックします。複数のポリシーを選択するには、[Ctrl]キーを使用します。

    ポリシーが、「アタッチされたポリシー」の下のリストに表示されます。

  9. プロデューサ・エンドポイントに添付するポリシーの追加が終了したら、「OK」をクリックします。

31.1.3 キーストアの設定

WSRPプロデューサにキーストアを作成および構成する手順は、使用しているWebCenter Portal環境のトポロジによって異なり、これらの手順については、次の各項で説明しています。

キーストアを設定するための詳細な手順およびWSRPプロデューサを構成する際のWS-Securityのその他の側面については、これらの項を参照してください。

31.2 PDK-Javaプロデューサの保護

共有鍵をメッセージの整合性保護のために定義できますが、これはSSLとともに使用する必要があります。共有鍵をパスワード資格証明として格納する手順は次のとおりです。

  • 管理サーバー・インスタンスの資格証明ストアに、パスワード資格証明として共有鍵を定義します。これは、Fusion Middleware ControlまたはWLSTを使用して実行できます。

  • Webプロデューサを再起動して、テスト・ページにアクセスします。アプリケーション・ログをチェックして、共有鍵が適切に適用されていることを確認します。

注意:

共有鍵の使用では、メッセージの整合性保護のみを実施できます。完全なメッセージ保護には、SSLが必要です。SSLを使用したPDK-Javaポートレット保護の詳細は、「SSLを使用したWebCenter Portalからポートレット・プロデューサへの接続の保護」を参照してください。

31.2.1 パスワード資格証明としての共有鍵の定義

管理サーバー・インスタンスの資格証明ストアに、Fusion Middleware ControlコマンドまたはWLSTコマンドを使用して、パスワード資格証明として共有鍵を定義でき、これらについて次の各項で説明します。

31.2.1.1 Fusion Middleware Controlを使用した共有鍵の定義

Fusion Middleware Controlを使用して共有鍵を定義する手順は、次のとおりです。

  1. Fusion Middleware Controlにログインします。

    Fusion Middleware Controlへのログインの詳細は、「Enterprise Manager Fusion Middleware Controlの起動」を参照してください。

  2. ナビゲーション・ペインで、「WebLogicドメイン」ノードを開き、ターゲット・ドメイン(wc_domainなど)をクリックします。
  3. 「WebLogicドメイン」メニューの「セキュリティ」→「資格証明」を選択します。

    「資格証明」ペインが表示されます。

  4. 「マップの作成」をクリックし、「マップ名」としてPDKと入力して、「OK」をクリックします。
  5. 「キーの作成」をクリックして、作成したマップ(PDK)を選択します。
  6. 「ユーザー名」(この値は使用されないため、どのような値でも指定できます)、「キー」(pdk.<service_id>.sharedKeyの形式。<service_id>はプロデューサの名前)および「パスワード」(10から20桁の16進数)に値を入力して、「OK」をクリックします。

    新しい鍵が「資格証明」ペインに表示されます。

31.2.1.2 WLSTを使用した共有鍵の定義

次の手順で説明するように、WLSTを使用して共有鍵を定義することもできます。

  1. 「Oracle WebLogic Scripting Tool (WLST)コマンドの実行」に示されているとおりにWLSTを起動し、ターゲット・ドメインの管理サーバー・インスタンスに接続します。
  2. 次のコマンドを使用して、ターゲット・ドメインの管理サーバーに接続します。
    connect('user_name','password, 'host_id:port')
    

    ここで:

    • user_nameは、管理サーバーへのアクセスに使用されるユーザー・アカウントの名前です(例: weblogic)。

    • passwordは、管理サーバーにアクセスするためのパスワードです。

    • host_idは、管理サーバーのホストIDです。

    • portは、管理サーバーのポート番号です(例: 7001)。

  3. WLST createCredコマンドを使用して、プロデューサの共有鍵資格証明を資格証明ストアに追加します。
    createCred(map='PDK', key='pdk.service_id.sharedKey.user_name', user='user_name', password='password')
    

    ここで:

    • service_idは、共有鍵の作成対象のプロデューサの名前です(例: omniPortlet)。

    • user_nameは、ユーザーの名前です。この値は使用されないため、どのような値でも指定できます。

    • passwordは、10から20桁の16進数値です。

    例:

    createCred(map='PDK', key='pdk.omniPortlet.sharedKey', user='sharedKey', password='1234567890abc')
    

    注意:

    資格証明の作成後は、前述のものと同じパラメータを指定したWLST updateCredコマンドを使用して、資格証明を更新できます。

  4. プロデューサを再起動します。

    Webプロデューサでは、初めてリクエストを処理する際(ブラウザ・テスト・ページ・リクエストやプロデューサの初回登録時など)にプロパティが適用されるため、共有鍵資格証明の設定後にプロデューサを再起動する必要があります。

31.2.1.3 共有鍵へのOracle PDK-Javaプロデューサの登録

PDK-Javaプロデューサの登録については、「Oracle PDK-Javaポートレット・プロデューサの登録」を参照してください。共有鍵にOracle PDK-Javaプロデューサを登録する場合は、次のことも実行する必要があります。

  • プロデューサの登録時に、「プロデューサ・セッションの有効化」オプションを選択します。

  • 「ポートレット・プロデューサ接続の追加」セクションで、資格証明マップの作成時に使用するパスワードを共有鍵として入力します。