| Oracle® Fusion Middleware Oracle Access Management管理者ガイド 11g リリース2 (11.1.2.3) for All Platforms E61950-08 |
|
![]() 前 |
![]() 次 |
OAuthサービスとともに使用するためのWebゲートを構成できます。Webゲートは、クライアント認可およびトークン・エンドポイント・リクエストがOracle Access Managementサーバーに直接アクセスするのではなくWebゲートにアクセスするようにプロキシとしての役割を果たします。
WebLogic環境のみを構成するには、次のようにします。
『WebGate for Oracle Access Managerのインストール』に示された手順を使用して、OAM用のOracle HTTP Server 11g Webゲートをインストールします。
次のリソースを定義し、認証ポリシーおよび認可ポリシーを作成して、Webゲートを構成します。
Oracle Access Managementコンソールを開きます。
「Access Manager」で、「アプリケーション・ドメイン」をクリックします。
ターゲット・ドメインを見つけて、編集のために開きます。
「リソース」タブを選択します。
次のリソースを作成します。既存のIAMSuiteAgentホスト識別子を使用する場合、リソースはすでに存在し、「リソースURL」フィールドを使用して検索できます。
/ms_oauth/oauth2/ui/**
クリックしてリソースを選択してから「編集」ボタンをクリックします。
「保護」見出しの下で、メニューから次のオプションを選択して、「適用」をクリックします。
保護レベル: 保護
認証ポリシー: 保護されるより高度なポリシー
認可ポリシー: 保護リソース・ポリシー
これらの設定により、Webゲートはユーザー認証およびユーザー認可を実行できます。
次のリソースを追加して、「保護レベル」を「除外」に設定します。
/ms_oauth/oauth2/endpoints/** /ms_oauth/oauth2/oammsui/** /ms_oauth/style/** /ms_oauth/img/** /oam/**
Webゲートは除外されたリソースを保護せず、これらのリソースへのアクセスを許可します。
次の行をmod_wl_ohs.confファイルに追加し、Webゲートを再起動します。WebLogicPortの場合、必ずその環境の管理対象ポートの詳細を追加してください。
# the following directive proxies all the OAuth requests
<IfModule weblogic_module>
WebLogicHost host123.us.example.com
WebLogicPort 17100
Debug ON
WLLogFile /tmp/weblogic.log
MatchExpression /ms_oauth/*
</IfModule>
# the following directive proxies all the OAM managed server requests.
<IfModule weblogic_module>
WebLogicHost host123.us.example.com
WebLogicPort 17100
Debug ON
WLLogFile /tmp/weblogic.log
MatchExpression /oam/*
</IfModule>
Access Managerロード・バランシング設定を次のように更新します。
Oracle Access Managementコンソールで、ウィンドウの上部にある「構成」をクリックします。
「設定」セクションの「表示」メニューから、「Access Manager」を選択します。
「ロード・バランシング」セクションで、「OAMサーバー・ホスト」および「OAMサーバー・ポート」設定をWebゲートのホストおよびポート設定に変更します。
「適用」をクリックします。
次のステップを実行します。
$ORACLE_HOME/ORACLE_IDM1/oam/server/apps/を開き、oam-server.earファイルを検索します。次に例を示します。
cd /scratch/test/Oracle/Middleware/Oracle_IDM1/oam/server/apps
.earファイルをバックアップします。
cp oam-server.ear oam-server.ear.original
一時ディレクトリを作成し、そのディレクトリに移動します。
mkdir tmp-ear cd tmp-ear/
oam-server.earファイルをtmp-earディレクトリに抽出します。
jar -xvf ../oam-server.ear
tmp-ear内に別の一時ディレクトリを作成し、そのディレクトリに移動します。
mkdir tmp-ms-war cd tmp-ms-war
次のディレクトリに存在していることになります。
/scratch/test/Oracle/Middleware/Oracle_IDM1/oam/server/apps/tmp-ear/tmp-ms-war
ms_oauth.warをtmp-ms-warディレクトリに抽出します。
jar -xvf ../ms_oauth.war
編集用にWEB-INF/web.xmlファイルを開いて、次のようにセキュリティ制約の前後にコメント・タグを追加して更新します。
<!-- BEGIN: Comment the following security constraint if either the OAM Webgate is front-ending OAM in a WebSphere setup or if the WebLogic server Domain Agent is not used.
<security-constraint>
<web-resource-collection>
<web-resource-name>OAuthSecuredResources</web-resource-name>
<url-pattern>/oauth2/ui/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>valid-users</role-name>
</auth-constraint>
</security-constraint>
END of security constraint needing to be commented -->
tmp-ms-warディレクトリに.warファイルを再作成します。
jar cvf ms_oauth.war
更新された.warファイルを親ディレクトリにコピーし、tmp-ear/にあるtmp-ms-warディレクトリを削除します。
cp /scratch/test/Oracle/Middleware/Oracle_IDM1/oam/server/apps/tmp-ear/tmp-ms-war/ms_oauth.war /scratch/test/Oracle/Middleware/Oracle_IDM1/oam/server/apps/tmp-ear rm -rf /scratch/test/Oracle/Middleware/Oracle_IDM1/oam/server/apps/tmp-ear/tmp-ms-war
tmp-earディレクトリにoam-server.earアーカイブを作成します。
jar cvf oam-server.ear .
tmp-ear/oam_server.earアーカイブ・ファイルを親ディレクトリにコピーします。
cp /scratch/test/Oracle/Middleware/Oracle_IDM1/oam/server/apps/tmp-ear/oam-server.ear /scratch/test/Oracle/Middleware/Oracle_IDM1/oam/server/apps/oam-server.ear
WebSphereサーバーを再起動します。
Webゲートはこれで、リバース・プロキシOAuth URLおよびOAM管理対象サーバーURLになります。すべての認可およびトークン・エンドポイント・リクエストは、実際のOAMホストおよびポートの値ではなく、Webゲート・ホストおよびポートの値を使用してアクセスされるようになります。