インターフェース PasswordHash
- すべての既知のサブインターフェース:
Pbkdf2PasswordHash
public interface PasswordHash
PasswordHash は、パスワードハッシュを生成および検証できるオブジェクトのインターフェースです。DatabaseIdentityStoreDefinition アノテーションの型を構成することにより、組み込みデータベース IdentityStore の PasswordHash の実装が構成されます。PasswordHash のパラメーターもアノテーションで構成でき、IdentityStore が初期化されるときに initialize(Map) メソッドに渡されます。
メソッドのサマリー
メソッドの詳細
initialize
パスワードハッシュの生成と確認に使用するパラメーターでインスタンスを初期化します。パラメーターは、DatabaseIdentityStoreDefinition.hashAlgorithmParameters()属性で指定された名前と値のペアです。実装はパラメーターをサポートする必要はなく、渡されたパラメーターを無視する場合があります。新しいパスワードハッシュを生成するときに実装が指定されたパラメーターを使用するが、検証時に既存のパスワードハッシュと共に保存されるパラメーターを優先して無視することも可能です。
パラメーターが指定されていない場合、引数は空の
MapSE です。- パラメーター:
parameters- 指定されたパラメーターのMapSE。パラメーターが指定されなかった場合は空になります。
generate
ユーザーのアカウントに保存するためのエンコードされたパスワードハッシュ値を生成します。このメソッドを使用して、検証目的でパスワードハッシュを生成しないでください。そのために
verify(char[], String)を使用します。このメソッドは、新しいパスワードまたは変更されたパスワードのパスワードハッシュを生成する場合にのみ使用してください。返されたハッシュ値は完全にエンコードする必要があります。そのため、追加のフォーマットやエンコードを適用せずに、そのまま直接格納できます。
- パラメーター:
password- ハッシュを生成するパスワード。- 戻り値:
- 生成されたパスワードハッシュ値。
verify
ユーザーのアカウントから取得したハッシュ化されたパスワード値に対してパスワードを確認します。hashedPasswordパラメーターは、データベースから取得したとおりに提供する必要があります。デコードやフォーマットは適用されません。passwordパラメーターをハッシュして、ハッシュされたパスワードと比較する必要があります。- パラメーター:
password- 確認するパスワード。hashedPassword- 比較するハッシュ化されたパスワード。- 戻り値:
- パスワードがハッシュされたパスワードと一致する場合は true、それ以外の場合は false。