Sun GlassFish Enterprise Server v2.1.1 管理ガイド

レルム

「セキュリティーポリシードメイン」または「セキュリティードメイン」とも呼ばれている「レルム」とは、サーバーによって共通のセキュリティーポリシーが定義および適用される範囲のことです。実際には、レルムとはサーバーがユーザーおよびグループの情報を格納するリポジトリです。

Enterprise Server には、次の 3 つのレルムが事前に設定されています。 file (初期のデフォルトレルム)、certificate、および admin-realm です。さらに、ldap レルム、 JDBC レルム、solaris レルム、またはカスタムレルムも設定できます。アプリケーションは、その配備記述子でレルムを指定して使用できます。レルムを指定しない場合、Enterprise Server はデフォルトレルムを使用します。

file レルムでは、サーバーはユーザー資格を keyfile という名前のファイルにローカルで格納します。管理コンソールを使用して file レルムのユーザーを管理できます。

certificate レルムでは、サーバーはユーザー資格を証明書データベースに格納します。certificate レルムを使用する際、サーバーは HTTP プロトコルを使う証明書を使用して Web クライアントを認証します。証明書の詳細については、「証明書および SSL の概要」を参照してください。

admin-realmFileRealm でもあり、管理者ユーザーの資格を admin-keyfile という名前のファイルにローカルで格納します。file レルムでユーザーを管理するのと同じ方法で、管理コンソールを使用してこのレルムのユーザーを管理してください。

ldap レルムでは、サーバーは Directory Server などの LDAP (Lightweight Directory Access Protocol) サーバーからユーザー資格を取得します。LDAP とは、一般のインターネットまたは会社のイントラネットのどちらであっても、ネットワークでの組織、個人、およびファイルやデバイスなどその他のリソースの検出をだれにでもできるようにするプロトコルです。ldap レルムのユーザーおよびグループの管理については、LDAP サーバーのドキュメントを参照してください。

JDBC レルムでは、サーバーはデータベースからユーザー資格を取得します。Enterprise Server は、データベース情報および設定ファイル内の有効化された JDBC レルムオプションを使用します。ダイジェスト認証では、jdbcDigestRealm を使用して JDBC レルムを JAAS コンテキストとして作成します。

solaris レルムでは、サーバーは Solaris オペレーティングシステムからユーザー資格を取得します。このレルムは Solaris 9 OS 以降でサポートされています。solaris レルムのユーザーおよびグループの管理については、Solaris のドキュメントを参照してください。

カスタムレルムとは、リレーショナルデータベースやサードパーティー製のコンポーネントなどその他のユーザー資格のリポジトリです。詳細については、管理コンソールのオンラインヘルプを参照してください。

ProcedureWeb および EJB アプリケーションに対して JDBC レルムを設定する

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


注 –

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


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

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

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

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

  3. JDBC レルムを作成します。

    この作業には管理コンソール GUI を使用します。JDBC レルムの作成手順については、管理コンソール GUI のオンラインヘルプを参照してください。

  4. 手順 3 で作成したレルムをアプリケーションのレルムとして指定します。

    レルムを指定するには、アプリケーションの該当する配備記述子を変更します。

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

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

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

    レルムの指定方法については、『Sun GlassFish Enterprise Server v2.1.1 Developer’s Guide』「How to Set a Realm for an Application or Module」を参照してください。

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

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

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

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