PHPMaker menyediakan fitur berupa User Login Options yang memungkinkan Web Developer membuat aplikasi berbasis web yang dilengkapi dengan sistem pendaftaran Pengguna (user registration system) yang sangat lengkap. Ada empat fitur utama lainnya yang disediakan dari User Login Options, yaitu: Pendaftaran Pengguna, Login, Ganti Kata Sandi, dan Reset Kata Sandi. Semuanya itu bisa dihasilkan oleh PHPMaker dengan sangat mudah, cepat, dan lagi-lagi… menyenangkan! 🙂
Untuk halaman Login, tersedia beberapa pilihan yang bisa diaktifkan untuk di-generate dari aplikasi web oleh PHPMaker. Pilihan Track failed attempts memungkinkan aplikasi web mendeteksi atau merekam usaha-usaha kegagalan yang terjadi saat Pengguna berusaha login. Jumlah maksimum kegagalan saat berusaha Login tersebut pun bisa dibatasi melalui pilihan Maximum failed attempts. Contoh, jika Anda ingin agar aplikasi web otomatis mengunci akun Pengguna jika gagal login sebanyak tiga kali, maka Anda cukup menentukan nilai tersebut pada pilihan ini.
Selanjutnya, PHPMaker juga menyediakan pengaturan Failed attempts window (minutes) untuk menentukan waktu dalam satuan menit yang digunakan untuk mendeteksi terjadinya usaha login yang gagal tadi. Contoh, jika Anda menentukan nilai pada pengaturan ini sebesar 5, maka itu artinya aplikasi web yang Anda buat nantinya akan mendeteksi usaha-usaha login yang dilakukan oleh seorang Pengguna dalam kurun waktu 5 menit. Jika selama kurun waktu 5 menit itu terjadi kegagalan sebanyak tiga kali, maka akun Pengguna akan otomatis dikunci oleh sistem.
Ada lagi pilihan Disallow concurrent login yang jika diaktifkan maka di aplikasi web Anda hanya akan mengijinkan satu session untuk setiap satu Pengguna (tidak berlaku untuk login Administrator melalui fitur Administrator Login (Hard-coded)). Artinya, jika Pengguna sudah berhasil login, maka Pengguna lainnya yang berusaha login menggunakan akun Pengguna yang sudah berhasil login tadi akan ditolak oleh sistem. Dalam hal ini, Pengguna dibedakan oleh Session ID oleh web server. Jika Pengguna login lagi di jendela atau tab lain dari browser Pengguna, maka Pengguna tersebut masih tetap dalam posisi login. Jika Pengguna login kembali dengan menggunakan browser lainnya atau dari komputer yang lain, maka Session ID menjadi berbeda, dan sistem akan menolak login tersebut jika pilihan Disallow concurrent login tadi diaktifkan.
PHPMaker menyediakan pengaturan Login status timeout (minutes) berupa lamanya waktu idle (dalam satuan menit) status login akan dipertimbangkan sebagai status logout, sehingga login akan diijinkan kembali. Artinya, jika seorang Pengguna yang statusnya sedang login tidak melakukan logout secara eksplisit (misalnya, dia menutup jendela browser secara langsung), maka dalam hal ini session Pengguna belum dibersihkan, dan dalam hal ini status login Pengguna masih dalam posisi sedang login di sistem. Jika Pengguna tersebut berusaha untuk login lagi, maka sistem akan menolak. Nah, pengaturan nilai di Login status timeout (minutes) ini akan memastikan login akan diijinkan kembali setelah periode waktu idle tadi.
Di halaman Login dari aplikasi web yang dibangkitkan oleh PHPMaker juga tersedia pilihan untuk menampilkan CAPTCHA (kode keamanan yang ditampilkan berupa image). CAPTCHA tersedia dalam bentuk extensions di PHPMaker. Artinya, Anda dapat mengaktifkan fitur ini setelah Anda memastikan sudah mengaktifkan extension CAPTCHA yang disediakan oleh PHPMaker hanya untuk mereka yang sudah membeli PHPMaker dan terdaftar sebagai registered users di website mereka.
Pilihan lainnya di sistem Login pada aplikasi web adalah MD5 password. Anda dapat menentukan apakah password atau kata sandi yang tersimpan di database nantinya dalam format hash MD5 atau tidak. Ada juga pilihan apakah ingin mengaktifkan penggunaan Case-sensitive password. Lalu ada pilihan apakah password memiliki umur atau masa berlaku melalui pengaturan Enable password expiry. Jika masa berlaku password sudah habis, maka sistem akan memaksa Pengguna untuk mengganti password-nya. Jika password tidak diganti, maka Pengguna tidak akan pernah bisa melanjutkan pekerjaan di aplikasi web tersebut. Lamanya password expired dalam satuan hari bisa ditentukan melalui pengaturan Password expiry time (days).
Rijal mengatakan
Pak Masino Bagaimana cara mengatur “Logout Otomatis”” , misalnya sdh diatur 10 menit,
Maka jika selama 10 menit user tidak melakukan Aktivitas/ komputer ditinggal (lupa logout), maka sistem otomatis Logout dengan sendirinya (untuk keamanan).
Terimakasih.
Masino Sinaga mengatakan
Caranya mudah sekali. Cukup dengan menggunakan Masino Extensions untuk project PHPMaker Anda. 🙂
Rijal mengatakan
Kalo mendownload “Masino Extensions” berbayar berarti ya Pak ? hehe….
berarti Project bawaan PHP Maker tidak menyertakan Fitu itu ya Pak, sy kira Fitur ” Login Status Timeout (minutes) ” itu bisa berfungsi untuk “Logout otomatis” berdasarkan waktu yg ditentukan.
Masino Sinaga mengatakan
Iya, Masino Extensions berbayar. 🙂
Kalau fitur Login status timeout (minutes) itu adalah jumlah waktu durasi idle (dalam satuan menit) setelah status login akan dianggap sebagai logout dan login akan diijinkan kembali.
Artinya, jika user yang sedang login tidak melakukan logout secara eksplisit (misalnya dia menutup jendela browser secara langsung), maka session user tersebut belum ditutup, sehingga statusnya masih dianggap login. Usaha-usaha untuk mencoba login kembali menjadi gagal. Nah, waktu timeout ini memastikan login akan diijinkan lagi setelah nilai durasi waktu idle yang ditentukan pada pengaturan tadi.
Galandi Michael mengatakan
Dear Master Masino,
I would like to knoe if PHPMaker supports authentication in Postgresql against the system user table (that is to sat pg_authid).
As opposed to the LDAP Authentication I would like to know if I can authenticate against the Postgresql Database system and not authentication against a table in the database being used for the project.
Thanks
Michael
Masino Sinaga mengatakan
I don’t think you can use the authenticate that belongs to Postgresql Database system only. Since PHPMaker uses the Advanced Security that depends on the users table in the database that being used for the project, then you should use that users table, too.
In addition, this users table has several fields that related to some Advanced Security features, such as User Level (for protecting tables), User ID (for protecting records), User Profile (for saving the additional info such as session id, max of retry login, etc), and many more.
tedi mengatakan
Cara membayarnya harus pake paypal ya pak ?? saya kan gak punya paypal.. hehe
terus, apakah ada support nya setelah kita mebeli extension tsb ? saya memakai phpmaker 10.
Tks ya pak
Masino Sinaga mengatakan
Kalau begitu sudah saatnya membuat akun Paypal, hehehe… 🙂
Support tentu ada jika membeli Masino Extensions.
Eka Dalas Pangestu mengatakan
Pak masino mengapa saat saya mengetik username menggunakan huruf besar atau kecil dia tidak berpegaruh ya pak
contoh :
username yang ada didatabase : adam
seharusnya jika kita masukan login dengan username menggunakan huruf besar yaitu : ADAM
maka akan eror, tapi mengapa phpmaker tetap masuk juga ya
Eka Dalas Pangestu mengatakan
apakah ada case sensitife username pak
Masino Sinaga mengatakan
Username selalu case-sensitive di PHPMaker.