Mengimpor Pengguna Tanpa Atur Ulang Kata Sandi
Panduan migrasi identitas selalu mengatakan hal yang sama. Mereka mengatakan pengguna harus mengatur ulang kata sandi mereka. Ini bukanlah sebuah aturan. Ini adalah sebuah pilihan. Kebanyakan alat memilih jalan yang mudah alih-alih jalan yang benar.
Anda dapat melakukan migrasi pengguna tanpa pengaturan ulang. Anda hanya perlu memverifikasi hash kata sandi yang sudah ada. Jika Anda memiliki hash lama dan sistem baru Anda dapat membacanya, proses perpindahan tersebut akan tetap tidak terlihat.
Hash kata sandi bukanlah sebuah rahasia. Bcrypt adalah bcrypt. Ia membawa salt dan cost factor-nya sendiri. Sistem apa pun yang menggunakan bcrypt dapat memverifikasinya. PBKDF2 bekerja dengan cara yang sama. Jika Anda memiliki hash tersebut, Anda dapat memeriksa kata sandi terhadap hash tersebut tanpa perlu mengetahui kata sandi yang sebenarnya.
Gunakan lazy migration untuk menghemat waktu.
- Bawa hash lama ke sistem baru.
- Verifikasi hash saat pengguna masuk (login).
- Segera ganti dengan format baru.
Dalam beberapa minggu, database Anda akan memperbarui dirinya sendiri. Anda tidak akan menerima email pengaturan ulang kata sandi maupun tiket dukungan sama sekali.
Sumber yang berbeda menyediakan format yang berbeda.
Duende atau ASP.NET Identity yang di-host sendiri: Ini menggunakan V3 PBKDF2 atau bcrypt. Sistem baru dapat memverifikasi dan melakukan rehash dengan mudah. Ini adalah proses yang bersih.
Auth0: Ini menggunakan bcrypt. Anda dapat mengimpornya secara langsung. Namun, Anda tidak dapat mendapatkannya melalui API standar. Auth0 tidak mengembalikan hash melalui API demi keamanan. Anda harus meminta file ekspor massal (bulk export) dari dukungan mereka. File ini berisi hash bcrypt. Gunakan file ini agar migrasi tetap tidak terlihat.
Jika Anda tidak dapat mendapatkan hash tersebut, pengguna harus menyetel kata sandi baru. Ini adalah langkah cadangan yang jujur. Jangan biarkan sebuah alat memaksa pengaturan ulang jika Anda dapat menghindarinya.
Pengaturan ulang paksa menyebabkan masalah:
- Hal ini menciptakan beban dukungan yang tinggi.
- Hal ini melatih pengguna untuk mempercayai email phishing.
- Hal ini mengubah perubahan yang tenang menjadi masalah yang gaduh.
Migrasi yang baik seharusnya terasa seolah-olah tidak terjadi apa-apa. Tanyakan apakah Anda bisa mendapatkan hash lama sebelum Anda menyuruh pengguna untuk mengatur ulang kata sandi mereka.
Sumber: https://dev.to/authagonal/importing-users-without-a-password-reset-5h1j
