パスワードをリセットするとき、新しいパスワードは古いパスワードとは異なる必要があるという要件があります。これを、複数の Password オブジェクトを持つ User オブジェクトと、userId、password、および createdDate を含む Password オブジェクトとして設計することを考えています。
パスワードがリセットされると、ユーザーのすべての古いパスワード (最新のパスワードを除く) に対して新しいパスワードがチェックされ、一致が見つかった場合は破棄されます。
古いパスワードのリストにまだない場合は、ユーザーのパスワード リストに新しいエントリが作成されます。ユーザーがログインすると、システムは createdDate に基づいて最新のパスワードを確認する必要があります。
このデザインに関するあなたの考えを確認し、これを行うためのより良い方法があるかどうかを確認したかっただけです. ありがとう。