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

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

カスタム認証トークンのインプリメント

このトピックでは、ログイン・サブジェクトおよび伝搬されたダウンストリームに設定される、独自の認証トークンのインプリメンテーションの作成方法を説明します。

このタスクについて

このインプリメンテーションによって、カスタム・ログイン・モジュールまたはアプリケーションが使用できる 認証トークンを指定することができます。 以下のタスクの 1 つを行う場合は、独自のインプリメンテーションを書き込むことを考慮してください。
重要: 認証を実行するために、カスタム許可トークンの実装は、WebSphere Application Server のセキュリティー・ランタイムで使用されません。 WebSphere Application Security ランタイムは、以下の状況の場合にのみ、このトークンを使用します。
  • シリアライゼーションのために getBytes メソッドを呼び出します
  • getForwardable メソッドを呼び出し、認証トークンをシリアライズするかどうかを決定します。
  • 固有性のために getUniqueId メソッドを呼び出します
  • ダウンストリームに送信されるトークン・ホルダーにシリアライズされたバイトを 追加するために getName および getVersion メソッドを呼び出します。
他の使用のすべては、カスタム・インプリメンテーションです。

カスタム認証トークンをインプリメントするには、 以下のステップを実行する必要があります。

プロシージャー

  1. AuthenticationToken インターフェースのカスタム・インプリメンテーションを書き込みます。 AuthenticationToken インターフェースをインプリメントするさまざまな方法がたくさんあります。 ただし、AuthenticationToken インターフェースおよびトークン・インターフェースが必要とするメソッドは完全にインプリメントされていることを確認してください。 このインターフェースをインプリメントした後、install_dir/classes ディレクトリーにこれを配置することができます。 その代わりに、専用ディレクトリーにクラスを配置することもできます。ただし、 WebSphere Application Server クラス・ローダーがクラスを探し出し、適切な許可を与えられることを確認してください。 server.policy ファイルにこのクラスを含む Java アーカイブ (JAR) ファイルまたはディレクトリーを追加して、 サーバー・コードが必要とする許可を持つようにします。
    ヒント: 伝搬フレームワークによって定義されるすべてのトークン・タイプは、同様なインターフェースを持ちます。 トークン・タイプは、com.ibm.wsspi.security.token.Token インターフェースをインプリメントする マーカー・インターフェースです。 このインターフェースはほとんどのメソッドを定義します。 複数のトークン・タイプをインプリメントする場合は、com.ibm.wsspi.security.token.Token インターフェースをインプリメントする抽象クラスを作成することを考慮してください。 すべてのトークン・インプリメンテーション (認証トークンを含む) は、抽象クラスを拡張する可能性があり、その後作業のほとんどが完了します。

    AuthenticationToken インターフェースのインプリメンテーションについては、例: com.ibm.wsspi.security.token.AuthenticationToken インプリメンテーション を参照してください。

  2. WebSphere Application Server ログイン中にカスタム認証トークンを追加および受け取ります。 このタスクは通常、 カスタム・ログイン・モジュールをさまざまなアプリケーションおよびシステム・ログイン構成に追加することによって行われます。 ただし、情報をデシリアライズするために、カスタム・ログイン・モジュールに接続する必要があります。 オブジェクトがログイン・モジュールでインスタンス化されると、commit メソッド中にオブジェクトをサブジェクトに追加することができます。

    伝搬させるために、サブジェクトに情報を追加するだけの場合、カスタム Java 直列化可能オブジェクトの伝搬 を参照してください。 情報が確実に伝搬されるようにする場合、 独自のカスタム・シリアライゼーションを行う場合、またはサブジェクト・キャッシング目的で固有性を指定する場合には、 独自の認証トークンのインプリメンテーションを作成することを検討します。

    例: カスタム認証トークン・ログイン・モジュール のコード・サンプルは、ログインが初期ログインであるか伝搬ログインであるかを判別する方法を示します。 これらのログイン・タイプの違いは、WSTokenHolderCallback コールバックが 伝搬データを含んでいるかどうかです。 コールバックが伝搬データを含んでいない場合、新規カスタム認証トークンのインプリメンテーションを初期化し、それをサブジェクトに設定します。コールバックが伝搬データを含んでいる場合は、 特定のカスタム認証トークン TokenHolder インスタンスを探し、バイト配列をカスタム AuthenticationToken オブジェクトに変換して、それをサブジェクト内に設定します。 コード・サンプルは両方のインスタンスを示します。

    ログイン・モジュールのコミット・フェーズで認証トークンを読み取り専用にすることができます。 そのトークンを読み取り専用にしない場合は、属性はアプリケーション内に追加できます。

  3. カスタム許可トークンのシリアライズ版を受け取るために既に com.ibm.ws.security.server.lm.wsMapDefaultInboundLoginModule ログイン・モジュールを含んでいる WebSphere Application Server システム・ログイン構成に、カスタム・ログイン・モジュールを追加します。

    このログイン・モジュールが com.ibm.ws.security.server.lm.wsMapDefaultInboundLoginModule ログイン・モジュールが追加した共用状態の情報に依存しているため、このログイン・モジュールを com.ibm.ws.security.server.lm.wsMapDefaultInboundLoginModule ログイン・モジュールの後に追加します。 既存のログイン構成にカスタム・ログイン・モジュールを追加する方法について詳しくは、システム・ログイン構成用のカスタム・ログイン・モジュール開発 を参照してください。

結果

これらのステップが完了すると、カスタム認証トークンがインプリメントされます。



サブトピック
例: com.ibm.wsspi.security.token.AuthenticationToken インプリメンテーション
例: カスタム認証トークン・ログイン・モジュール
関連概念
セキュリティー属性の伝搬
関連タスク
アプリケーション・サーバー間のセキュリティー属性の伝搬
カスタム Java 直列化可能オブジェクトの伝搬
セキュリティー属性伝搬のトークンの実装
関連資料
システム・ログイン構成用のカスタム・ログイン・モジュール開発
タスク・トピック    

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

最終更新: Jan 21, 2008 10:13:28 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm.websphere.nd.doc/info/ae/ae/tsec_custauthentimpl.html