Sun GlassFish Enterprise Server v3 管理ガイド

ProcedureJDBC レルムまたはダイジェスト認証レルムを設定する

Enterprise Server では、接続プールの代わりに JDBC レルムにユーザー資格 (ユーザー名とパスワード) を指定できます。接続プールの代わりに jdbc タイプのレルムを使用すると、ほかのアプリケーションがユーザー資格のデータベース表を参照するのを防止できます。


注 –

JDBC レルムでは、デフォルトでは平文によるパスワードの保存はサポートされません。通常の状況では、パスワードを平文で保存しないでください。


  1. レルムのユーザー資格を格納するデータベース表を作成します。

    データベース表の作成方法は、使用しているデータベースによって異なります。

  2. 作成したデータベース表にユーザー資格を追加します。

    データベース表にユーザー資格を追加する方法は、使用しているデータベースによって異なります。

  3. データベースの JDBC 接続プールを作成します。

    「JDBC 接続プールを作成する」を参照してください。

  4. データベースの JDBC リソースを作成します。

    「JDBC リソースを作成する」

  5. レルムを作成します。

    手順については、「認証レルムを作成する」を参照してください。


    注 –

    JAAS コンテキストは、ダイジェスト認証では jdbcDigestRealm に、その他の認証タイプでは jdbcRealm になります。


  6. 配備記述子を変更して、jdbc レルムを指定します。

    アプリケーションに関連付けられている配備記述子を変更します。

    • Enterprise Archive (EAR) ファイルのエンタープライズアプリケーションの場合は、sun-application.xml ファイルを変更します。

    • Web Application Archive (WAR) ファイルの Web アプリケーションの場合は、web.xml ファイルを変更します。

    • EJB JAR ファイルのエンタープライズ Bean の場合は、sun-ejb-jar.xml ファイルを変更します。

    レルムの指定方法については、『Sun GlassFish Enterprise Server v3 Application Development Guide』「How to Configure a Realm」を参照してください。

  7. レルム内のユーザーにセキュリティーロールを割り当てます。

    ユーザーにセキュリティーロールを割り当てるには、変更した配備記述子に security-role-mapping 要素を追加します。

  8. データベースが動作していることを確認します。

    必要に応じて、「データベースを起動する」を参照してください。

  9. 認証を適用するには、サーバーを再起動します。

    「ドメインの再起動」を参照してください。


例 12–4 セキュリティーロールの割り当て

この例では、セキュリティーロール Employee をユーザー Calvin に割り当てる security-role-mapping 要素を示します。

<security-role-mapping>
    <role-name>Employee</role-name>
    <principal-name>Calvin</principal-name>
  </security-role-mapping>