கடவுச்சொல் மாற்றங்கள் இன்றி பயனர்களை இறக்குமதி செய்தல்
அடையாள இடமாற்ற வழிகாட்டிகள் (Identity migration guides) எப்போதும் ஒரே விஷயத்தையே சொல்கின்றன. பயனர்கள் தங்கள் கடவுச்சொற்களை மாற்ற வேண்டும் என்று அவை கூறுகின்றன. இது ஒரு விதி அல்ல. இது ஒரு விருப்பத்தேர்வு மட்டுமே. பெரும்பாலான கருவிகள் சரியான பாதையைத் தேர்ந்தெடுப்பதற்குப் பதிலாக, எளிதான பாதையைத் தேர்ந்தெடுக்கின்றன.
கடவுச்சொல் மாற்றமின்றி பயனர்களை நீங்கள் இடமாற்றம் செய்யலாம். தற்போதுள்ள கடவுச்சொல் ஹாஷ்களை (password hashes) சரிபார்க்க வேண்டியது மட்டுமே உங்கள் தேவை. உங்களிடம் பழைய ஹாஷ்கள் இருந்து, உங்கள் புதிய அமைப்பால் அவற்றை வாசிக்க முடிந்தால், இந்த மாற்றம் பயனர்களுக்குத் தெரியாமலேயே நடந்துவிடும்.
கடவுச்சொல் ஹாஷ் என்பது ஒரு ரகசியம் அல்ல. Bcrypt என்பது Bcrypt தான். அது அதன் சொந்த salt மற்றும் cost factor-ஐக் கொண்டுள்ளது. Bcrypt பயன்படுத்தும் எந்தவொரு அமைப்பாலும் அதைச் சரிபார்க்க முடியும். PBKDF2-ம் அதேபோலவே செயல்படுகிறது. உங்களிடம் ஹாஷ் இருந்தால், உண்மையான கடவுச்சொல்லைத் தெரியாமலேயே அதைச் சரிபார்க்க முடியும்.
நேரத்தைச் சேமிக்க lazy migration முறையைப் பயன்படுத்துங்கள்.
- பழைய ஹாஷை புதிய அமைப்பிற்கு கொண்டு செல்லுங்கள்.
- பயனர் உள்நுழையும் போது ஹாஷைச் சரிபார்க்கவும்.
- உடனடியாக அதை ஒரு புதிய வடிவத்திற்கு மாற்றவும்.
சில வாரங்களில், உங்கள் தரவுத்தளம் (database) தானாகவே புதுப்பிக்கப்படும். உங்களுக்கு எந்த கடவுச்சொல் மாற்ற மின்னஞ்சல்களோ அல்லது ஆதரவு கோரிக்கைகளோ (support tickets) வராது.
வெவ்வேறு ஆதாரங்கள் வெவ்வேறு வடிவங்களை வழங்குகின்றன.
Self-hosted Duende அல்லது ASP.NET Identity: இவை V3 PBKDF2 அல்லது bcrypt-ஐப் பயன்படுத்துகின்றன. புதிய அமைப்பால் இவற்றை எளிதாகச் சரிபார்க்கவும், மீண்டும் ஹாஷ் செய்யவும் (rehash) முடியும். இது ஒரு தெளிவான செயல்முறை.
Auth0:
இவை bcrypt-ஐப் பயன்படுத்துகின்றன. நீங்கள் அவற்றை நேரடியாக இறக்குமதி செய்யலாம். இருப்பினும், ஒரு சாதாரண API மூலம் அவற்றை உங்களால் பெற முடியாது. பாதுகாப்புக் காரணங்களுக்காக Auth0 தனது API மூலம் ஹாஷ்களைத் திருப்பித் தருவதில்லை. நீங்கள் அவர்களின் ஆதரவு குழுவிடம் (support) ஒரு bulk export file-ஐக் கோர வேண்டும். இந்த கோப்பில் bcrypt ஹாஷ்கள் இருக்கும். இடமாற்றத்தை பயனர்களுக்குத் தெரியாமல் வைத்திருக்க இந்த கோப்பைப் பயன்படுத்தவும்.
உங்களால் ஹாஷ்களைப் பெற முடியாவிட்டால், பயனர்கள் புதிய கடவுச்சொல்லை அமைக்க வேண்டும். இது ஒரு நேர்மையான மாற்று வழிமுறை. உங்களால் தவிர்க்க முடிந்தால், ஒரு கருவி உங்களைச் சம்மதிக்காமல் கடவுச்சொல்லை மாற்றக் கட்டாயப்படுத்துவதை அனுமதிக்காதீர்கள்.
கட்டாய மாற்றங்கள் சிக்கல்களை உருவாக்குகின்றன:
- அவை அதிகப்படியான ஆதரவுச் சுமைகளை (support loads) உருவாக்குகின்றன.
- அவை பயனர்களை ஃபிஷிங் (phishing) மின்னஞ்சல்களை நம்புவதற்குப் பழக்குகின்றன.
- அவை ஒரு அமைதியான மாற்றத்தை ஒரு பெரிய பிரச்சனையாக மாற்றுகின்றன.
ஒரு சிறந்த இடமாற்றம் என்பது எதுவும் நடக்காதது போன்ற உணர்வைத் தர வேண்டும். பயனர்களிடம் கடவுச்சொல்லை மாற்றச் சொல்வதற்கு முன், பழைய ஹாஷ்களைப் பெற முடியுமா என்று கேட்டுக்கொள்ளுங்கள்.
Source: https://dev.to/authagonal/importing-users-without-a-password-reset-5h1j
