WebSphere Application Server Network Deployment, Version 6.1   
             オペレーティング・システム: AIX , HP-UX, Linux, Solaris, Windows, Windows Vista

             目次と検索結果のパーソナライズ化

J2C プリンシパル・マッピング・モジュール

アプリケーションでより高度なマッピング機能を必要とする場合、 独自の J2EE コネクター (J2C) マッピング・モジュールを作成することができます。WebSphere Application Server バージョン 5.x で作成したマッピング・ログイン・モジュールは、WebSphere Application Server バージョン 6.0.x 以降でもサポートされています。

バージョン 5.x ログイン・モジュールを、接続ファクトリーのマッピング構成で使用できます。 これらのログイン・モジュールは、リソース・マネージャー接続ファクトリーの参照マッピング構成 においても使用できます。バージョン 5.x のマッピング・ログイン・モジュールは、カスタム・マッピング・プロパティー を使用できません。

バージョン 6.0.x 以降において新規マッピング・ログイン・モジュールを作成する場合は、 次のセクションで説明するプログラミング・インターフェースを使用します。

遷移: バージョン 5.x のマッピング・ログイン・モジュールをマイグレーションし、新規プログラミング・モデル、新規カスタム・プロパティー、およびアプリケーション有効範囲におけるマッピング構成分離機能を使用します。 WebSphere Application Server バージョン 6.0.x を使用して作成されるマッピング・ログイン・モジュールを、 リソース接続ファクトリーの非推奨のマッピング構成で使用することはできません。

リソース参照マッピングのためのログイン・モジュールの呼び出し

javax.security.auth.callback.CallbackHandler インターフェース を実装する com.ibm.wsspi.security.auth.callback.WSMappingCallbackHandler クラスは、 WebSphere Application Server バージョン 6.0.x における新規 WebSphere Application Service Provider Programming Interface (SPI) です。

アプリケーション・コード では、次のように、com.ibm.wsspi.security.auth.callback.WSMappingCallbackHandlerFactory ヘルパー・クラス を使用して CallbackHandler オブジェクトを取得します。
package com.ibm.wsspi.security.auth.callback;

public class WSMappingCallbackHandlerFactory {
	private WSMappingCallbackHandlerFactory;
	public static CallbackHandler getMappingCallbackHandler(
ManagedConnectionFactory mcf,
HashMap mappingProperties);
}
WSMappingCallbackHandler クラスは、次のように、CallbackHandler インターフェースを インプリメントします。
package com.ibm.wsspi.security.auth.callback;

public class WSMappingCallbackHandler implements CallbackHandler {
	public WSMappingCallbackHandler(ManagedConnectionFactory mcf,
HashMap mappingProperties);
	public void handle(Callback[] callbacks) throws IOException,
     UnsupportedCallbackException;
}
WSMappingCallbackHandler ハンドラーは、バージョン 6.0.x で定義される 2 つの新規コールバック・タイプを管理することができます。
com.ibm.wsspi.security.auth.callback.WSManagedConnectionFactoryCallback 
com.ibm.wsspi.security.auth.callback.WSMappingPropertiesCallback

新規ログイン・モジュールは、 リソース・マネージャー接続ファクトリーの参照マッピング構成で使用される 2 つのコールバック・タイプを使用します。 WSManagedConnectionFactoryCallback コールバックは、 PasswordCredential クレデンシャルで設定する ManagedConnectionFactory インスタンスを提供します。この設定で、 ManagedConnectionFactory インスタンスは、PasswordCredential インスタンスがターゲットの エンタープライズ情報システム (EIS) インスタンスへのサインオンに使用されるかどうかを判別することができます。 WSMappingPropertiesCallback コールバックは、 カスタム・マッピング・プロパティーを含むハッシュ・マップを提供します。 com.ibm.mapping.authDataAlias プロパティー名が、 認証データ別名を設定するために予約されています。

WebSphere Application Server の WSMappingCallbackHandle ハンドルは、従来のマッピング・ログイン・モジュールが使用できる WebSphere Application Server バージョン 5.x の 2 つのコールバック・タイプを引き続きサポートします。 定義された 2 つのコールバックは、 ログイン構成が接続ファクトリーで使用するログイン・モジュールによってのみ使用されることが可能です。 後方互換性のために、WebSphere Application Server Version 6.0.x 以降は、次のように、 認証データ別名 (com.ibm.mapping.authDataAlias プロパティー名でカスタム・プロパティーの リストで定義されている場合) を WSAuthDataAliasCallback コールバックを使用してバージョン 5.x のログイン・モジュールに渡します。
com.ibm.ws.security.auth.j2c.WSManagedConnectionFactoryCallback 
com.ibm.ws.security.auth.j2c.WSAuthDataAliasCallback

接続ファクトリー・マッピングのためのログイン・モジュールの呼び出し

WSPrincipalMappingCallbackHandler クラスは、 次の 2 つのコールバック・タイプを処理します。
com.ibm.wsspi.security.auth.callback.WSManagedConnectionFactoryCallback 
com.ibm.wsspi.security.auth.callback.WSMappingPropertiesCallback

WSPrincipalMappingCallbackHandler ハンドラーおよび 2 つのコールバックは、 WebSphere Application Server バージョン 6 においては使用しないようにしてください。

マッピング・ログイン・モジュールへのリソース参照のマッピング・プロパティーの引き渡し

任意の カスタム・プロパティーをマッピング・ログイン・モジュールに渡すことができます。次の例は、 WebSphere Application Server のデフォルト・マッピング・ログイン・モジュールが認証データ別名プロパティー を検索する方法を示しています。

		try {
		    wspm_callbackHandler.handle(callbacks);
	            String userID = null;
	            String password = null;
	            String alias = null;
	            wspm_properties = ((WSMappingPropertiesCallback)callbacks[1]).getProperties();
	
	            if (wspm_properties != null) {
	                alias = (String) wspm_properties.get(com.ibm.wsspi.security.auth.callback.Constants.MAPPING_ALIAS);
	                if (alias != null) {
	                    alias = alias.trim();
	                }
	            }
	            } catch (UnsupportedCallbackException unsupportedcallbackexception) {
	. . . // error handling
WebSphere Application Server バージョン 6.0.x のデフォルト・マッピング・ログイン・モジュールでは、 認証データ別名を定義するための 1 つのマッピング・プロパティーが必要です。 MAPPING_ALIAS というマッピング・プロパティーが、 com.ibm.wsspi.security.auth.callback パッケージの Constants.class ファイルで定義されています。

MAPPING_ALIAS    =   "com.ibm.mapping.authDataAlias"

「リソース参照をリソースにマップ」パネルで、 「デフォルトの方式を使用」 > 「Select authentication data entry authentication」を クリックすると、管理コンソールは、自動的にマッピング・プロパティーに、 選択した認証データ別名値を持った MAPPING_ALIAS 記入項目を作成します。独自のカスタム・ログイン構成 を作成してから、デフォルトのマッピング・ログイン・モジュールを使用する場合は、リソース・ファクトリー参照 のマッピング・プロパティーに手動でこのプロパティーを設定する必要があります。

カスタム・ログイン・モジュールでは、 現行の実行スレッドの ID を表すサブジェクトは、WSSubject.getRunAsSubject メソッドを使用して検索できます。 現行の実行スレッドの ID は、RunAs ID と呼ばれます。RunAs サブジェクトには通常、 プリンシパル・セットの WSPrincipal プリンシパル、および 公開クレデンシャル・セットの WSCredential クレデンシャルが含まれます。 マッピング・モジュールによって作成されたサブジェクト・インスタンスには、 プリンシパル・セットの Principal インスタンス、および専用クレデンシャ ル・セットの PasswordCredential クレデンシャルまたは org.ietf.jgss.GSSCredential インスタンスが含まれます。

Java Cryptography Architecture (JCA) 仕様バージョン 1.0 で定義される GenericCredential インターフェース は、JCA バージョン 1.5 仕様では除去されています。GenericCredential インターフェースは、GenericCredential インターフェースに対してプログラミングされた従来のリソース・アダプター をサポートするために、WebSphere Application Server バージョン 6.0.x によってサポートされています。




関連タスク
Java Authentication and Authorization Service のプログラマチック・ログインの構成
J2EE コネクター・アーキテクチャー認証データ・エントリーの管理
関連資料
セキュリティー: 学習用リソース
参照トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 7:44:53 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.nd.doc/info/ae/ae/rsec_pluginj2c.html