Liberty の JAAS カスタム・ログイン・モジュールの構成

Liberty サーバーのログイン・モジュールを構成する前または後に、カスタム Java™ Authentication and Authorization Service (JAAS) ログイン・モジュールを構成することができます。

始める前に

JAAS 構成には、server.xml ファイル、client.xml ファイル、および JAAS 構成ファイルがサポートされます。 ただし、JAAS カスタム・ログイン・モジュールは server.xml ファイルまたは client.xml ファイルで構成することが推奨されます。 JAAS 構成ファイルの構成の詳細については、『Liberty の JAAS 構成ファイルを使用したアプリケーション JAAS カスタム・ログイン・コンテキスト・エントリーおよびログイン・モジュールの構成』を参照してください。

システム・ログイン構成用の JAAS カスタム・ログイン・モジュールの開発』に説明されているように、 javax.security.auth.spi.LoginModule インターフェースを実装 する JAAS カスタム・ログイン・モジュールを含んでいる JAR ファイルがあることを確認してください。このトピックでは、JAAS カスタム・ログイン・モジュールは、Liberty サーバーによって提供される、ハッシュ・テーブル、コールバック、または共有状態変数を使用して、認証データをシステム・ログイン・モジュールに渡します。

このタスクについて

カスタム・ログイン・モジュールを使用することによって、追加の認証の決定を行うか、Subject に情報を追加してアプリケーション内でより細かい許可の決定を行うことができます。より詳細な概要については、『JAAS 構成』および 『JAAS ログイン・モジュール』を参照してください。

For distributed platformsまた、開発ツールを使用してカスタム JAAS ログイン・モジュールを構成することもできます。For distributed platforms開発者ツールを使用した Liberty での JAAS の構成』を参照してください。Liberty でアプリケーションのセキュリティーを構成する際に参照できるよう、WASdev.net Web サイトにいくつかのセキュリティー構成例があります。開発者ツールを使用した Liberty での JAAS の構成』を参照してください。

JAAS カスタム・ログイン・モジュール を構成するには、以下の手順を実行します。

手順

  1. server.xml ファイルで appSecurity-2.0 Liberty フィーチャーを使用可能にします。
    <featureManager>
        <feature>appSecurity-2.0</feature>
    </featureManager>
  2. LoginModule インターフェースを実装するクラス com.sample.CustomLoginModule を作成し、それを CustomLoginModule.jar ファイルにパッケージします。
  3. CustomLoginModule.jar ファイルの場所を示す <fileset> エレメントを使用する <library> エレメントを作成します。この例では、ライブラリーの idcustomLoginLib です。
    <library id="customLoginLib">
        <fileset dir="${server.config.dir}" includes="CustomLoginModule.jar"/>
    </library> 
  4. <jaasLoginModule> エレメントを作成します。この例では、idcustom です。
    1. controlFlag 属性を REQUIRED に設定することで、正常な認証を要求するようにカスタム・ログイン・モジュールを構成します。
    2. 前のステップで構成した <library> エレメントの id である customLoginLiblibraryRef 属性を設定します。このログイン・モジュールには、以下の 2 つのオプションもあります。UserRegistryldap で、mapToUseruser1 です。
    <jaasLoginModule id="myCustom" 
                     className="com.sample.CustomLoginModule" 
                     controlFlag="REQUIRED" libraryRef="customLoginLib">
        <options myOption1="value1" myOption2="value2"/>
    </jaasLoginModule>
  5. システム定義 JAAS 構成 system.WEB_INBOUND の id および固有の name を使用して <jaasLogincontextEntry> エレメントを作成します。 この JAAS 構成は、system.DEFAULT、WSLogin、または独自の JAAS 構成に設定することも可能です。 loginModuleRef 属性で、前のステップで作成した jaasLoginModule エレメントの id である custom を追加します。この id をリストの先頭に入力した場合は、それが呼び出される最初の JAAS ログイン・モジュールになります。 その他のデフォルト・ログイン・モジュール hashtableuserNameAndPasswordcertificate、および token をリストする必要もあります。
    <jaasLoginContextEntry id="system.WEB_INBOUND" name="system.WEB_INBOUND" 
                     loginModuleRef="myCustom, hashtable, userNameAndPassword, certificate, token"  />
    注: オプション名は、ピリオド (.)、config.、 または service で始まってはならず、固有でなければなりません。また、プロパティー名 id および ID は許可されません。

    <jaasLoginContextEntry> エレメント、 <jaasLoginModule> エレメント、<options> エレメント、および <library> エレメントについて詳しくは、Application Security 2.0 を参照してください。


トピックのタイプを示すアイコン タスク・トピック

ファイル名: twlp_sec_jaas.html