Apache Shiro, Amankan Aplikasimu Agar Tidak Mudah Diretas

Yana Permana 17 Maret 2015

Apache Shiro, Amankan Aplikasimu Agar Tidak Mudah Diretas

Dalam mengembangkan aplikasi dibutuhkan pengamanan agar aplikasi yang telah pembaca kembangkan tidak mudah diretas. Jika aplikasi web diretas, maka cracker akan mendapat data berupa database, jika aplikasi desktop diretas, maka cracker akan mendapat patch maupun serial number untuk lisensi. Beberapa masalah tersebut bisa pembaca selesaikan dengan Apache Shiro.

Apache Shiro merupakan framework security berbasis Java yang sangat powerful dan mudah digunakan. Fungsi yang akan dilakukan Apache Shiro antara lain melakukan pengujian otentifikasi, otorisasi, kriptografi dan manejemen session. Dengan Apache Shiro pembaca akan disuguhkan API yang mudah dimengerti sehingga pembaca dapat dengan cepat mudah mengamankan berbagai macam aplikasi seperti aplikasi mobile, aplikasi web dan aplikasi enterprise. Berikut pengamanan yang bisa pembaca lakukan dengan Apache Shiro:

Otentifikasi

Proses untuk mengindentifikasi verifikasi, jika pembaca mencoba untuk melakukan verifikasi pengguna, pembaca tinggal menyediakan pembuktian identitas dalam sistem pembaca agar bisa diketahui dan dipercaya. Salah satu fitur dalam otorisasi Apache Shiro adalah 'Remember Me' built in, digunakan untuk mengingat pengguna aplikasi jika ingin menggunakan kembali aplikasi pembaca. Pembaca dapat meminimalisir lubang pada sektor ini.

Otorisasi

Kontrol akses yang merupakan proses untuk menentukan hak akses resource dalam sebuah aplikasi. Dengan kata lain menentukan "siapa saja yang boleh mengakses hal tersebut". Salah satu fiturnya adalah strong caching support, digunakan untuk mengotorisasi cache dalam lingkup yang besar dengan menggunakan keamanan data back-end.

Aplikasi Web

Apache Shiro didesain untuk digunakan pada aplikasi yang berbasis JVM, hal ini sudah bisa digunakan dalam pengamanan aplikasi web. Pembaca bisa melakukan pengamanan aplikasi web pada pattern URL dan melakukan filter chain sehingga lubang pada request URL web pembaca bisa diminimalisir.

Manajemen Session

Session merupakan sekumpulan data dimana pengguna membawanya pada periode waktu tertentu dalam menggunakan aplikasi pembaca. Session sangat tertutup untuk web atau environment EJB. Dalam manejemen session aplikasi, pembaca bisa menggunakan salah satu fiturnya host address retention, digunakan untuk menahan IP address dari session yang diinisialisasi dengan host yang berbeda.

Kriptografi

Kriptografi merupakan praktik perlindungan informasi dari akses yang tak diinginkan dengan menyembunyikan atau mengkonversi ke dalam bentuk yang tidak dapat dibaca. Apache Shiro fokus kepada dua elemen kriptografi yakni cipher hasil enkrip data seperti email yang menggunakan kunci publik atau kunci privat dan hash yang digunakan untuk mengenkripsi data seperti password. Salah satu fiturnya adalah built-in salt dan dukungan repeated hashing, ketika melakukan hashing data terutama untuk melindungi password.

Nah, pengamanan aplikasi perlu dilakukan agar tidak mudah diretas. Dengan Apache Shiro, pembaca tinggal memilih aplikasi mana saja yang ingin diamankan. Semoga aplikasinya makin aman ya.

(yp/shiro)