Oracle HTTP Server 管理者ガイド
10g(10.1.3.1.0) B31847-01 |
|
この付録では、Oracle Application Server SSO Plug-in(OracleAS SSO Plug-in)を使用してサード・パーティのHTTPリスナーとそのアプリケーションを保護する方法について説明します。OracleAS SSO Plug-inは、UNIXおよびWindowsシステムの場合はSun ONE Web Server Enterprise Edition、Windowsシステムの場合はMicrosoft Internet Information Server(IIS)で動作します。
内容は、次のとおりです。
OracleAS SSO Plug-inは、Sun ONEやIISなどのサード・パーティのリスナーに対するオラクル社のシングル・サインオン(SSO)ソリューションです。このプラグインは、サード・パーティ製リスナー・アプリケーションを、SSOインフラストラクチャを使用して保護するように設計されています。OracleAS SSO Plug-inにより、ユーザーはSSOパスワード1つで様々なサード・パーティ製リスナー・アプリケーションに対する認証を受けることができます。このようにSSOで保護されたサード・パーティ製リスナー・アプリケーションは、同一のSSOサーバー上で保護されているかぎり、SSO対応のOracle HTTP ServerアプリケーションやOracle SSO対応のアプリケーションと統合できます。
OracleAS SSO Plug-inはmod_ossoの簡易版で、その基本機能の一部のみを実装しています。動的認証、グローバル・ログアウト、アイドル・タイムアウトとグローバル・タイムアウトおよびレガシー・アプリケーションのBasic認証などの機能は、現行リリースのOracleAS SSO Plug-inには実装されていません。
図B-1は、OracleAS SSO Plug-inで保護されたURLのリクエスト時に必要な処理を示しています。
同じセッション内でユーザーが再度同一または異なるアプリケーションへのアクセスを試みた場合、そのユーザーはユーザー名とパスワードの入力を求められず、アプリケーションはHTTPヘッダーを使用してOracleAS SSO Plug-inのセッションCookieからこの情報を取得します。
OracleAS SSO Plug-inは、Oracle Application Server 10g Companion CDに含まれています。このCDは、Oracle Application ServerのCDパックに含まれています。
Oracle Application ServerがインストールされているマシンにOracleAS SSO Plug-inをインストールします。このサーバーは、ネットワークおよびセキュリティに依存するライブラリとシングル・サインオン登録ツールに対してのみ必要で、実行中である必要はありません。UNIXシステムにOracle Application Serverをインストール後、リスナーの起動スクリプトのLD_LIBRARY_PATH
にORACLE_HOME
/lib
を追加します。たとえば、Sun ONEのstartスクリプトがその例です。Windowsシステムの場合、インストールにより自動的に環境変数PATH
が設定されます。たとえば、ORACLE_HOME
¥bin
が設定されます。
必要なプラグインをダウンロードまたはコピーして、構成ファイルと共有ライブラリをサード・パーティのリスナーがアクセスできるディレクトリに格納します。セキュリティ上の理由から、すべての構成ファイルとプラグイン・モジュールに最小限の権限を与えます。
Oracle Application Server 10g Companion CDでは、ファイルは、UNIXの場合は/plugins/solaris/
、Windowsの場合は¥plugins¥win32¥
にあります。
表B-1に、OracleAS SSO Plug-inの共有ライブラリに関する情報を示します。
シングル・サインオンの登録処理により、シングル・サインオン・サーバーとリスナーは、通信の前に、サーバーの位置、プロトコルのバージョンおよび共通暗号鍵などの情報を共有できるようになります。登録処理後、この情報はシングル・サインオンのパートナ・アプリケーション・エントリとしてシングル・サインオン・サーバー側に格納されます。リスナー側には、sso_conf
というシングル・サインオン・ファイルが作成されます。sso_conf
はセキュリティの目的で不明瞭化されています。このファイルをリスナーがアクセスできるように適切な場所にコピーします。
オラクル社では、この処理を自動化するJavaベースのシングル・サインオン登録ツールを提供しています。
次のコマンドを使用して、サード・パーティのリスナーをシングル・サインオン・サーバーに登録します。
ORACLE_HOME/jdk/bin/java -jar ORACLE_HOME/sso/lib/ossoreg.jar [arguments]
ORACLE_HOME
は、使用しているOracle Application Serverインストールのホーム・ディレクトリです。LD_LIBRARY_PATH
は、必ず$ORACLE_HOME/lib32
が含まれるように設定してください。
ossoreg.jar
のバージョンが異なると、コマンドの引数がまったく異なる場合があります。必要であれば、-helpを使用してコマンドを実行し、使用方法についての完全な情報を取得してください。
表B-2に、SSO Registrarの一般的なコマンド引数のうち重要なものをいくつか示します。
UNIXの場合:
ORACLE_HOME/jdk/bin/java -jar ORACLE_HOME/sso/lib/ossoreg.jar \ -ssoDBConnect <host.domain>:1521:iasdb -pass your_password \ -oracle_home_path ORACLE_HOME -site_name <host.domain>:7778 \ -config_mod_osso TRUE -mod_osso_url http://<host.domain>:7778 \ -u nobody -admin_id admin_name -admin_info admin@company.com \ -sso_partner_version v1.2 \ -virtualhost \ -config_file ORACLE_HOME/Apache/Apache/conf/osso/sso_conf
Windowsの場合:
ORACLE_HOME/jdk/bin/java -jar ORACLE_HOME/sso/lib/ossoreg.jar \
-ssoDBConnect <host.domain>:1521:iasdb -pass
your_password \
-oracle_home_path ORACLE_HOME -site_name <host.domain>:8080 \
-config_mod_osso TRUE -mod_osso_url http://<host.domain>:8080 \
-u SYSTEM -admin_id admin_name -admin_info admin@company.com \
-sso_partner_version v1.2 \
-virtualhost \
-config_file ORACLE_HOME/Apache/Apache/conf/osso/sso_conf
osso_plugin.conf
などのプラグイン構成ファイルを作成します。これは、プラグインの全機能を定義したファイルです。osso
プロパティ・ファイルとも呼ばれます。構文は、すべてのサード・パーティのリスナーで同一です。このファイルは、サード・パーティのリスナーが読取り可能なディレクトリに置く必要があります。このファイルには次の内容も含まれます。
表B-3に、OracleAS SSO Plug-inの構成ディレクティブを示します。
リソースの保護には次のフォーマットを使用します。
<OSSO url-matching-rule> SSO_configuration_directives </OSSO>
url-matching-ruleの定義には次のルールを使用します。
同じURLに複数のルールを適用すると、次の優先順位が適用されます。
優先順位の例を次に示します。
/foo/bar/index.html would take precedence over /foo/bar/* /foo/bar/*.jsp would take precedence over /foo/bar/* /foo/bar/* would take precedence over /foo/*例B-2 簡単なシングル・サインオン構成ファイルosso_plugin.conf
LoginServerFile=/path/sso_conf <OSSO /private/hello.html> IpCheck = false </OSSO> <OSSO /private1/*> </OSSO> <OSSO /private2/*.jsp> IpCheck = true </OSSO>
この項では、UNIXおよびWindowsシステム上のSun ONEリスナーに関するOracleAS SSO Plug-inの構成手順について説明します。
/config
ディレクトリで、magnus.conf
ファイル(バージョン6)またはobj.conf
(バージョン4)を開きます。
UNIXの場合:
Init fn="load-modules" shlib="/path/oracle_proxy.so" funcs="osso_init,oracle_single_sign_on,osso_redirect_service,osso_success_service"
Windowsの場合:
Init fn="load-modules" shlib="/path/oracle_proxy_sunone.dll" funcs="osso_init,oracle_single_sign_on,osso_redirect_service,osso_success_service"
/path/
は、プラグインの共有ライブラリへのパスです。この行では、リスナーに対してプロキシ共有ライブラリの格納場所と、このライブラリで公開されているファンクションが示されています。
Init fn="osso_init" osso_properties="/path/osso_plugin.conf" log_file="/path/plugin.log" log_level=error
/path/osso_plugin.conf
は、作成したプラグイン構成ファイルの正確な場所です。また、この行では、プラグインからのメッセージを記録するための、ログ・ファイルとログ・レベルも指定できます(オプション)。
obj.conf
ファイルの<Object
name=default>
セクションで、他のすべての行の前に次の行を追加します。
AuthTrans fn="oracle_single_sign_on"
<Object
name=default>
セクションで、Service
で始まる他のすべての行の前に次の行を追加します。
Service type="oracle/sso_redirect" fn="osso_redirect_service"
/path/
がドキュメント・ルートのパスになっている次の行を追加します。たとえば、/home/Sun ONE/docs/
または$docroot
です。
<Object ppath="/path/osso_login_success"> Service fn="osso_success_service" </Object>
LD_LIBRARY_PATH
変数を変更し、ORACLE_HOME
/lib32
の場所を含めます。ORACLE_HOME
はOracle Application Serverインストールのホーム・ディレクトリです。
バージョン6.0の場合は、バージョン4.1と同じ共有ライブラリを使用できます。構成は実質的には同じですが、Sun ONEの構成ファイルはバージョン6.0で少し変更されています。このバージョンでは、追加対象となるInit
で始まる2行を、obj.conf
ファイルではなくmagnus.conf
ファイルの末尾に追加する必要があります。obj.conf
に追加する別の2行は、旧バージョンと同じです。
この項では、OracleAS SSO Plug-inを使用するためのIISリスナーの構成手順について説明します。このプラグインは、単一の.dll
(oracle_osso.dll
)で構成されています。このプラグインをインストールするには、IISが常駐するホストに.dll
をコピーして、次の手順を実行します。
HKEY_LOCAL_MACHINE¥SOFTWARE¥Oracle¥IIS OSSO Adapter
を作成します。
d:¥osso¥osso_plugin.conf
は、名前cfg_file
を含む文字列値と、構成ファイルの場所を示す値を追加することにより指定します。
log_file
とlog_level
を指定します。このパラメータはオプションです。
oracle_osso.dll
と同じ物理パスを指定して、IIS Webサイトに新規の仮想ディレクトリを追加します。ディレクトリ名としてosso
を指定し、実行アクセス権限を付与します。
oracle_osso.dll
を追加します。フィルタ名はossoとし、その実行可能ファイルはoracle_osso.dll
を含むディレクトリ(d:¥osso¥oracle_osso.dll
など)を指す必要があります。
この項では、一般的な問題および考えられる原因について説明します。
OracleAS SSO Plug-inが必要なライブラリを見つけられませんでした。原因としては、UNIXのLD_LIBRARY_PATH
にORACLE_HOME
/lib
が含められていないことが考えられます。Windowsでは、PATH
にORACLE_HOME
¥bin
が含められていません。
シングル・サインオン・サーバー構成ファイル(たとえばsso_conf
)は特定のアカウントを使用して不明瞭化されており、このアカウントはリスナーの起動に使用されたアカウントである必要があります。たとえば、Sun ONEの場合はmagnus.conf
、IISの場合は通常はSYSTEM
に指定されたUser
の値を使用します。
OracleAS SSO Plug-inは、他の認証モジュールと連動しない設計になっています。これは、ネイティブなリスナー認証モジュールまたはサード・パーティ・モジュールのいずれかです。
|
![]() Copyright © 2006 Oracle Corporation. All Rights Reserved. |
|