パスワードの保護は 2 つのプロパティーで制御されます。この 2 つのプロパティーを 構成することで、カスタム・パスワード暗号化のプラグ・ポイントを有効にすることができます。
カスタム暗号化クラスの暗号化オペレーションが呼び出され、それによってランタイム例外または定義済みの PasswordEncryptException 例外が作成されると、WebSphere Application Server ランタイムは {xor} アルゴリズムを使用してパスワードをエンコードします。 このエンコードによって、パスワードがプレーン・テキストで保管されるのを防ぎます。 カスタム・クラスに伴う問題が解決された後、構成文書を次に保管するときに、パスワードは自動的に暗号化されます。
ユーザー ID およびパスワードに RunAs ロールが割り当てられている場合は、現在では WebSphere Application Server のエンコード機能を使用してエンコードされます。 したがって、パスワードを暗号化するようにカスタム・プラグ・ポイントを構成すると、そのパスワードは RunAs バインディング用にも暗号化されます。 デプロイされたアプリケーションが、同一の暗号鍵を持たないセルに移動された場合や、カスタム暗号化がまだ使用可能になっていない場合は、パスワードを読み取ることができないため、ログインに失敗します。
カスタム・パスワード暗号化をインプリメントする場合は、暗号鍵を管理する責任があります。このクラスは、暗号化された任意のパスワードを暗号化解除する必要があります。 パスワードの暗号化解除に失敗すると、そのパスワードは使用できなくなり、構成でパスワードを変更することが必要となります。それらの鍵を使用するパスワードがなくなるまで、すべての暗号鍵を暗号化解除に使用できる必要があります。 カスタム・パスワード暗号化クラスによってマスター秘密を保守し、暗号鍵を保護する必要があります。
マスター秘密は鍵ストアの stash ファイルを使用するか、パスワード・ロケーターを使用して管理することができます。 パスワード・ロケーターは、カスタム暗号化クラスを使用可能にしてパスワードを位置指定し、そのパスワードをロックできるようにします。