始める前に
注: トラスト・アソシエーション・インターセプター (TAI) 内でのデータ・ソースの使用はサポートされていません。
データ・ソースは、J2EE アプリケーション内での使用目的のためであり、EJB および Web コンテナー内での操作のために設計されています。
トラスト・アソシエーション・インターセプターは、コンテナー内では稼
働せず、データ・ソースは TAI 環境で機能しますが、機能の正確性に対してテストされておらず、保証もあり
ません。
製品で提供されているトラスト・アソシエーション・インターセプターへの変更
WebSEAL サーバーの
製品で提供されているインプリメンテーションの場合、新規オプションの com.ibm.websphere.security.webseal.ignoreProxy プロパティーが
追加されます。このプロパティーが
true または
yes に設定されている場合、インプリメンテーションでは、
プロキシー・ホスト名およびプロキシー・ポートがそれぞれ、com.ibm.websphere.security.webseal.hostnames および
com.ibm.websphere.security.webseal.ports プロパティーにリストされている、
いずれかのホスト名またはポートに一致するかどうかは検査されません。例えば、VIA ヘッダーが以下の情報を含んでいる場合、以下のようになります。
HTTP/1.1 Fred (Proxy)、1.1 Sam (Apache/1.1)、
HTTP/1.1 webseal1:7002, 1.1 webseal2:7001
com.ibm.websphere.security.webseal.ignoreProxy プロパティーが true または
yes に設定されている場合、ホスト名のマッチングを行う際に、
ホスト名 Fred は使用されません。
デフォルトでは、このプロパティーは設定されていませ
ん。つまり、VIA ヘッダーで予想されるプロキシー・ホスト名およびポートが、
isTargetInterceptor メソッドを満たす、ホスト名およびポートのプロパティーにリストされていることを意味しています。
上記の VIA ヘッダー情報は、
説明目的のみのために 2 行に分かれて表示されています。
com.ibm.websphere.security.webseal.ignoreProxy プロパティーについて詳しくは、トラスト・アソシエーション・インターセプター ++ を使用した
シングル・サインオンの構成を参照してください。
製品で
提供されているトラスト・アソシエーション・インターセプターのマイグレーション
webseal.properties および trustedserver.properties ファイルに収められているプロパティーは、
以前のバージョンの WebSphere Application Server からはマイグレーションされません。管理コンソールのトラスト・
アソシエーション・パネルを使用して、WebSphere Application Server バージョン 6.0.x に適切なプロパティーを
マイグレーションする必要があります。
詳しくは、トラスト・アソシエーション・インターセプターの構成を参照してください。
カスタム・トラスト・アソシエーション・インターセプターに対する変更
カスタム・インターセプターが com.ibm.websphere.security.WebSphereBaseTrustAssociationInterceptor プロパティーを継承する場合、インターセプターを初期化するために、次の新規メソッドをインプリメントします。
public int init (java.util.Properties props)。
WebSphere Application Server は、トラスト・アソシエーションのインプリメンテーションを使用する前に、戻り状況を検査します。
ゼロ (0) は、インターセプターが正常に初期化されていることを示すデフォルト値です。
しかし、前のインプリメンテーションのトラスト・アソシエーション・インターセプターが、別のエラー状況を戻す場合は、
例外に一致するようにインプリメンテーションを変更するか、あるいは以下の変更のいずれかを行うことができます。
- メソッド 1:
- com.ibm.websphere.security.trustassociation.initStatus プロパティーを、トラスト・アソシエーション・インターセプターのカスタム・プロパティーに追加します。
プロパティーを、インターセプターが正常に初期化されたことを示す値に設定します。
それ以外の値は、すべて失敗を意味することになります。
失敗した場合には、対応するトラスト・アソシエーション・インターセプターは使用されません。
- メソッド 2:
- com.ibm.websphere.security.trustassociation.ignoreInitStatus プロパティーを、トラスト・アソシエーション・インターセプターのカスタム・プロパティーに追加します。
このプロパティーの値を true に設定します。
これにより、WebSphere Application Server がこの方法の状況を無視するように指定されます。
このプロパティーをカスタム・プロパティーに追加した場合、WebSphere Application Server は、前のバージョンと同様に、戻り状況を検査しません。
public int init (java.util.Properties props) メソッドは、
public int init (String propsFile) メソッドに置き換えられます。
init(Properties) メソッドは、
インターセプターを初期化するために必要なプロパティーのセットを含んだ、java.util.Properties オブジェクトを受け入れます。
インターセプター用に設定されるすべてのプロパティーは、このメソッドに送信されます。インターセプターの初期化には、これらのプロパティーが使用されます。例えば、
製品に付属の WebSeal サーバー用のインプリメンテーションにおいては、
このメソッドはホストおよびポートを読み取るため、入ってくる要求は、
トラステッド・ホストおよびポートから来る要求であるか検査されます。戻り値ゼロ (0) は、インターセプターの初期化が成
功したことを意味しています。その他の値の場合は、その初期化が失敗したことを意味しており、
インターセプターは使用されません。
init(Properties) メソッドをインプリメントする代わりに、init(String) メソッドを使用した場合でも、機能します。
唯一の要件は、カスタム・トラスト・アソシエーション・プロパティーを含むファイル名を、
管理コンソール内の、インターセプター用の「
カスタム・プロパティー」リンク
またはスクリプトを使用して入力することです。以下のメソッドの
いずれかを使用して、プロパティーを入力することができます。最初のメソッドは、
WebSphere Application Server の以前のバージョンとの後方互換性に使用されます。
- メソッド 1:
- 前のリリースで使用された、
同一のプロパティー名が、そのファイル名を取得するために使用されます。
そのファイル名は、com.ibm.websphere.security.trustassociation.types プロパティー値に
.config を連結することにより取得されます。
myTAI.properties ファイルが app_server_root/properties ディレクトリーに配置されている場合、次のようにプロパティーを設定します。
- com.ibm.websphere.security.trustassociation.types = myTAItype
- com.ibm.websphere.security.trustassociation.myTAItype.config = app_server_root/properties/myTAI.properties
- メソッド 1:
- 前のリリースで使用された、
同一のプロパティー名が、そのファイル名を取得するために使用されます。
そのファイル名は、com.ibm.websphere.security.trustassociation.types プロパティー値に
.config を連結することにより取得されます。
myTAI.properties ファイルが profile_root/properties ディレクトリーに配置されている場合、次のようにプロパティーを設定します。
- com.ibm.websphere.security.trustassociation.types = myTAItype
- com.ibm.websphere.security.trustassociation.myTAItype.config = profile_root/properties/myTAI.properties
- メソッド 2:
- トラスト・アソシエーションのカスタム・プロパティーにある
com.ibm.websphere.security.trustassociation.initPropsFile プロパティーを、ファイルのロケーションに設定できます。
例えば、次のようにプロパティーを設定します。
com.ibm.websphere.security.trustassociation.initPropsFile=
app_server_root/properties/myTAI.properties
上記のコードの行は、説明の都合上 2 行に分かれて表示されています。このコードは、1 つの連続した行として入力してください。
- メソッド 2:
- トラスト・アソシエーションのカスタム・プロパティーにある
com.ibm.websphere.security.trustassociation.initPropsFile プロパティーを、ファイルのロケーションに設定できます。
例えば、次のようにプロパティーを設定します。
com.ibm.websphere.security.trustassociation.initPropsFile=
profile_root/properties/myTAI.properties
上記のコードの行は、説明の都合上 2 行に分かれて表示されています。このコードは、1 つの連続した行として入力してください。
Network Deployment インストールにおいて、
ファイル名のロケーションがノードによって異なる場合には、
変数 install_root を使用して、WebSphere Application Server の
インストール・ディレクトリーを参照します。
ただし、
init (String propsfile) メソッドではなく、init(Properties) メソッドを
インプリメントするようにインプリメンテーションを変更することを強くお勧めします。
カスタム・トラスト・アソシエーション・インターセプターの
マイグレーション
従来のバージョンの WebSphere Application Server のトラスト・アソシエーションは、
自動的には WebSphere Application Server バージョン 6.0.x 以降にマイグレーションされません。
これらのトラスト・アソシエーションは、
以下のステップに従って手動でマイグレーションすることができます。