Memahami Authentication dan Authorization
Pemahaman akan authentication dan authorization sangat penting karena semua proses security berpusat pada dua hal itu.
Banyak orang yang masih bingung dengan kedua istilah penting itu. Banyak yang mengira bahwa authentication dan authorization itu sama, padahal keduanya sangat berbeda.
Salah satu tujuan dari security adalah menjamin agar resource hanya boleh diakses oleh orang yang berhak dan orang yang berhak itu bisa mengakses resource tanpa halangan.
Bayangkan dalam satu pesawat umum terdapat dua kelas penumpang, yaitu kelas VIP dan kelas ekonomi. Prosedur dan proses security harus menjamin agar penumpang menempati tempat duduk sesuai haknya. Untuk itu penumpang harus menunjukkan bukti berupa tiket yang di situ tertera namanya. Kemudian dari daftar penumpang pramugari akan tahu bahwa anda berhak duduk di kelas VIP atau ekonomi. Bila anda memegang tiket ekonomi mencoba duduk di kelas VIP maka pramugari akan menolak anda. Apalagi bila anda tidak memegang tiket, mencoba naik pesawat itu, sudah pasti anda akan ditendang.
Authentication: Proof That You are Who You Claim to Be
Sebelum bisa memberikan layanan kepada pengguna, penyedia layanan perlu tahu siapa anda. Jika anda menyatakan bahwa anda adalah Tukul Arwana, maka buktikanlah bahwa anda memang Tukul. Proses membuktikan siapa anda (identitas) inilah yang disebut authentication. Bila authentication berhasil, maka akan terjalin hubungan trust antara pemberi layanan dan pengguna layanan.
Salah satu bukti identitas yang bisa diterima adalah informasi rahasia. Logikanya adalah bila ada orang yang bisa menyebutkan suatu rahasia yang tidak mungkin orang lain tahu kecuali Tukul, maka saya akan yakin bahwa orang itu adalah benar-benar Tukul.
Bukti identitas lain yang bisa diterima adalah sesuatu yang unik, hanya dimiliki oleh satu orang saja di seluruh dunia. Logikanya adalah bila ada orang yang membawa barang yang hanya mungkin dimiliki Tukul, maka saya akan yakin bahwa dia adalah benar-benar Tukul. Dalam film kungfu cina biasanya pejabat utusan Kaisar akan membawa stempel kerajaan. Stempel ini adalah metode authentication yang sangat ampuh. Siapa saja yang memegang stempel itu otomatis identitasnya dijamin sebagai utusan kaisar.
Metode authentication yang berbasis pada kerahasiaan informasi adalah:
- Password/PIN: Hanya pemiliknya yang tahu password/pin.
- Digital Certificate: Berbasis pada asymmetric cryptography yang mengandung informasi rahasia yaitu private key.
- Private Key: Hanya pemiliknya yang tahu private key, orang lain hanya tahu public key.
Sedangkan metode authentication yang berbasis pada keunikan adalah:
- Retina: Tidak mungkin ada 2 orang yang pola retinanya sama.
- Fingerprint: Tidak mungkin ada 2 orang yang sidik jarinya sama.
- Paspor: Hanya pemiliknya yang bisa menunjukkan foto di paspor sesuai dengan wajahnya.
- Tandatangan: Hanya pemiliknya yang bisa menuliskan tandatangan dengan sempurna.
Setelah terjalin hubungan trust, selanjutnya layanan apa yang bisa dinikmati pengguna tergantung dari proses authorization.
Authorization: What are You Allowed to Do
Authorization adalah proses menentukan apa sajakah layanan yang bisa dinikmati pengguna yang telah jelas identitasnya (authenticated user). Jadi sebelum ada authorization, harus melalui proses authentication. Identitas yang telah dibuktikan di proses authentication menjadi dasar untuk menentukan layanan yang berhak dinikmati seorang pengguna.
Logikanya adalah tanpa mengetahui siapa anda, saya tidak tahu apa saja yang boleh dan tidak boleh untuk anda. Jadi tanpa authentication tidak ada authorization. Contohnya setelah saya tahu anda adalah Tukul Arwana, maka saya tahu anda boleh memandu acara empat mata, dan tidak boleh memandu di acara Dorce Show. Biasanya pengguna yang tidak ter-otentikasi (anonymous guest) tetap bisa menikmati layanan, namun dengan akses yang sangat terbatas.
Hubungan antara client,server,authentication dan authorization system bisa dilihat pada gambar di atas. Client sebelum bisa menikmati layanan server harus melalui proses authentication. Setelah authentication berhasil akan terjalin hubungan trust antara client dan server sehingga cukup sekali saja authentication sampai client logout/keluar. Selanjutnya setiap ada permintaan layanan, server akan menghubungi system authorization untuk menentukan apakah client tersebut berhak atas layanan yang dimintanya.
Sumber :www.ilmuhacking.com