30 偽装の管理
WebCenter Portal偽装を管理および構成して、指定されたWebCenter Portalユーザーが他のユーザーを偽装し、これらのユーザーとして操作を実行できるようにします。
(偽装者による)偽装セッションを開始する方法および(被偽装者による)偽装セッションを許可する方法の詳細は、『Oracle WebCenter Portalでのポータルの使用』の「WebCenter Portal偽装の使用」を参照してください。偽装ELおよび偽装APIの詳細は、『Oracle WebCenter Portalの開発』の偽装に関連するELに関する項を参照してください。
権限:
この章のタスクを実行するには、Oracle WebLogic Server管理コンソールでWebLogic ServerのAdminロールが付与されている必要があります。MonitorまたはOperatorロールを持つユーザーは、セキュリティ情報を表示できますが変更することはできません。
「管理操作、ロールおよびツールの理解」も参照してください。
トピック:
親トピック:セキュリティの管理
WebCenter Portal偽装の概要
この項には次のトピックが含まれます:
WebCenter Portal偽装について
WebCenter Portal偽装を使用すると、WebCenter Portal管理者またはシステム管理者が、サポート担当者やアプリケーション管理者などのユーザーのグループ(「偽装者」)に偽装の権限を割り当てることができます。こうすることによって、偽装者は他のユーザー(「被偽装者」)として操作を実行できます。これは、偽装する追加の権限を偽装者に付与する被偽装者が対象となることに注意してください。この機能は次のような場合に役立ちます。
-
顧客サポート担当者が、ユーザーが直面している問題を理解するために、そのユーザーのかわりとしてアクションを実行する場合。
-
管理者が、ユーザーのかわりに操作を実行する場合。
-
会社の管理職が不在のときに、その管理職のかわりにその責務を果たす権限を誰かに委任する必要がある場合。
WebCenter Portal偽装の使用のベスト・プラクティス
また被偽装者のシステムからOracle Access Manager (OAM)に参加するすべてのアプリケーションは、偽装者へのアクセスが可能になります。唯一の例外は、偽装者が偽装タスク・フローにアクセスして、偽装の権限を付与したり変更することができなくなることです。したがって、管理者が偽装の権限を付与する際には、偽装者が潜在的にアクセス可能な対象を考慮して、細心の注意を払う必要があります。偽装者は、ごく限られたグループにする必要があります。
偽装に対する監査ログ機能をオンにして、管理者は監査ログを定期的にモニターし、偽装アクティビティを確認する必要があります。監査ログ機能の詳細は、「WebCenter Portal偽装の監査ログの管理」を参照してください。
偽装セッションを開始するには、被偽装者と偽装者が、偽装セッションの適切な時間帯に同意する必要があります。この場合、被偽装者はその時間帯にのみ偽装の権限を付与する必要があります。被偽装者は、偽装者が完了した直後に偽装の権限を取り消す必要があります。
偽装者がログアウトすると、偽装セッションが終了することに注意してください。また偽装セッションは、指定された偽装時間の終点に達したときにも終了します。たとえば、ユーザーが午後の1:00から2:00の間に偽装者に偽装の権限を付与した場合、偽装者が偽装セッションを1:00から2:00の間のいつ開始しても、そのセッションは2:00に終了します。
また、偽装者が偽装セッションを行っている最中に、ユーザーが明示的に偽装権限付与を取り消した場合、取消し操作はそのユーザーに対する既存の偽装セッションには影響を与えません。影響を与えるのは、次回偽装者がユーザーの偽装を試みたときのみです。ユーザーは、有効な被偽装者のリストには表示されません。
WebCenter Portalの偽装の準備
WebCenter Portal偽装はOAM 11.1.2.0に依存しています。WebCenter Portalインスタンスのために偽装を有効化するには、その前にまずOAM 11g (Oracleのシングル・サインオン・ソリューション)をインストールして構成し、OAMで偽装を有効にする必要があります。OAM 11gのインストールと構成の詳細は、「Oracle Access Managerの構成」を参照してください。
この項には次のトピックが含まれます:
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 Portalロールに偽装の権限を追加することにより、偽装の権限を持つユーザーを構成する
OAMでの偽装の有効化
「Oracle Access Managerの構成」で説明されているように(10gまたは11gのいずれかのWebGateを使用して) OAM 11.1.2.0をインストールおよび構成した後、次に示すようにidmConfigToolを使用してOAMで偽装を有効化して続行します。
偽装を有効にするには:
-
idmConfigTool使用してOAMを構成します -
示されているようにプロパティ・ファイルを作成しますが、
OAM11G_IMPERSONATION_FLAGをtrueに設定します。
アイデンティティ・ストアへの偽装属性の追加
ユーザーを偽装者または被偽装者として有効にするには、それらのユーザーが、OIDで偽装権限付与を保存するために使用可能な次の属性を保持している必要があります。
-
orclImpersonationGrantee -
orclImpersonationGranter
これらの属性は、OIDでデフォルトで使用可能なorclIDXPersonオブジェクト・クラスの一部です。このオブジェクト・クラスは、偽装者または被偽装者として参加させるユーザーのユーザー・レコードごとに、オブジェクト・クラスのリストに追加する必要があります。これを実行するには、次の各トピックで説明されているように、オブジェクト・クラスの追加を個別のユーザーに対して行うか、複数のユーザーに対するバルク更新として行います。
個々のユーザーに対する偽装属性の追加
個々のユーザーに対してOIDで偽装権限付与を保存するための属性を追加するには、次のステップに従います。
個々のユーザーにオブジェクト・クラスを追加するには:
-
ODSMにログインします(通常は
http://host:port/odsm)。 -
OAMおよびWebCenter用に構成されているディレクトリに接続します。
-
各参加ユーザーに対して、次の手順を実行します。
-
データブラウザでドリルダウンするか、データブラウザの検索フィールドを使用して、変更するユーザーを見つけます。
-
図1で示されているように、「属性」画面を開いて、既存のオブジェクト・クラスのリストに
orclIDXPersonオブジェクト・クラスを追加します。
-
「適用」をクリックします。
-
複数のユーザーに対する偽装属性の追加
bulkmodifyツールを使用してバルク更新として、OIDで偽装権限付与を保存するために使用可能な属性を追加することができます。このツールを使用するには、OIDがインストールされているマシンにアクセスでき、システム管理者の権限を持ち、OIDデータベースのパスワードを知っている必要があります。
複数のユーザーに対してOIDで偽装権限付与を保存するための属性を追加するには:
-
OIDを停止します。
-
$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. -
OIDを再起動します。
これで、指定されたDNの下にあるすべてのユーザーの
orclIDXPersonオブジェクト・クラスが構成されているはずです。bulkmodifyツールの詳細は、『Oracle Identity Managementリファレンス』を参照してください。
WebCenter Portalの偽装の構成
OAMをインストールして構成し、OAMで偽装を有効化したら、次に示すように、WebCenter PortalインスタンスでOAM偽装のトリガー・エンド・ポイントを構成する必要があります。
-
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") -
WebCenter Portalドメイン内のすべてのサーバーを再起動します(管理サーバーを含む)。
-
WebCenter PortalサーバーとOAMとの間に時間差がある場合は、それを説明することが必要になることもあります。偽装の開始時刻と終了時刻は、WebCenter Portalで受け入れられても、時間設定の整合性を取るために、OAMによって強制されます。時間差を説明するには:
-
管理者としてWebCenter Portalにログインします。
-
「管理」→「属性」を選択します。
「属性」ページが表示されます。
ヒント: ブラウザでページを開くことにより、「属性」ページに直接アクセスすることもできます:
http://host:port/webcenter/faces/oracle/webcenter/webcenterapp/view/pages/admin/WebCenterAdmin-CustomAttributes.jspxここで
hostおよびportは、WC_PortalサーバーのホストおよびポートのIDです。 -
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 -
WebCenter Portal管理対象サーバー(
WC_Portal)を再起動します。
-
偽装者の構成
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")
ノート: ロールの割当ての変更はすぐに有効になります。管理対象サーバーを再起動する必要はありません。
偽装の無効化
WebCenter Portal偽装はデフォルトでは無効になっているので、偽装をあらかじめ有効にしていないかぎり、オフにするためにすべきことはありません。ただし、すでに偽装を有効にしていて、これから無効にする場合は、WebCenter PortalおよびOAMで次のステップに従ってオフにしてください。
WebCenter Portalで偽装をオフにした場合、その特定のインスタンスでのみ無効になることに注意してください。OAMで偽装を無効にするまで、偽装が無効化された他のWebCenter Portalインスタンスが影響を受けることはありません。
WebCenter Portalの偽装を無効化するには:
-
管理者としてFusion Middleware Controlにログインします。
-
「WebCenterドメイン」→「セキュリティ」→「セキュリティ・プロバイダ構成」に移動します。
-
「プロパティ」セクションに移動して「構成」をクリックします。
-
PropertySetsで、偽装の開始URIと終了URI (通常は"
props.auth.uri.0")を定義するプロパティ・セットを見つけます。 -
プロパティ
imp.begin.urlおよびimp.end.urlを削除します。 -
WebCenter Portalドメイン内のすべてのサーバーを再起動します(管理サーバーを含む)。
OAMで偽装を無効にするまで、他のWebCenter Portalドメインの偽装は引き続き有効になることに注意してください。
OAMで偽装を無効にして、偽装を完全にオフにするには:
-
DOMAIN_HOME/config/fmwconfig/oam-config.xmlファイルをバックアップします。 -
oam-config.xmlファイルを編集のために開きます。 -
次に示すように
ImpersonationConfigをfalseに設定します。<Setting Name="ImpersonationConfig"Type="htf:map"> <Setting Name="EnableImpersonation"Type="xsd:boolean">false</Setting> </Setting> -
oam-config.xmlを保存します。 -
OAMおよびそのすべてのコンポーネントを再起動します。
セッション・インジケータをオフにする
セッション・インジケータは、偽装セッション中にデフォルトで偽装者の画面に表示されるオーバーレイです。このオーバーレイは、偽装セッションがアクティブであるという視覚的な手掛かりを提供し、また「偽装の中止」をクリックすることでセッションを中止する迅速な方法も提供しますが、図2に示すようにユーザーの(被偽装者の)画面の一部の表示を妨げる場合があります。
ノート: 偽装セッション通知ツールバーがオフになっている場合、「偽装の中止」ボタンが表示されなくなるので、ユーザーは「偽装」ページを使用して偽装セッションを中止する必要があります。

次に示すように、セッション・インジケータのオーバーレイをオフにすることができます。
セッション・インジケータをオフにするには:
-
管理者としてWebCenter Portalにログインします。
-
「管理」→「属性」を選択します。
「属性」ページが表示されます。
ヒント: ブラウザでページを開くことにより、「属性」ページに直接アクセスすることもできます:
http://*`host:port`*/webcenter/faces/oracle/webcenter/webcenterapp/view/pages/admin/WebCenterAdmin-CustomAttributes.jspxここで
hostおよびportは、WC_PortalサーバーのホストおよびポートのIDです。 -
次に示すように通知プロパティを
falseに設定します。oracle.webcenter.security.impersonation.notification=falseこの場合、「偽装プリファレンス」画面を使用して偽装セッションを終了する必要があることに注意してください。「偽装プリファレンス」画面の使用の詳細は、『Oracle WebCenter Portalでのポータルの使用』の「WebCenter Portal偽装の使用」を参照してください。
-
WC_Portal管理対象サーバーを再起動して、変更を有効にします。
偽装ホットキーのオーバーライド
偽装者が被偽装者のリストを表示するために使用するデフォルトの[Ctrl]+[Shift]+[I]ホットキー・シーケンスは、必要に応じてオーバーライドできます。
ホットキー・シーケンスを変更するには:
-
管理者としてWebCenter Portalにログインします。
-
ポータル・ブラウザで、「管理」タイルをクリックして、左側のペインの「属性」をクリックします。
ヒント: ブラウザでページを開くことにより、「属性」ページに直接アクセスすることもできます:
http://*`host:port`*/webcenter/faces/oracle/webcenter/webcenterapp/view/pages/admin/WebCenterAdmin-CustomAttributes.jspxここで
hostおよびportは、WC_PortalサーバーのホストおよびポートのIDです。 -
「属性」ページで、「属性の追加」をクリックして、次のように新しいホットキー・シーケンスを設定します。
oracle.webcenter.security.impersonation.key='new key'ここで
new keyは、[Ctrl]+[Shift]に追加する単一の文字です。デフォルトのIを別の単一文字でオーバーライドすることだけ可能です。[Ctrl]+[Shift]シーケンスは事前定義されており、このキーよりも常に優先されます。オーバーライドされる文字が他のコンポーネント、ツールまたはプラグインによって使用されていないことを必ず確認してください。たとえば、[Ctrl]+[Shift]+[M]はメニューで使用され、[Ctrl]+[Shift]+[K]および[Ctrl]+[Shift]+[J]は開発者ツールやエラー・コンソールなどのブラウザ・プラグインで使用される場合があります。 -
WC_Portalサーバーを再起動して、変更を有効にします。
WebCenter Portal偽装の監査ログの管理
WebCenter Portal偽装を有効にすると、Fusion Middleware Audit Serviceの一部として偽装関連のイベントのログ記録がアクティブになります。デフォルトでは、監査ログ・イベントはファイル(監査バスストップ)に格納されますが、データベースにアップロードして永続化することもできます。
ノート: WebCenter Portal偽装を有効にする場合は、監査ログも有効にすることを強くお薦めします。偽装を有効にすると、監査ログによって、偽装者、被偽装者および各偽装イベントのコンテキストが追跡されます。
監査バスストップ・ファイルの容量は限られているため、イベントの発生後、それらが問合せ可能になるまでに時間がかかる場合は、ログ情報をデータベースに格納することもお薦めします。
偽装監査ログの主な利点は次のとおりです。
-
ポータル、ポータル・サーバーおよびポータル・サーバーの主要アーティファクトのセキュリティ設定を変更するイベントを追跡できます。
-
監査可能なイベントには、偽装者、被偽装者およびイベントのコンテキストの定義に役立つすべての関連イベント・ペイロードが含まれます。
-
ロギング・レベルを定義できます
-
ログに記録されたイベントをデータベースにアップロードすると、それらは永続的に参照可能になります。
-
監査サービスを通じて、監査イベントに関するレポートを参照できます。
WebCenter Portalの監査ログ機能の管理の詳細は、「WebCenter Portal監査ログの管理」を参照してください。監査サービスを構成してデータベースを使用する方法の詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』の監査の構成と管理を参照してください。