سؤال

لدي شرط أنه عند إعادة تعيين كلمة مرور ، يجب أن تكون كلمة المرور الجديدة مختلفة عن كلمات المرور القديمة.أفكر في تصميم هذا ككائن مستخدم يحتوي على كائنات كلمة مرور متعددة وكائن كلمة المرور الذي يحتوي على معرف المستخدم وكلمة المرور وتاريخ الإنشاء.

عند إعادة تعيين كلمة المرور ، ستتحقق من كلمة المرور الجديدة مقابل جميع كلمات المرور القديمة (باستثناء أحدث كلمة مرور) للمستخدم وإذا تم العثور على تطابق ، فسيتم تجاهلها.

إذا لم يكن موجودا بالفعل في قائمة كلمات المرور القديمة ، فسيقوم بإنشاء إدخال جديد في قائمة كلمات المرور للمستخدم.عندما يقوم المستخدم بتسجيل الدخول ، يجب على النظام التحقق من أحدث كلمة مرور بناء على تاريخ الإنشاء.

أردت فقط التحقق من أفكارك حول هذا التصميم ومعرفة ما إذا كانت هناك طريقة أفضل للقيام بذلك.شكرا.

هل كانت مفيدة؟

المحلول

(باستثناء أحدث كلمة مرور)

لماذا أنت لا التحقق من ذلك ضد أحدث كلمة المرور?يرجى ملاحظة أنك ذكرت هذه الخطوة قبل تخزين كلمة المرور الجديدة بالفعل.لذلك يجب عليك التحقق من ذلك ضد جميع كلمات المرور القديمة.

هذا يبدو على ما يرام ، ولكن الخاص بك Password يجب أن تكون الملكية مملحة ومجزأة كلمة المرور ، وليس كلمة المرور الفعلية في نص عادي.

يجب عليك اختيار معيار (أي.قوية ومثبتة) خوارزمية مثل 2 أو بكريبت.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top