カスタム・パスワード暗号化の使用可能化

WebSphere® Application Server 構成に含まれるパスワードは保護する必要があります。サーバー・プロファイルの作成後、パスワード暗号化のためのカスタム・クラスを作成することにより、安全性を高めることができます。

始める前に

暗号化パスワードのカスタム・クラスを作成します。詳しくは、カスタム・パスワード暗号化のプラグ・ポイントを参照してください。

このタスクについて

以下のステップを実行して、カスタム・パスワード暗号化を使用可能にします。暗号化が必要なパスワードを格納するアプリケーション・サーバー・プロファイル内のファイルとそれらのナビゲーション・パスのリストについては、ファイル内のパスワードのエンコードを参照してください。

手順

  1. 各サーバーおよびクライアントのプロセスに以下のシステム・プロパティーを追加します。サーバー・プロセスの場合、各プロセスの server.xml ファイルを更新します。 以下のプロパティーを -D プレフィックスを先頭に付加した genericJvmArgument 引数として追加します。
    com.ibm.wsspi.security.crypto.customPasswordEncryptionClass=
           com.acme.myPasswordEncryptionClass
    com.ibm.wsspi.security.crypto.customPasswordEncryptionEnabled=true
    重要: wsadmin クライアントに関して、wsadmin を接続モードで使用する場合は、AdminTask.setJVMSystemProperties コマンドを使用するかコンソールを使用して、接続されているデプロイメント・マネージャーまたはサーバーでこのプロパティーを設定する必要があります。wsadmin をローカル・モード (conntype=NONE) で使用する場合は、以下のように javaoption コマンド・オプションを使用してこのプロパティーを設定できます。
    wsadmin -conntype none -lang jython -javaoption
    -Dcom.ibm.wsspi.security.crypto.customPasswordEncryptionClass=<encryptionClassToUse>
    ヒント: カスタム暗号化クラス名が com.ibm.wsspi.security.crypto.CustomPasswordEncryptionImpl の場合、 このクラスがクラスパスにあると自動的に有効になります。カスタム実装にこのパッケージとクラス名がある場合、 以前にリストされているシステム・プロパティーを定義しないでください。このクラスの暗号化を使用不可にするには、 システム・プロパティーに com.ibm.wsspi.security.crypto.customPasswordEncryptionEnabled=false を指定する必要があります。
  2. 以下のいずれかの方法を選択して、カスタム暗号化実装クラスをロードするように WebSphere Application Server ランタイムを構成します。
    • 作成した ${WAS_INSTALL_ROOT}/classes ディレクトリーにある Java™ アーカイブ (JAR) ファイル内にカスタム暗号化クラスを置きます。
      トラブルの回避 (Avoid trouble) トラブルの回避 (Avoid trouble): WebSphere Application Server は、${WAS_INSTALL_ROOT}/classes ディレクトリーを作成しません。classes ディレクトリーについて詳しくは、トピック『プロファイルでのカスタム・クラス用クラス・サブディレクトリーの作成』を参照してください。gotcha
    • ${WAS_HOME}/lib/ext ディレクトリーにある Java アーカイブ (JAR) ファイル内にカスタム暗号化クラスを置きます。
  3. すべてのサーバー・プロセスを再始動します。
  4. パスワードを含む各構成文書を編集して、構成を保存します。 その後、 すべてのパスワード・フィールドは、WSEncoderDecoder ユーティリティーを介して実行されます。このユーティリティーが有効の場合、プラグ・ポイントが呼び出されます。 構成文書内に {custom:alias} タグが表示されます。パスワードは、暗号化されていても Base64-encoded のままです。タグの違いを除き、これらはエンコードされたパスワードと同様に見えます。
  5. クライアント・サイド・プロパティー・ファイルに入っているすべてのパスワードを PropsFilePasswordEncoder (.bat または .sh) ユーティリティーを使用して暗号化します。 このユーティリティーでは、 以前にリストされたプロパティーが、新規パスワードをエンコードではなく暗号化するためにスクリプト内でシステム・プロパティーとして定義されていることが必要です。プロパティーを Java コマンド行に追加するには、スクリプトを編集する必要があります。以下に例を示します。
    %JAVA_EXE% -Dcom.ibm.wsspi.security.crypto.customPasswordEncryptionEnabled=true 
    -Dcom.ibm.wsspi.security.crypto.customPasswordEncryptionClass=mysample.MySampleEncryption 
    -Dcmd.properties.file=%TMPJAVAPROPFILE% 
    "-Dwas.install.root=%WAS_HOME%" com.ibm.ws.bootstrap.WSLauncher com.ibm.ws.security.util.PropFilePasswordEncoder %*
    PropsFilePasswordEncoder を使用して実行する必要があるファイルのリストについては、ファイル内のパスワードのエンコードの表 2 を参照してください。
  6. クライアント Java 仮想マシン (JVM) からパスワードを暗号化解除するには、以前にリストされているプロパティーを各クライアント・ユーティリティーのシステム・プロパティーとして追加します。
  7. この機能を使用可能化する前に、すべてのノードのクラスパスにカスタム暗号化クラスがあることを確認します。 使用可能化が発生する順序は重要です。新規ノードをパスワード暗号化を含むセルに追加する場合、addNode コマンドの使用の前に新規ノードにカスタム暗号化クラスが含まれている必要があります。以下の WebSphere Application Server Network Deployment 使用可能化シナリオを検討してください。
    1. StandAloneProfile プロファイルは、デプロイメント・マネージャー・セルへの統合の前に、異なる鍵でパスワードを暗号化しています。このシナリオの場合、 addNode コマンドの実行の前にカスタム・パスワード暗号化をアンインストールして、構成にパスワードの先頭に付加された {xor} タグがあることを確認します。 addNode コマンドの実行前に、 プラグ・ポイントの同じ実装が /classes ディレクトリーに入っている必要があります。 また、統合が完了した後に新規ノードが security.xml ファイルの暗号化されたパスワード・フォーマットを 認識できるように適正な構成プロパティーを設定します。
    2. StandAloneProfile プロファイルは、デプロイメント・マネージャー・セルへの統合の前にパスワード暗号化を構成しません。addNode コマンドの実行前に、 プラグ・ポイントの同じ実装が /classes ディレクトリーに入っている必要があります。 また、統合が完了した後に新規ノードが security.xml ファイルの暗号化されたパスワード・フォーマットを 認識できるように適正な構成プロパティーを設定します。
    3. 複数ノードが存在する 1 つのセルでカスタム・パスワード暗号化を使用可能にする場合、正しい構成プロパティーを更新し、カスタム・パスワード暗号化実装クラスをすべてのノードに配置します。セル内のすべてのプロセスを停止し、デプロイメント・マネージャーを始動します。管理コンソールを使用してセキュリティー構成を編集し、これを保管します。security.xml ファイルを参照して、 パスワードが暗号化されていることを検証し、パスワードの先頭に {custom:alias} タグが付加されていることを確認します。
    4. 各ノードで syncNode コマンドを実行して、それぞれを個別に開始します。ノードの開始に失敗する場合、 各 security.xml ファイル内でカスタム・パスワード暗号化が正しく使用可能化されていること、および実装クラスが各プラットフォームの適切な /classes ディレクトリーに入っていることを確認します。

タスクの結果

カスタム・パスワード暗号化が使用可能になります。

次のタスク

カスタム・パスワード暗号化が失敗する場合、または必要なくなった場合、カスタム・パスワード暗号化の使用不可化を参照してください。

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



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_enable_custpass_encrypt
ファイル名:tsec_enable_custpass_encrypt.html