पासवर्ड रिसेट न करता युजर्स आयात करणे

आयडेंटिटी मायग्रेशन गाईड्स नेहमी एकच गोष्ट सांगतात. ते म्हणतात की वापरकर्त्यांनी त्यांचे पासवर्ड रिसेट करणे आवश्यक आहे. हा कोणताही नियम नाही. हा एक पर्याय आहे. बहुतेक साधने योग्य मार्गाऐवजी सोपा मार्ग निवडतात.

तुम्ही रिसेट न करता युजर्सना मायग्रेट करू शकता. तुम्हाला फक्त अस्तित्वात असलेले पासवर्ड हॅश (password hashes) व्हेरिफाय करण्याची गरज आहे. जर तुमच्याकडे जुने हॅश असतील आणि तुमची नवीन प्रणाली ते वाचू शकत असेल, तर ही प्रक्रिया वापरकर्त्यांना न कळता पार पडते.

पासवर्ड हॅश ही कोणतीही गुप्त गोष्ट नाही. Bcrypt हे Bcrypt च आहे. त्यामध्ये स्वतःचा salt आणि cost factor असतो. Bcrypt वापरणारी कोणतीही प्रणाली ते व्हेरिफाय करू शकते. PBKDF2 देखील त्याच पद्धतीने काम करते. जर तुमच्याकडे हॅश असेल, तर प्रत्यक्ष पासवर्ड न जाणून घेता तुम्ही त्या हॅशच्या आधारे पासवर्ड तपासू शकता.

वेळ वाचवण्यासाठी 'लेझी मायग्रेशन' (lazy migration) वापरा.

  • जुना हॅश नवीन प्रणालीमध्ये न्या.
  • वापरकर्ता लॉग इन केल्यावर हॅश व्हेरिफाय करा.
  • लगेच नवीन फॉरमॅटमध्ये तो बदलून टाका.

काही आठवड्यांत, तुमचा डेटाबेस आपोआप अपडेट होईल. तुम्हाला पासवर्ड रिसेटचे एकही ईमेल आणि एकही सपोर्ट तिकीट (support ticket) प्राप्त होणार नाही.

विविध स्रोत वेगवेगळे फॉरमॅट्स प्रदान करतात.

Self-hosted Duende किंवा ASP.NET Identity: हे V3 PBKDF2 किंवा bcrypt वापरतात. नवीन प्रणाली हे सहजपणे व्हेरिफाय आणि रीहॅश (rehash) करू शकते. ही एक सुटसुटीत प्रक्रिया आहे.

Auth0: हे bcrypt वापरतात. तुम्ही त्यांना थेट आयात करू शकता. तथापि, तुम्ही ते स्टँडर्ड API द्वारे मिळवू शकत नाही. सुरक्षेच्या कारणास्तव Auth0 API द्वारे हॅश परत करत नाही. तुम्हाला त्यांच्या सपोर्टकडून बल्क एक्सपोर्ट फाईलची (bulk export file) विनंती करावी लागेल. या फाईलमध्ये bcrypt हॅश असतात. मायग्रेशन प्रक्रिया वापरकर्त्यांना न कळता पार पाडण्यासाठी या फाईलचा वापर करा.

जर तुम्हाला हॅश मिळू शकले नाहीत, तर वापरकर्त्यांना नवीन पासवर्ड सेट करावा लागेल. हा एक प्रामाणिक पर्याय (fallback) आहे. शक्य असल्यास, कोणत्याही टूलला तुमच्यावर रिसेट करण्यासाठी भाग पाडू नका.

Forced resets मुळे समस्या निर्माण होतात:

  • यामुळे सपोर्टचा भार वाढतो.
  • यामुळे वापरकर्ते फिशिंग (phishing) ईमेलवर विश्वास ठेवण्यास शिकतात.
  • यामुळे एक शांत बदल गोंधळ निर्माण करणाऱ्या समस्येत रूपांतरित होतो.

एक चांगली मायग्रेशन प्रक्रिया अशी असावी की जणू काही काहीच घडले नाही. वापरकर्त्यांना पासवर्ड रिसेट करण्यास सांगण्यापूर्वी, तुम्हाला जुने हॅश मिळू शकतील का, याची खात्री करून घ्या.

Source: https://dev.to/authagonal/importing-users-without-a-password-reset-5h1j