Sudah bukan rahasia lagi bahwa faktor keamanan aplikasi adalah salah satu dari sekian banyaknya faktor yang tak kalah penting dalam bidang pengembangan aplikasi berbasis web. Mari kita lebih spesifik lagi. Mari kita membahas pada faktor pentingnya pengamanan akun pengguna melalui penerapan kebijakan password (kata sandi) yang kuat (strong password policy) di sebuah aplikasi.
Tentu di aplikasi web yang sudah dikembangkan, kita tidak menginginkan kejadian pengguna yang tiba-tiba melaporkan bahwa akunnya di-hack. Lho, kok bisa? Bagaimana mungkin akun pengguna di aplikasi web yang kita kembangkan bisa di-hack orang? Tentu saja bisa, jika kita sebagai developer tidak menerapkan strong password policy di aplikasi yang kita bangun. Siapapun bisa menebak password pengguna yang tingkat kekuatannya sangat lemah. Misalnya: password si pengguna hanya: 1234.
Kejadian di-hack-nya akun pengguna ini pada akhirnya akan diketahui ketika si pengguna tidak bisa login, lalu mencoba mereset password-nya. Tapi, hasil reset password tidak kunjung datang juga ke emailnya. Selidik punya selidik oleh admin (setelah si pengguna melapor ke admin), ternyata email si pengguna sudah diubah oleh orang yang meng-hack akun si pengguna tadi. Inilah penyebab mengapa hasil reset password akhirnya tidak akan pernah sampai ke email asli pengguna yang di-hack tadi!
Bayangkan jika hal tersebut terjadi di aplikasi yang sudah Anda kembangkan dengan bersusah payah, maka Anda sebagai developer-nyalah yang akan menjadi “kambing hitam”-nya (sekalipun tidak ada seorang pun pengguna yang mengatakan kepada Anda!). Biar bagaimanapun, peran si developer-lah di sini yang ikut menentukan tingkat keamanan akun penggunanya. Tentu kita tidak menginginkan kejadian buruk ini menimpa pengguna aplikasi tersebut, bukan? Lalu apa solusinya? Sederhana saja, sih (itupun kalau kita masih peduli). Bagi Anda yang berprofesi sebagai web developer dan belum menerapkan strong password policy di aplikasi yang Anda buat, maka mulai detik ini segeralah menerapkan kebijakan kekuatan kata sandi tersebut. Jangan ditunda-tunda lagi, karena lebih cepat lebih baik!
Biasanya, di aplikasi berbasis web yang sudah menerapkan kebijakan ini, pasti akan menampilkan password strength meter (ukuran kekuatan kata sandi) untuk mendorong (baca: memaksa) pengguna menginput kata sandi yang tingkat kekuatannya relatif tinggi. Password strength meter ini biasanya sering kita lihat di form pendaftaran akun pengguna aplikasi, atau di form penggantian password. Jadi, ketika pengguna sedang mengetikkan password-nya, maka ukuran kekuatan password yang sedang diketik tersebut bisa langsung terdeteksi.
Bahkan, di beberapa aplikasi yang menerapkan kebijakan password yang relatif ketat, maka password tersebut harus mengandung kombinasi huruf besar, huruf kecil, angka, dan karakter simbol. Sedangkan untuk penggantian password, maka password yang baru tidak boleh sama dengan password yang lama. Tidak hanya berhenti di situ saja, ada juga aplikasi yang menerapkan kebijakan masa berlaku password. Contoh, masa berlaku password hanya 30 hari, dihitung sejak password tersebut dibuat atau diubah. Jika password sudah kadaluarsa, maka pengguna dipaksa untuk mengganti password-nya sesaat mereka telah berhasil login ke aplikasi. Jika pengguna tetap tidak mengganti password-nya, maka mereka tidak akan pernah bisa mengoperasikan aplikasi seperti biasa.
Menurut hemat saya, penerapan kebijakan kata sandi yang kuat ini memang sudah selayaknya menjadi fitur yang wajib harus ada di aplikasi berbasis web. Bahkan, sudah saatnya client yang memesan suatu aplikasi berbasis web yang akan menggunakannya di perusahaan tempat dia bekerja, wajib menanyakan apakah fitur strong password policy ini sudah ada atau belum. Lebih baik lagi jika developer bisa melengkapi fitur ini dengan menu pengaturan untuk menentukan tingkat kekuatan password yang akan diterapkan. Artinya, kebijakan kata sandi yang kuat ini bersifat fleksibel. Pengguna aplikasi yang memiliki level admin bisa menerapkan kebijakan kata sandi yang kuat tadi sesuai dengan kebijakan perusahaannya.
Sudahkah di aplikasi web yang Anda buat menerapkan strong password policy?
[…] berbasis web yang wajib diperhatikan mengenai betapa pentingnya mendorong Pengguna agar menggunakan password dengan tingkat kekuatan yang tinggi, maka kini saatnya kita membahas mengenai faktor keamanan yang […]