ヘッダーをスキップ

Oracle Application Server Single Sign-On 管理者ガイド
10gリリース2(10.1.2)
B15823-02
目次
目次
索引
索引

戻る 次へ

5
外部アプリケーションの設定と管理

この章では、外部アプリケーションをシングル・サインオン対応に構成する方法について説明します。これらのアプリケーションは、Single Sign-On Serverに認証を委譲するように変更されていないWebアプリケーションです。Webアプリケーションを外部アプリケーションとして構成すると、インタフェースを変更せずにそのアプリケーションのシングル・サインオンを有効にできます。これらのアプリケーションの詳細は、第1章「外部アプリケーション」の項を参照してください。

この章の項目は次のとおりです。

インタフェースを使用した外部アプリケーションの配置と管理

外部アプリケーションを追加、編集または削除するには、「SSO Server管理」ページのリンクから、「外部アプリケーションの管理」ページにアクセスします。追加した外部アプリケーションは、OracleAS Portalの「外部アプリケーション」ポートレットでアクセスできます。このポートレットは、OracleASをインストールすると、「Portal」ページに追加できます。ページの表示およびカスタマイズの詳細は、『Oracle Application Server Portalユーザーズ・ガイド』を参照してください。

この項の項目は次のとおりです。

外部アプリケーションの追加

「外部アプリケーションの追加」リンクをクリックすると、「外部アプリケーションの作成」ページが表示されます。このページには、次のヘッダーとフィールドが含まれています。

表5-1    外部アプリケーション・ログイン 
フィールド  説明 

アプリケーション名 

外部アプリケーションを識別する名前を入力します。この名前は、外部アプリケーションのデフォルト名になります。 

ログインURL 

外部アプリケーションのHTMLログイン・ページを認証する送信先URLを入力します。たとえば、Yahoo! MailのログインURLは、次のようになります。

http://login.yahoo.com/config/login?6p4f5s403j3h0
 

ユーザー名/IDフィールド名 

外部アプリケーションのHTMLログイン・フォームのユーザー名またはユーザーIDフィールドを識別する文字列を入力します。この文字列は、フォームのHTMLソースを表示するときに使用されます(後続の手順に続く例を参照)。このフィールドは、Basic認証を使用している場合は適用できません。 

パスワード・フィールド名 

アプリケーションのHTMLログイン・フォームのパスワード・フィールドを識別する文字列を入力します。この文字列は、フォームのHTMLソースを表示するときに使用されます(後続の手順に続く例を参照)。このフィールドは、Basic認証を使用している場合は適用できません。 

表5-2    認証方式 
フィールド  説明 

使用する認証タイプ 

プルダウン・メニューから、アプリケーションで使用するフォーム送信方法を選択します。これによって、ブラウザからメッセージ・データを送信する方法が決まります。この文字列は、ログイン・フォームのHTMLソースを表示するときに使用されます。次の3つの方法の1つを選択します。

POST: Single Sign-On Serverにデータを転送して、フォーム本体内のログイン資格証明を送信します。

GET: サーバーにページ・リクエストを提示して、ログインURLの一部としてログイン証明書を送信します。

Basic認証: アプリケーションURL内のログイン資格証明を送信します。この送信は、HTTP Basic認証で保護されます。

注意:

  • Basic認証で使用するポップアップ・ウィンドウは、Windows XPのサービス・パック2ではデフォルトでブロックされます。このサービス・パックを使用する場合、シングル・サインオン用ログイン・ページのウィンドウを表示するよう、ブラウザを設定しなおしてください。これは、Internet Explorerの「ツール」メニューにある「ポップアップ・ブロック」で行います。

    Mozillaなど、他のブラウザおよびブラウザ・プラグインでも、ポップアップのブロックが可能です。該当するブラウザの場合、シングル・サインオンのログイン・ページがブロックされないようにしてください。

  • Internet Explorer 5.0以上を使用する場合、外部アプリケーションでBasic認証が機能しないことがあります。このバージョンのInternet Explorerには、Microsoft MS04-004 Cumulative Security Update(832894)が含まれます。対処方法は、次のサイトを参照してください。

    http://support.microsoft.com
    
 
表5-3    追加フィールド 
フィールド  説明 

フィールド名 

ログイン時にユーザー入力を要求するフィールドをHTMLログイン・フォームに追加した場合は、そのフィールドの名前を入力します。このフィールドは、Basic認証を使用している場合は適用できません。 

フィールド値 

対応するフィールド名のデフォルト値を入力します(該当する場合)。このフィールドは、Basic認証を使用している場合は適用できません。 

外部アプリケーションを追加する手順は次のとおりです。

  1. 「外部アプリケーションの管理」ページから、「外部アプリケーションの追加」を選択します。

    「外部アプリケーションの作成」ページが表示されます。

  2. 外部アプリケーション・ログイン」フィールドに、外部アプリケーション名とHTMLログイン・フォームの送信先URLを入力します。Basic認証を使用する場合は、保護されたURLを入力します。

  3. アプリケーションでHTTP POST認証またはHTTP GET認証が使用されている場合は、「ユーザー名/IDフィールド名」フィールドに、HTMLログイン・フォームのユーザー名またはユーザーIDフィールドを識別する文字列を入力します。この名前は、ログイン・フォームのHTMLソースを表示するときに使用されます。

    アプリケーションでBasic認証方式が使用されている場合は、「ユーザー名/IDフィールド名」フィールドを空にします。

  4. アプリケーションでHTTP POST認証またはHTTP GET認証が使用されている場合は、「パスワード・フィールド名」フィールドに、アプリケーションのパスワード・フィールドを識別する文字列を入力します。ログイン・フォームのHTMLソースを参照してください。

    アプリケーションでBasic認証方式が使用されている場合は、「パスワード・フィールド名」フィールドを空にします。

  5. ログイン時にユーザー入力を要求するフィールドをHTMLログイン・フォームに追加した場合は、「追加フィールド」フィールドに、そのフィールドの名前とデフォルト値を入力します。

    アプリケーションでBasic認証方式が使用されている場合は、このフィールドを空にします。

  6. HTMLログイン・フォームでユーザーが追加フィールドのデフォルト値を変更できるようにする場合は、「ユーザーに表示」チェック・ボックスを選択します。

  7. OK」をクリックします。新しい外部アプリケーションが、「外部アプリケーションの管理」ページの「外部アプリケーションの編集/削除」ヘッダーの下に、その他の外部アプリケーションとともに表示されます。

  8. アプリケーションのリンクをクリックして、ログインをテストします。

次の例は、Yahoo! Mailで使用される値のソースです。

<form method=post action="http://login.yahoo.com/config/login?6p4f5s403j3h0" 
autocomplete=off name=a>
...
<td><input name=login size=20 maxlength=32></td>
....
<td><input name=passwd type=password size=20 maxlength=32></td>
...
<input type=checkbox name=".persistent" value="Y" >Remember my ID & password
...
</form>

このソースでは、次の要素の値を指定しています。

外部アプリケーションの編集

アプリケーションの横にある鉛筆アイコンをクリックすると、「外部アプリケーションの編集」ページが表示されます。ここで、アプリケーションを追加したときに入力した値を編集できます。編集を終了したら「適用」をクリックし、変更を入力して新しい値で再度ページを表示します。

Single Sign-Onデータベースへの外部アプリケーション証明書の格納

ユーザーがアプリケーションにログインするたびに、それぞれの外部アプリケーションでは、ユーザー名とパスワードの受信を待機しています。これらのアプリケーションへのシングル・サインオンを有効にするには、ログイン時に、資格証明をSingle Sign-Onデータベースに保存するように指定できます。

Single Sign-Onユーザーが初めて外部アプリケーションにログインすると、「外部アプリケーション・ログイン」ページが表示されます。資格証明書を入力した後、「このアプリケーションのログイン情報を保存する」チェック・ボックスを選択できます。このオプションを選択すると、次回アプリケーションにアクセスするときは、Single Sign-On Serverがログインを代行します。

図5-1は、「外部アプリケーション・ログイン」ページを再現したものです。

図5-1    「外部アプリケーション・ログイン」ページ


画像の説明


注意

  • パスワードを変更した場合、「外部アプリケーション・ログイン」ページのパスワードも更新する必要があります。更新しないと、ログインしようとしたときに、このページからエラー・メッセージが返されます。

  • パスワードには、&{}<>"'(および)の各文字は使用できません。

 

Basic認証アプリケーションのプロキシ認証

シングル・サインオン対応の外部アプリケーションには、SDK対応パートナ・アプリケーションであるOracleAS Portalの「外部アプリケーション」ポートレットを使用してアクセスするのが一般的です。この方法でアクセスするアプリケーションには、GET認証、POST認証またはBasic認証を構成できます。

これにかわるものとして、別のWebサーバーにあるアプリケーションへのセキュアなプロキシとしてOracle HTTP Serverを使用する方法があります。この方法では、モジュールmod_ossoとmod_proxyを設定してシングル・サインオン対応のBasic認証をサポートする必要があります。プロキシ認証の利点は、標準の方法で外部アプリケーションにアクセスしたときに発生する短時間の画面のちらつきがなくなることです。

この項の項目は次のとおりです。

Basic認証のプロキシとしてのOracle HTTP Serverの設定

適切に構成されたmod_osso対応の外部アプリケーションの認証は、パートナ・アプリケーションの認証と類似しています。すなわち、mod_ossoはURLリクエストを取得してSingle Sign-On Serverにリダイレクトします。図5-2に、このプロセスを示します。

図5-2    mod_osso/mod_proxyを使用した認証の流れ


画像の説明

  1. Single Sign-Onユーザーは、ブックマークを選択するか仮想URLを入力して外部アプリケーションをリクエストします。この仮想URLによって、Oracle HTTP Serverはリクエストを取得できます。

  2. mod_ossoは、取得したリクエストに認証ヘッダーを追加して、Single Sign-On Serverからユーザーの資格証明を取得します。

  3. mod_ossoは、Single Sign-On Serverから取得したユーザーの資格証明でヘッダー値を設定し、このヘッダー値をmod_proxyに渡します。

  4. mod_proxyは、ユーザーの資格証明をBasic認証ヘッダーのフォームで実URLに渡します。この転送は、仮想URLを実URLにマップするディレクティブによって行われます。

構成の要件

Oracle HTTP Serverでレガシー・アプリケーションのBasic認証を構成するには、次の条件を満たす必要があります。

構成手順

Oracle HTTP Serverで外部アプリケーションのBasic認証を構成するには、次の手順を実行します。

  1. 次のセクションを、アプリケーション層のmod_osso.confに追加します。このファイルはORACLE_HOME/Apache/Apache/confにあります。

    <IfModule mod_proxy.c>
    <Location /application_virtual_path>
       require valid-user
       AuthType Basic
       OssoLegacyApp on | off
    </Location>
    
    ProxyPass /application_virtual_path/ http://host:port/application_real_ path/
    ProxyPassReverse /application_virtual_path/ http://host:port/application_real_path/
    </IfModule>
    
    

    OssoLegacyAppディレクティブは、保護されたURLがレガシー・アプリケーションであるかどうかを示します。このディレクティブが見つからないかoffに設定されている場合は、アプリケーションのユーザー名とパスワードをSingle Sign-Onデータベースから取得するコードは実行されません。2つのmod_proxyディレクティブProxyPassProxyPassReverseによって、仮想URLが実URLにマップされます。

  2. 次の行をhttpd.confに追加します。

    Listen 5000
    
    

    このパラメータは、非SSLポート5000を使用して外部アプリケーションに関する情報にアクセスするようにmod_ossoに指定します。

  3. Oracle HTTP Serverを再起動します。

    ORACLE_HOME/opmn/bin/opmnctl restartproc process-type=HTTP_Server
    
    
  4. Distributed Cluster Managementスキーマを更新します。

    ORACLE_HOME/dcm/bin/dcmctl updateConfig -v -d
    


    注意

    • 仮想URLのディレクトリを指定する必要はありません。便宜上、このURLはアプリケーション名のみで構成できます。

    • SSLが有効な場合は、アプリケーションの実URLのhttphttpsに置き換えます。

     


戻る 次へ
Oracle
Copyright © 1996, 2005 Oracle Corporation.

All Rights Reserved.
目次
目次
索引
索引