パスワードのエンコードの目的は、サーバー構成およびプロパティー・ファイル内のパスワードが簡単に露呈するのを防ぐことです。
始める前に
管理コンソール内のすべてのサーバー・プロファイルが同一の IBM® i システム上にあることを確認します。
このタスクについて
デフォルトでは、パスワードは WebSphere® Application Server
のさまざまな ASCII 構成ファイル内で単純なマスキング・アルゴリズムにより自動的にエンコードされます。Java™
クライアントおよびアプリケーション・サーバー管理コマンドが使用するプロパティー・ファイル内でパスワードを手動でエンコードすることができます。
OS400 エンコード・アルゴリズムの説明については、
パスワードのエンコードおよび暗号化を参照してください。WebSphere Application Server
プロファイルの OS400 パスワード・エンコード・アルゴリズムを使用可能にするには、以下のステップを実行します。
手順
- os400.security.password プロパティーを設定して、OS400 パスワード・エンコード・アルゴリズムをオンにして、
使用する検証リスト・オブジェクトを指定します。
すべての WebSphere
Application Server プロファイルに対して同一の検証リスト・オブジェクトを使用します。
ただし、すべてのプロファイルのオブジェクトおよびデータを一度にバックアップしない場合はお勧めしません。各 WebSphere
Application Server プロファイルに対して使用する検証リスト・オブジェクトを決定する際は、
バックアップおよびリストアのポリシーを考慮してください。
プロパティーを設定するには、
以下のステップの 1 つを完了します。
- manageprofiles -create ユーティリティー
(app_server_root/bin ディレクトリーにある) の -os400passwords および -validationlist オプションを使用して、プロファイル作成時にプロパティーを設定します。
prod という名前の WebSphere
Application Server プロファイルを作成し、/QSYS.LIB/QUSRSYS.LIB/WAS.VLDL
検証リスト・オブジェクトを使用して OS400
エンコード・アルゴリズムに対してこのプロファイルを使用可能にするには、以下のステップを実行します。
- IBM i コマンド行で Start Qshell (STRQSH) コマンドを実行します。
- Qshell で次のコマンドを実行します。
app_server_root/bin/manageprofiles
-create -profileName prod -startingPort 10150
-templatePath default -os400passwords
-validationlist /QSYS.LIB/QUSRSYS.LIB/WAS.VLDL
上記のコマンドが複数行に分割されているのは、単に例を示すためだけです。
- WebSphere Application Server プロファイルの setupCmdLine Qshell スクリプトで、Java システム・プロパティーを設定します。
OS400 パスワード・エンコード・アルゴリズムを使用可能にするには、以下のステップを使用して profile_root/bin/setupCmdLine スクリプトを編集します。
- os400.security.password.encoding.algorithm プロパティーを OS400 に設定します。
デフォルト設定は XOR です。
- os400.security.password.validation.list.object プロパティーを、使用する必要がある検証リストの絶対名に設定します。デフォルト設定は /QSYS.LIB/QUSRSYS.LIB/EJSADMIN.VLDL です。
- ファイルを保存します。
- 検証リストを含むライブラリーに QEJB ユーザー・プロファイル実行権限 (*X) を権限付与します。 QEJB が既にライブラリーにアクセスするために最低限必要な権限 (*X) を持っている場合、次のステップに進みます。
- 検証リストが /QSYS.LIB/WSADMIN.LIB ファイル内で作成される場合、
Display Authority (DSPAUT) を使用して、最低限必要な権限をチェックします。
以下に例を示します。
DSPAUT OBJ('/QSYS.LIB/WSADMIN.LIB')
- QEJB プロファイルにこの権限が指定されていない場合に限り、Change Authority (CHGAUT) コマンドを使用して QEJB プロファイルに実行権限を権限付与します。
以下に例を示します。
CHGAUT OBJ('/QSYS.LIB/WSADMIN.LIB') USER(QEJB) DTAAUT(*X)
- 固有の検証リスト・オブジェクト (*VLDL) の作成。 このステップは、
サーバー・プロファイルのオプションです。検証リスト・オブジェクトは、サーバーの始動時に作成されます。リモート・プロファイルの場合、
リモート・プロファイルをホスティングするシステム上に検証リストが存在しない場合に検証リストを作成します。また、各リモート・プロファイルで使用する妥当性検査リスト・オブジェクトを決定する場合、バックアップおよびリストアのポリシーを考慮してください。
重要: OS400 パスワード・エンコード・アルゴリズムを使用する場合、
Java
クライアントは、そのクライアントがアクセスする
WebSphere
Application Server プロファイルが入っているのと同じ
IBM i
システム上にある必要はありません。
検証リスト・オブジェクトを作成するには、*ALLOBJ 特殊権限を持つ IBM i ユーザー・プロファイルを使用して、以下のステップに従います。
- *ALLOBJ 特殊権限を持つユーザー・プロファイルを使用してサーバーにサインオンします。
- Create Validation List (CRTVLDL) コマンドを使用して、検証リスト・オブジェクトを作成します。
例えば、
WSVLIST 検証リスト・オブジェクトを WSADMIN.LIB ライブラリーで作成するには、次のコマンドを使用します。
CRTVLDL VLDL(WSADMIN/WSVLIST)
- QEJB ユーザー・プロファイルの *RWX 権限を検証リスト・オブジェクトに権限付与します。 例えば、
*RWX 権限を WSADMIN ライブラリーの WSVLIST 妥当性検査リスト・オブジェクトに権限付与するには、次のコマンドを使用します。
CHGAUT OBJ('/QSYS.LIB/WSADMIN.LIB/WSVLIST.VLDL') USER(QEJB) DTAAUT(*RWX)
- Change System Value (CHGSYSVAL) コマンドを使用して、QRETSVRSEC システム値を 1 に設定します。 以下に例を示します。
CHGSYSVAL SYSVAL(QRETSVRSEC) VALUE('1')
- サーバー・プロファイルの場合、プロファイルに属するプロパティー・ファイル内のパスワードを手動でエンコードしようとする前に、サーバーを始動または再始動して、サーバーでサービスの準備が完了するまで待機します。
タスクの結果
OS400 パスワード・エンコード・アルゴリズムを使用可能にしました。
次のタスク
前のステップを完了し、サーバーを再始動したら、プロパティー・ファイル内でパスワードを手動でエンコードすることができます。詳しくは、
プロパティー・ファイルでの手動によるパスワードのエンコードを参照してください。