以下の指示に従って、EGL LDAP アクセス付き J2EE セキュリティー・サンプルをセットアップおよび実行します。サンプルをセットアップするには、データをインポートし、J2EE セキュリティーを構成し、サンプルを実行します。
始める前に
EGL LDAP アクセス・サンプル付き J2EE セキュリティー・サンプル
を使用するには、LDAP 準拠サーバーを使用する必要があります。LDAP 準拠サーバーがない場合は、オープン・ソース・サーバー (ApacheDS など)、およびそのサーバーへのアクセスを提供するクライアント (Apache Directory Studio など) を使用できます。詳しくは、『LDAP 準拠ソフトウェアの構成』を参照してください。
このタスクについて
以下のセットアップ手順は、ApacheDS および Apache Directory Studio 固有
です。別の LDAP 準拠サーバーを使用する
場合は、サーバーによって構成が異なることがあります。
手順
- データをインポートします。
- ワークスペースにサンプル・プロジェクトをインポートするには、『EGL LDAP アクセス付き J2EE セキュリティー』ページで「サンプルの取得」をクリックします。必要なマイグレーションをワークスペース・マイグレーション・ツールで実行できるようにしてください。
- サンプル・プロジェクトで、以下の各ファイルを開き、ご使用のサーバーに適した内容であることを確認します。
- プロジェクトに含まれる SampleCompany.ldif ファイルからディレクトリー・サーバーにサンプル・データをインポートします。
- J2EE セキュリティーを構成します。 Web ベースのコンテナー管理 J2EE セキュリティーのセットアップに関する一般情報については、『J2EE コンテナー管理セキュリティーの使用』を参照してください。
- WebSphere Application Server を J2EE セキュリティー用にセットアップします。
- WebSphere Application Server (バージョン 8.0 など) のインスタンスを作成し、サーバーを始動します。
- サーバーを右クリックし、を選択します。
- メイン管理コンソールで、の順に展開し、「セキュア管理、アプリケーション、およびインフラストラクチャー (Secure administration, applications, and infrastructure)」をクリックします。
- 「管理セキュリティーを有効にする (Enable administrative security)」および「アプリケーション・セキュリティーを有効にする (Enable application security)」を選択しますが、「Java 2 セキュリティーを使用してローカル・リソースへのアプリケーション・アクセスを制限する (Use Java 2 security to restrict application access to local resources)」は選択解除します。
- 「使用可能なレルム定義 (Available realm definition)」セクションで、「スタンドアロン LDAP レジストリー (Standalone LDAP registry)」を選択します。
「現在の項目として設定 (Set as current)」をクリックします。
- スタンドアロン LDAP レジストリーのプロパティーにアクセスします。
- 「構成」をクリックします。
- 「スタンドアロン LDAP レジストリー・プロパティー (Standalone LDAP registry properties)」ウィンドウの「追加プロパティー (Additional Properties)」タブで、「拡張 LDAP ユーザー・レジストリー設定 (Advanced Lightweight Directory Access Protocol (LDAP) user registry settings)」をクリックします。
- 「ユーザー・フィルター」に (&(uid=%v)(objectclass=person)) と入力し、「OK」をクリックします。
- 「基本管理ユーザー名」に msmith と入力します。
- 「自動生成されたサーバー ID」を選択します。
- LDAP バインド基準を入力し、「OK」および「適用」をクリックします。
デモンストレーション用にオープン・ソース Apache ソフトウェアを使用する場合は、表にリストされている基準を使用します。それ以外の場合は、デフォルトを使用します。
表 1. LDAP バインド基準| バインド基準 |
値 |
| LDAP サーバーのタイプ |
カスタム |
| ホスト |
localhost |
| ポート |
389 |
| 基本識別名 (DN) |
o=sample |
| バインド識別名 |
uid=msmith,ou=people,o=sample |
| バインド・パスワード |
pass |
- ウィンドウの上部のメッセージ・ボックスで、「直接マスター構成に保存できます」をクリックします。
重要: 管理セキュリティーを使用可能にしたため、ユーザー ID msmith とパスワード pass を使用して WebSphere Application Server にログインする必要があります。
管理セキュリティーが不要に
なった場合は、このサンプルの実行後に、管理セキュリティーをオフにしてください。
- 管理コンソールを終了して、サーバーを停止します。
- WebSphere Application Server のインスタンスをセットアップします。
- サーバーを右クリックし、「開く」を選択します。
- 自動接続設定を指定するか、サーバー接続タイプを RMI から SOAP に変更します。
デフォルト・ポートを使用します。
- 「セキュリティー」の下で、「このサーバー上でセキュリティーを有効にする」を選択します。ユーザー ID には、msmith と入力します。パスワードには、pass と入力します。「SSL ハンドシェーク時に自動的にサーバー証明書を信用する」が選択されていることを確認します。
重要: 認証エラーおよび不要なループ処理が発生しないようにするために、ユーザー ID とパスワードが管理コンソールで入力された資格情報に正確に一致していることを確認してください。
- 変更を保存します。
- EGL LDAP アクセス付き J2EE セキュリティー・サンプルをダウンロードします。
プロジェクト SecureLDAPSample のデプロイメント記述子 (
WebContent/WEB-INF/web.xml) は J2EE セキュリティー用に構成されました。
- 「Security」タブで、AllRole セキュリティー・ロールが追加されました。
- Constraint1 セキュリティー制約が追加されました。制約では、J2EE セキュリティー
によって保護されるこのプロジェクト内のリソースおよび、それらのリソースにアクセス
できるロールを指定します。Constraint1 では、AllRole セキュリティー・ロールを持つユーザーのみが、WebContent (“/*”) の下に定義されているこのプロジェクトの JSP ページ (またはリソース) にアクセスできることを指定します。
- 「Pages」タブで認証方式に FORM が設定されました。
これは、フォーム・ベースの認証を使用することを示します。
「Login」ページおよび「Error」ページがプロジェクトに定義され、フォーム・ベース認証と組み合わせて使用するよう指定されています。
SecureLDAPSampleEAR プロジェクト
の
EarContent/META-INF/application.xml デプロイメント記述子は J2EE セキュリティー用に構成されました。
- 「Security」タブで、AllRole セキュリティー・ロール
が追加されました。
- 「WebSphere Bindings」の下で、「All authenticated users」が AllRole にマップする対象として選択されました。この結果、SampleCompany ディレクトリーに含まれるすべてのユーザー ID が AllRole にマップされ、この Web アプリケーションを実行できます。
管理セキュリティーの実行で問題がある場合は、管理コンソールで作業する代わりにコマンド行で作業することにより、管理セキュリティーを無効にできます。管理セキュリティーを無効にするには、以下のようにします。
- コマンド・プロンプトで、次のように入力します。
WebSphere_home¥bin¥wsadmin.bat -conntype NONE
注: WebSphere_home は、WebSphere Application Server のインストール・ディレクトリーの完全修飾パス名です。
- システム・プロンプトが再表示されたら、securityoff と入力します。
- 作業を終了したら、quit と入力します。
- アプリケーション・サーバーを再始動します。
- サンプルを実行します。
- SecureLDAPSample プロジェクトをクリーンにします。
- コードを生成するには、SecureLDAPSample.eglbld にある SecureLDAPSampleWebBuildOptions ビルド記述子を使用します。
- WebSphere Application Server のインスタンスを右クリックします。
「プロジェクトの追加および除去」をクリックします。
- サーバーに SecureLDAPSampleEAR を追加し、「完了」をクリックします。
- WebSphere Application Server を始動して、セキュリティー構成を行います。
- サーバーを右クリックし、を選択します。
- 「アプリケーション」を展開し、「エンタープライズ・アプリケーション」をクリックします。
「エンタープライズ・アプリケーション」ページが表示されます。
- 「SecureLDAPSampleEAR」をクリックします。
「アプリケーション構成」ページが表示されます。
- 「Web モジュール・プロパティー」セクションで、「セッション管理」をクリックします。
「セッション管理」ページが表示されます。
- 「一般プロパティー」セクションで、「セキュリティー統合 (Security Integration)」をクリックします。
同じサーバー・インスタンスでサンプルを再度実行する場合、セキュリティー構成を繰り返す必要はありません。
- WebSphere Application Server を再始動します。
- SecureLDAPSample の WebContent フォルダーで、welcome.jsp を右クリックします。「実行」を選択してから「サーバーで実行」を選択します。
- ログイン・ページで、ユーザー ID ajones とパスワード pass を入力して、Sample Company の顧客として認証を受けます。次に、「OK」をクリックします。「Welcome to Sample Company」ページが開きます。ajones のデータの表示または更新のいずれかを行うことができます。
- 「Update」をクリックします。
- 一部のデータを変更し、「Update and display」をクリックします。変更がディレクトリーにコミットされます。
新規データがページに表示されます。
- サーバーおよびワークベンチを再始動します。
- サーバーで、welcome.jsp を実行し、ユーザー ID msmith とパスワード pass を使用して Sample Company の従業員としてログインします。データの表示または更新のいずれかを行うことができます。