Selama pembuatan akun, apakah lebih baik membuat kata sandi secara otomatis dan mengirimkannya ke pengguna, atau membiarkan pengguna membuat kata sandinya sendiri?

11

Pertanyaan ini muncul hari ini ketika berdiskusi dengan seorang kolega tentang halaman 'buat akun' untuk situs web yang sedang kami kerjakan.

Pendapat kolega saya adalah bahwa kita harus membuat registrasi secepat dan semulus mungkin, oleh karena itu kita hanya perlu meminta email kepada pengguna dan mengurus sisanya.

Saya setuju dengan niat tersebut, tetapi saya memiliki beberapa kekhawatiran tentang hal itu:

  • Karena kami membuat kata sandi, kami memiliki tanggung jawab untuk memastikan kata sandi cukup kuat
  • Dalam pengalaman saya, ketika dihadapkan dengan kata sandi yang tidak dapat dipahami, pengguna cenderung menuliskannya pada posting itu
  • Para pengguna yang tidak menuliskan kata sandi, kemungkinan besar akan melupakannya. Yang berarti mereka harus meminta kata sandi baru secara teratur, dan itu tidak menyenangkan bagi siapa pun

Namun, mengingat kualitas umum kata sandi yang dibuat oleh pengguna, dan fakta bahwa terlalu banyak orang cenderung menggunakan kata sandi yang sama untuk semuanya ('shudders'), saya bisa melihat bagaimana masuk akal untuk menghasilkan kata sandi yang kuat untuk mereka.

Saya masih merasa terkoyak tentang hal itu. Kami sedang mengerjakan situs web pedagang di mana pengguna memiliki opsi untuk menyimpan detail kartu kreditnya, jadi jelas sangat penting bahwa kami menggunakan pendekatan yang paling aman.

Dryr
sumber
3
Saya kira seseorang harus merujuk ini: xkcd: Kekuatan Kata Sandi
candied_orange
Referensi @KandledOrange Obligatory XKCD
Dryr
11
Sebagai konsumen, saat saya menggunakan situs Anda dan Anda membuat kata sandi untuk saya adalah saat saya menghapus akun saya.
Eric King
4
Mungkin pertanyaan ini lebih cocok untuk Pengalaman Pengguna SE . Sudah ada pertanyaan serupa dengan jawaban yang menarik juga: Apakah Anda menyingkirkan bidang kata sandi dalam formulir pendaftaran .
masukkan nama pengguna di sini
19
Email bukan saluran komunikasi yang aman. Jangan mengirim kata sandi melalui email. Token yang hanya valid untuk waktu singkat (mis. 24 jam) mungkin baik-baik saja. Anda tidak dapat menghindari kata sandi, tetapi Anda dapat mendorong penggunaan pengelola kata sandi: perangkat lunak khusus, fitur peramban "ingat kata sandi saya", dan buku catatan fisik semua strategi yang sah. Memberikan kata sandi tidak mendorong kebiasaan keamanan yang baik. Selain itu, terapkan opsi masuk seperti "masuk dengan Google" tempat Anda tidak menyimpan kata sandi. Gunakan pemroses pembayaran eksternal sehingga saya tidak harus mempercayai situs Anda dengan detail pembayaran saya.
amon

Jawaban:

11

Keuntungan dari pendekatan email adalah Anda memastikan dengan cara ini bahwa pengguna memberikan akun email yang valid yang dia kontrol.

Namun, saluran email ini terkenal tidak aman. Ini berarti bahwa kata sandi dapat dicegat. Jadi pendekatan ini hanya harus dipertimbangkan jika kata sandi yang dihasilkan hanya digunakan sekali, pada saat login pertama, dan jika dipastikan bahwa pengguna harus mengubahnya.

Pendekatan langsung lebih aman, dalam arti bahwa koneksi tls / ssl ke situs web Anda jauh lebih sulit untuk dicegat tanpa diketahui.

Christophe
sumber
2
Biasanya, kedua pendekatan tersebut digunakan bersama-sama: masukkan email dan kata sandi, lalu terima email yang berisi tautan aktivasi.
mouviciel
@mouviciel ya, en effet. Pendekatan dua langkah dengan kata sandi dan tautan ini tampaknya menjadi pendekatan yang paling umum digunakan, dan tentunya bukan tanpa alasan :-) Ini lebih aman, karena secara umum tautan aktivasi hanya digunakan untuk aktivasi dan bukan untuk login. Untuk OP, ini akan memerlukan pengembangan logika untuk mengirim tautan aktivasi dan pelacakan aktivasi pada akun.
Christophe