Skip to main content

Keamanan pada JavaEE 6

Pada umumnya, sebuah aplikasi web harus memiliki kemampuan untuk menangani halaman yang boleh diakses atau tidak oleh user-user tertentu. Untuk itu, diperlukan suatu pengamanan yang akan di set di application server dimana aplikasi akan di deploy.

Pada JavaEE, informasi keamanan dapat disimpan dalam bentuk sebuah file sederhana,  database relational,  repository LDAP, atau tipe penyimpanan lainnya.
Pada Glassfish, ada 4 cara untuk mengotentikasi user yaitu:

1. Basic Authentication
Ketika user mengakses halaman yang memiliki basic authentication, browser akan memunculkan sebuah popup yang berfungsi untuk menerima input berupa username dan password.
Kelebihan menggunakan metode ini salah satunya karena metode ini merupakan metode yang paling mudah untuk diimplementasikan. Kekurangannya, metode ini tidak melakukan enkripsi pada password, dan halaman login yang tidak menarik. Kekurangan lainnya dari metode ini ialah tidak ada cara lain untuk logout kecuali dengan cara menutup browser.

2. Digest Authentication
Metode ini hampir sama dengan metode Basic authentication, bedanya metode ini melakukan enkripsi pada password ketika dikirimkan ke server. Metode ini tidak banyak digunakan, karena banyak application server yang tidak mendukung metode ini.

3. Client Side Certificate
Biasanya, sertifikat (certificate) keamanan yang dimaksud disini diterbitkan oleh salah satu pemilik sertifikat keamanan seperti Verisign atau Thawte.
Client side certificate merupakan sebuah file yang disimpan di media penyimpanan (hard drive) dari user. Browser dari user ini, harus dikonfigurasi sedemikian rupa agar dapat menggunakan client side certificate untuk melakukan otentikasi. Metode ini cenderung sangat aman, namun jarang dipakai.

4. Form-based Authentication
Metode ini merupakan metode yang paling banyak digunakan untuk melakukan otentikasi. Ketika menggunakan metode ini, diperlukan sebuah halaman JSP atau HTML yang dirancang sedemikian rupa agar dapat menerima data credential input dari user. Keuntungan menggunakan metode ini ialah user dapat merancang halaman login secara bebas, apakah halaman login akan dibuat rumit atau sebaliknya. Selain itu, halaman login yang dibuat oleh user dapat lebih mudah untuk dirancang untuk melakukan enkripsi nama dan password menggunakan HTTPS (HTTP over SSL).

Comments

Popular posts from this blog

Mengembalikan user 'root' yang terhapus pada mysql (ubuntu server)

untuk mengembalikan user root yang tidak sengaja terhapus, berikut langkah2 nya: stop service mysql terlebih dahulu dengan perintah berikut: sudo /etc/init.d/mysql stop kemudian jalankan kembali service mysql dengan perintah berikut: sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking & masuk ke service mysql dengan cara : mysql -u root kemudian jalankan perintah berikut: FLUSH PRIVILEGES; kemudian jalankan perintah berikut untuk menambahkan user root yang baru: GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION; terakhir, lakukan reboot server anda.

MDI Form pada Java Swing dengan editor Netbeans

Buat project baru dengan menggunakan editor NetBeans. Pada Categories pilih Java , dan pada Projects pilih Java Application. Kemudian klik tombol Next . Pada Window berikutnya, isi nama project pada Project Name . Dalam tutorial ini, nama projectnya adalah JavaApplication1 . Hilangkan tanda centang pada opsi “ Create Main Class ”. Setelah project terbentuk, klik kanan pada Source Packages dan pilih New kemudian pilih Java Package . Pada contoh ini, nama package diisi dengan “ mdiform ”. Klik kanan pada package mdiform yang baru kita buat, kemudian pilih New dan pilih JFrame Form . Berikan nama FrameUtama sebagai nama kelas. Kemudian pada tab Pallete di sebelah kanan drag objek Desktop Pane ke dalam frame yang baru kita buat. Lakukan hal yang sama terhadap objek Menu Bar pada Pallete . Drag ke dalam frame yang kita buat sebelumnya.  Atur tata letak Desktop Pane dan Menu Bar sehingga tampila...

ORM vs Native SQL

ORM (Object relational mapping) merupakan sebuah metode atau framework dimana setiap tabel pada database akan dipetakan menjadi kelas-kelas. Terdapat berbagai produk ORM yang populer seperti Hibernate, JPA, TopLink dan lainnya. Mengapa menggunakan ORM? Apa kita harus menggunakan ORM? Apakah lebih baik dibandingkan menggunakan Native SQL? Kelebihan menggunakan ORM: Coding lebih mudah dibaca dan dimaintain, karena ORM menerapkan gaya penulisan OOP. Dapat menyesuaikan format jam dan tanggal sesuai kebutuhan database. Kita tahu bahwa format jam dan tanggal di MySQL tentu berbeda dengan MSSQL atau Oracle. Dengan menggunakan ORM, mempermudah kita melakukan migrasi database. Dalam beberapa kasus, ORM memproses query lebih cepat dibandingkan native SQL karena ORM memiliki caching tersendiri. Dan lainnya.. :) Kekurangan ORM: ORM membutuhkan memori yang besar. Karena setiap pemetaan akan diwakilkan oleh sebuah Objek. Secara umum, performance ORM sebenarnya lebih lambat dibandingkan ...