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