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

前
次

32 偽装の管理

この章では、WebCenter Portal偽装を管理および構成する方法について説明します。これにより、指定されたWebCenter Portalユーザーが他のユーザーを偽装し、これらのユーザーとして操作を実行できます。

(偽装者による)偽装セッションを開始する方法および(被偽装者による)偽装セッションを許可する方法の詳細は、『Oracle WebCenter Portalの使用』のWebCenter Portal偽装の使用に関する項を参照してください。偽装ELおよび偽装APIの詳細は、『Oracle JDeveloperによる、WebCenter Portalアセットおよびカスタム・コンポーネントの開発』の偽装に関連したELに関する項を参照してください。

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

権限

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

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

32.1 WebCenter Portal偽装の概要

この項には次のトピックが含まれます:

32.1.1 WebCenter Portal偽装について

WebCenter Portal偽装を使用すると、WebCenter Portal管理者またはシステム管理者が、サポート担当者やアプリケーション管理者などのユーザーのグループ(「偽装者」)に偽装の権限を割り当てることができます。こうすることによって、偽装者は他のユーザー(「被偽装者」)として操作を実行できます。これは、偽装する追加の権限を偽装者に付与する被偽装者が対象となることに注意してください。この機能は次のような場合に役立ちます。

  • 顧客サポート担当者が、ユーザーが直面している問題を理解するために、そのユーザーのかわりとしてアクションを実行する場合。

  • 管理者が、ユーザーのかわりに操作を実行する場合。

  • 会社の管理職が不在のときに、その管理職のかわりにその責務を果たす権限を誰かに委任する必要がある場合。

32.1.2 WebCenter Portal偽装の使用のベスト・プラクティス

また被偽装者のシステムからOracle Access Manager (OAM)に参加するすべてのアプリケーションは、偽装者へのアクセスが可能になります。唯一の例外は、偽装者が偽装タスク・フローにアクセスして、偽装の権限を付与したり変更することができなくなることです。したがって、管理者が偽装の権限を付与する際には、偽装者が潜在的にアクセス可能な対象を考慮して、細心の注意を払う必要があります。偽装者は、ごく限られたグループにする必要があります。

偽装に対する監査ログ機能をオンにして、管理者は監査ログを定期的にモニターし、偽装アクティビティを確認する必要があります。監査ログ機能の詳細は、「WebCenter Portal偽装の監査ログの管理」を参照してください。

偽装セッションを開始するには、被偽装者と偽装者が、偽装セッションの適切な時間帯に同意する必要があります。この場合、被偽装者はその時間帯にのみ偽装の権限を付与する必要があります。被偽装者は、偽装者が完了した直後に偽装の権限を取り消す必要があります。

偽装者がログアウトすると、偽装セッションが終了することに注意してください。また偽装セッションは、指定された偽装時間の終点に達したときにも終了します。たとえば、ユーザーが午後の1:00から2:00の間に偽装者に偽装の権限を付与した場合、偽装者が偽装セッションを1:00から2:00の間のいつ開始しても、そのセッションは2:00に終了します。

また、偽装者が偽装セッションを行っている最中に、ユーザーが明示的に偽装権限付与を取り消した場合、取消し操作はそのユーザーに対する既存の偽装セッションには影響を与えません。影響を与えるのは、次回偽装者がユーザーの偽装を試みたときのみです。ユーザーは、有効な被偽装者のリストには表示されません。

32.2 WebCenter Portalの偽装の準備

WebCenter Portal偽装はOAM 11.1.2.0に依存しています。WebCenter Portalインスタンスのために偽装を有効化するには、その前にまずOAM 11g (Oracleのシングル・サインオン・ソリューション)をインストールして構成し、OAMで偽装を有効にする必要があります。OAM 11gのインストールと構成の詳細は、「Oracle Access Managerの構成」を参照してください。

この項には次のトピックが含まれます:

32.2.1 WebCenter Portal偽装の要件

WebCenter Portalの偽装を準備するには、まずOAM 11.1.2.0をインストールして構成し、OAMで偽装を有効にする必要があります。また、参加しているユーザーごとに偽装属性を追加する必要があります。

注意:

WebCenter Portal偽装では、OAM 11.1.2.0をシングル・サインオン・ソリューションとしてインストールおよび構成し、OID 11.1.2.0をアイデンティティ・ストアとしてインストールおよび構成することが要求されます。

  • 10gまたは11gのいずれかのWebGateを使用してOAM 11.1.2.0をインストールおよび構成する(「Oracle Access Managerの構成」を参照してください)

  • 偽装を有効化する

  • アイデンティティ・ストアで各参加ユーザーに偽装属性を追加する

  • 参加しているWebCenter Portalインスタンスごとに偽装を構成する

  • WebCenterアプリケーション・ロールに偽装の権限を追加することにより、偽装の権限を持つユーザーを構成する

32.2.2 OAMでの偽装の有効化

「Oracle Access Managerの構成」で説明されているように(10gまたは11gのいずれかのWebGateを使用して) OAM 11.1.2.0をインストールおよび構成した後、次に示すようにidmConfigToolを使用してOAMで偽装を有効化して続行します

偽装を有効にする手順は次のとおりです。

  1. idmConfigToolを使用して、次のドキュメントのIDM構成ツールを使用したAccess Managerの構成に関する項に示されているように、OAMを構成します: 『Oracle Fusion Middleware Oracle Identity Managementエンタープライズ・デプロイメント・ガイド』
  2. 示されているようにプロパティ・ファイルを作成しますが、OAM11G_IMPERSONATION_FLAGtrueに設定します。

32.2.3 アイデンティティ・ストアへの偽装属性の追加

ユーザーを偽装者または被偽装者として有効にするには、それらのユーザーが、OIDで偽装権限付与を保存するために使用可能な次の属性を保持している必要があります。

  • orclImpersonationGrantee

  • orclImpersonationGranter

これらの属性は、OIDでデフォルトで使用可能なorclIDXPersonオブジェクト・クラスの一部です。このオブジェクト・クラスは、偽装者または被偽装者として参加させるユーザーのユーザー・レコードごとに、オブジェクト・クラスのリストに追加する必要があります。これを実行するには、次の各トピックで説明されているように、オブジェクト・クラスの追加を個別のユーザーに対して行うか、複数のユーザーに対するバルク更新として行います。

32.2.3.1 個々のユーザーに対する偽装属性の追加

個々のユーザーに対してOIDで偽装権限付与を保存するための属性を追加するには、次の手順に従います。

個々のユーザーにオブジェクト・クラスを追加するには:

  1. ODSMにログインします(通常はhttp://host:port/odsm)。

  2. OAMおよびWebCenter用に構成されているディレクトリに接続します。

  3. 各参加ユーザーに対して、次の手順を実行します。

    1. データブラウザでドリルダウンするか、データブラウザの検索フィールドを使用して、変更するユーザーを見つけます。

    2. 図32-1で示されているように、「属性」画面を開いて、既存のオブジェクト・クラスのリストにorclIDXPerson オブジェクト・クラスを追加します。

      図32-1 ODSMの「属性」タブ

      図32-1の説明が続きます
      「図32-1 ODSMの「属性」タブ」の説明
    3. 「適用」をクリックします。

32.2.3.2 複数のユーザーに対する偽装属性の追加

bulkmodifyツールを使用してバルク更新として、OIDで偽装権限付与を保存するために使用可能な属性を追加することができます。このツールを使用するには、OIDがインストールされているマシンにアクセスでき、システム管理者の権限を持ち、OIDデータベースのパスワードを知っている必要があります。

複数のユーザーに対してOIDで偽装権限付与を保存するための属性を追加するには:

  1. OIDを停止します。
  2. $ORACLE_HOME/ldap/binに移動して、bulkmodifyツールを実行します。

    オブジェクト・クラスを追加するすべてのユーザーが存在するDNとしてbasednを指定します。接続文字列はOID DB接続文字列です。これは通常OIDDB ($ORACLE_INSTANCE/config/tnsnames.oraから決定されます)です。入力を要求されたら、DBのパスワードを指定します。コマンドの実行例を次に示します。

    bulkmodify connect="OIDDB" basedn="cn=Users,dc=us,dc=oracle,dc=com" attribute="objectclass" value="orclIDXPerson" add=true
    This tool can only be executed if you know database user password for OID
    Enter OID Password ::
     
    ------------------------------------------------------------
    Modifying entries under "cn=users,dc=us,dc=oracle,dc=com" ...
    ------------------------------------------------------------
     
    ------------------------------------------------------------
    Total 72 Entries are modified.
    
  3. OIDを再起動します。

    これで、指定されたDNの下にあるすべてのユーザーのorclIDXPersonオブジェクト・クラスが構成されているはずです。bulkmodifyツールの詳細は、『Oracle Identity Managementリファレンス』を参照してください。

32.3 WebCenter Portalの偽装の構成

OAMをインストールして構成し、OAMで偽装を有効化したら、次に示すように、WebCenter PortalインスタンスでOAM偽装のトリガー・エンド・ポイントを構成する必要があります。

  1. WLSTを使用して、Weblogic管理サーバーに管理者として接続し次のコマンドを実行しますが、このとき、oamhostおよびoamserverportをOAMの該当するホストIDおよびポートで置き換えます。

    addOAMSSOProvider(loginuri="/${app.context}/adfAuthentication", logouturi="/oamsso/logout.html",
    beginimpuri="http://oamhost:oamserverport/oam/server/impersonate/start",
    endimpuri="http://oamhost:oamserverport/oam/server/impersonate/end")
    
  2. WebCenter Portalドメイン内のすべてのサーバーを再起動します(管理サーバーを含む)。

  3. WebCenter PortalサーバーとOAMとの間に時間差がある場合は、それを説明することが必要になることもあります。偽装の開始時刻と終了時刻は、WebCenter Portalで受け入れられても、時間設定の整合性を取るために、OAMによって強制されます。時間差を説明する手順は次のとおりです。

    1. 管理者としてWebCenter Portalにログインします。

    2. 「管理」→「属性」を選択します。

      「属性」ページが表示されます。

      ヒント:

      ブラウザでページを開くことにより、「属性」ページに直接アクセスすることもできます。

      http://host:port/webcenter/faces/oracle/webcenter/webcenterapp/view/pages/admin/WebCenterAdmin-CustomAttributes.jspx

      ここでhostおよびportは、WC_PortalサーバーのホストおよびポートのIDです。

    3. WebCenter PortalサーバーがOAMサーバーより遅れている場合は+を使用して偽装時間デルタを秒単位で指定し、進んている場合は-記号を使用して指定します。例:

      oracle.webcenter.security.impersonation.timedelta = -480
      

      これは、OAMとWebCenter Portalとの間に8分の時間差があり、WebCenter Portalサーバーの方が進んでいる場合を示しています。

      ヒント:

      $domain.home/bin/setDomainEnv.shファイルに設定を追加することもできます。

      EXTRA_JAVA_PROPERTIES="-Doracle.webcenter.spaces.osso=true
      -Doracle.webcenter.security.impersonation.timedelta=-480"
      export EXTRA_JAVA_PROPERTIES 
    4. WebCenter Portal管理対象サーバー(WC_Portal)を再起動します。

32.4 偽装者の構成

OAMとWebCenter Portalを構成したら、webcenter#-#impersonatorsロールにユーザーまたはグループを追加することにより、偽装権限の付与先のユーザーを構成することも必要になります。初期設定でこのロールが付与されているユーザーはいません。WebCenter Portalインスタンスでユーザーを偽装する資格があるのは、直接のメンバーシップまたはエンタープライズ・ロール・メンバーシップによってこのロールに属しているユーザーのみです。

注意:

他のユーザーを偽装できるようになる権限をユーザーに付与する際には、注意が必要です。偽装の権限を付与するのは、この機能を業務上必要としているユーザーのみにしてください。ベスト・プラクティスの詳細は、「WebCenter Portal偽装の使用のベスト・プラクティス」を参照してください。

grantAppRole WLSTコマンドを使用して、webcenter#-#impersonatorsロールを1つ以上のエンタープライズ・ロールまたは1人以上のユーザーに付与します。例:

  • SupportRepresentativesと呼ばれるエンタープライズ・ロールに偽装者のロールを付与するには:

    grantAppRole(appStripe="webcenter", appRoleName="webcenter#-#impersonators", principalClass="weblogic.security.principal.WLSGroupImpl", principalName="SupportRepresentatives") 
    
  • weblogicという名前のユーザーに偽装者のロールを割り当てるには:

    grantAppRole(appStripe="webcenter", appRoleName="webcenter#-#impersonators", principalClass="weblogic.security.principal.WLSUserImpl", principalName="weblogic")  
    

エンタープライズ・ロールまたはユーザーの偽装者権限を取り消すには、revokeAppRole WLSTを使用します。例:

  • SupportRepresentativesと呼ばれるエンタープライズ・ロールから偽装者のロールを取り消すには:

    revokeAppRole(appStripe="webcenter", appRoleName="webcenter#-#impersonators", principalClass="weblogic.security.principal.WLSGroupImpl", principalName="SupportRepresentatives")  
    
  • weblogicという名前のユーザーから偽装者のロールを取り消すには:

    revokeAppRole(appStripe="webcenter", appRoleName="webcenter#-#impersonators", principalClass="weblogic.security.principal.WLSUserImpl", principalName="weblogic")
    

注意:

ロールの割当ての変更はすぐに有効になります。管理対象サーバーを再起動する必要はありません。

32.5 偽装の無効化

WebCenter Portal偽装はデフォルトでは無効になっているので、偽装をあらかじめ有効にしていないかぎり、オフにするためにすべきことはありません。ただし、すでに偽装を有効にしていて、これから無効にする場合は、WebCenter PortalおよびOAMで次の手順に従ってオフにしてください。

WebCenter Portalで偽装をオフにした場合、その特定のインスタンスでのみ無効になることに注意してください。OAMで偽装を無効にするまで、偽装が無効化された他のWebCenter Portalインスタンスが影響を受けることはありません。

WebCenter Portalの偽装を無効化する手順は次のとおりです。

  1. 管理者としてFusion Middleware Controlにログインします。

  2. 「WebCenterドメイン」→「セキュリティ」→「セキュリティ・プロバイダ構成」に移動します。

  3. 「プロパティ」セクションに移動して「構成」をクリックします。

  4. PropertySetsで、偽装の開始URIと終了URI (通常は"props.auth.uri.0")を定義するプロパティ・セットを見つけます。

  5. プロパティimp.begin.urlおよびimp.end.urlを削除します。

  6. WebCenter Portalドメイン内のすべてのサーバーを再起動します(管理サーバーを含む)。

    OAMで偽装を無効にするまで、他のWebCenter Portalドメインの偽装は引き続き有効になることに注意してください。

OAMで偽装を無効にして、偽装を完全にオフにする手順は次のとおりです。

  1. DOMAIN_HOME/config/fmwconfig/oam-config.xmlファイルをバックアップします。
  2. oam-config.xmlファイルを編集のために開きます。
  3. 次に示すようにImpersonationConfigをfalseに設定します。
    <Setting Name="ImpersonationConfig"Type="htf:map"> <Setting Name="EnableImpersonation"Type="xsd:boolean">false</Setting> </Setting>
    
  4. oam-config.xmlを保存します。
  5. OAMおよびそのすべてのコンポーネントを再起動します。

32.6 セッション・インジケータをオフにする

セッション・インジケータは、偽装セッション中にデフォルトで偽装者の画面に表示されるオーバーレイです。このオーバーレイは、偽装セッションがアクティブであるという視覚的な手掛かりを提供し、また「偽装の中止」をクリックすることでセッションを中止する迅速な方法も提供しますが、図32-2 に示すようにユーザーの(被偽装者の)画面の一部の表示を妨げる場合があります。

注意:

偽装セッション通知ツールバーがオフになっている場合、「偽装の中止」ボタンが表示されなくなるので、ユーザーは「偽装」ページを使用して偽装セッションを中止する必要があります。

図32-2 偽装セッション - セッション・インジケータのオーバーレイ

図32-2の説明が続きます
「図32-2 偽装セッション - セッション・インジケータのオーバーレイ」の説明

次に示すように、セッション・インジケータのオーバーレイをオフにすることができます。

セッション・インジケータをオフにするには:

  1. 管理者としてWebCenter Portalにログインします。
  2. 「管理」→「属性」を選択します。

    「属性」ページが表示されます。

    ヒント:

    ブラウザでページを開くことにより、「属性」ページに直接アクセスすることもできます。

    http://host:port/webcenter/faces/oracle/webcenter/webcenterapp/view/pages/admin/WebCenterAdmin-CustomAttributes.jspx

    ここでhostおよびportは、WC_PortalサーバーのホストおよびポートのIDです。

  3. 次に示すように通知プロパティをfalseに設定します。
    oracle.webcenter.security.impersonation.notification=false
    

    この場合、「偽装プリファレンス」画面を使用して偽装セッションを終了する必要があることに注意してください。偽装プリファレンス画面の使用の詳細は、『Oracle WebCenter Portalの使用』のWebCenter Portal偽装の使用に関する項を参照してください。

  4. WC_Portal管理対象サーバーを再起動して、変更を有効にします。

32.7 偽装ホットキーのオーバーライド

偽装者が被偽装者のリストを表示するために使用するデフォルトの[Ctrl]+[Shift]+[I]ホットキー・シーケンスは、必要に応じてオーバーライドできます。

ホットキー・シーケンスを変更するには:

  1. 管理者としてWebCenter Portalにログインします。
  2. ポータル・ブラウザで、「管理」タイルをクリックして、左側のペインの「属性」をクリックします。

    ヒント:

    ブラウザでページを開くことにより、「属性」ページに直接アクセスすることもできます。

    http://host:port/webcenter/faces/oracle/webcenter/webcenterapp/view/pages/admin/WebCenterAdmin-CustomAttributes.jspx

    ここでhostおよびportは、WC_PortalサーバーのホストおよびポートのIDです。

  3. 「属性」ページで、「属性の追加」をクリックして、次のように新しいホットキー・シーケンスを設定します。
    oracle.webcenter.security.impersonation.key=new key
    

    ここでnew keyは、[Ctrl]+[Shift]に追加する単一の文字です。デフォルトのIを別の単一文字でオーバーライドすることだけ可能です。[Ctrl]+[Shift]シーケンスは事前定義されており、このキーよりも常に優先されます。オーバーライドされる文字が他のコンポーネント、ツールまたはプラグインによって使用されていないことを必ず確認してください。たとえば、[Ctrl]+[Shift]+[M]はメニューで使用され、[Ctrl]+[Shift]+[K]および[Ctrl]+[Shift]+[J]は開発者ツールやエラー・コンソールなどのブラウザ・プラグインで使用される場合があります。

  4. WC_Portalサーバーを再起動して、変更を有効にします。

32.8 WebCenter Portal偽装の監査ログの管理

WebCenter Portal偽装を有効にすると、Fusion Middleware Audit Serviceの一部として偽装関連のイベントのログ記録がアクティブになります。デフォルトでは、監査ログ・イベントはファイル(監査バスストップ)に格納されますが、データベースにアップロードして永続化することもできます。

注意:

WebCenter Portal偽装を有効にする場合は、監査ログも有効にすることを強くお薦めします。偽装を有効にすると、監査ログによって、偽装者、被偽装者および各偽装イベントのコンテキストが追跡されます。

監査バスストップ・ファイルの容量は限られているため、イベントの発生後、それらが問合せ可能になるまでに時間がかかる場合は、ログ情報をデータベースに格納することもお薦めします。

偽装監査ログの主な利点は次のとおりです。

  • ポータル、ポータル・サーバーおよびポータル・サーバーの主要アーティファクトのセキュリティ設定を変更するイベントを追跡できます。

  • 監査可能なイベントには、偽装者、被偽装者およびイベントのコンテキストの定義に役立つすべての関連イベント・ペイロードが含まれます。

  • ロギング・レベルを定義できます

  • ログに記録されたイベントをデータベースにアップロードすると、それらは永続的に参照可能になります。

  • 監査サービスを通じて、監査イベントに関するレポートを参照できます。

WebCenter Portalの監査ログ機能の管理の詳細は、「Oracle WebCenter Portal監査ログの管理」を参照してください。監査サービスを構成してデータベースを使用する方法の詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』の監査の構成および管理に関する項を参照してください。