Apa itu identitas berbasis klaim?
Claims-based Identity (Identitas berbasis klaim) adalah metode untuk mengautentikasi pengguna akhir, aplikasi, atau perangkat ke sistem lain dengan cara yang mengabstraksi informasi spesifik entitas tersebut sambil menyediakan data yang mengotorisasinya untuk interaksi yang sesuai dan relevan.
Metode autentikasi ini secara otomatis menyediakan informasi pengguna, sehingga aplikasi tidak perlu memintanya dari pengguna, dan pengguna tidak perlu memberikan informasi tersebut secara terpisah untuk berbagai aplikasi.
Manfaat identitas berbasis klaim
Identitas berbasis klaim menawarkan keuntungan-keuntungan berikut saat menerapkan autentikasi:
- Mengalihdayakan autentikasi. Identitas berbasis klaim menghilangkan kebutuhan bagi aplikasi untuk melakukan tugas-tugas autentikasi, memudahkan manajemen akun dengan memusatkan autentikasi. Aplikasi tidak bertanggung jawab atas autentikasi pengguna, mencari detail identitas pengguna, menyimpan akun dan kata sandi pengguna, atau berintegrasi dengan sistem identitas lain. Selain itu, memusatkan autentikasi memudahkan peningkatan aplikasi ke metode autentikasi yang lebih kuat.
- Mendukung beberapa penyedia autentikasi. Identitas berbasis klaim memungkinkan perusahaan untuk dengan mudah menerapkan metode autentikasi yang berbeda menggunakan penyedia yang berbeda, misalnya, akun Microsoft, autentikasi Windows Active Directory (AD), atau autentikasi berbasis formulir untuk situs web. Ini dilakukan menggunakan single sign-on (SSO) untuk mendukung pengguna yang mengakses layanan web atau aplikasi web melalui internet, dari dalam organisasi, atau melalui organisasi afiliasi.
- Mendukung federasi identitas. Identitas berbasis klaim memungkinkan pengguna eksternal di satu organisasi untuk mengakses aplikasi jaringan perusahaan lain menggunakan identitas mereka sendiri.
Identitas berbasis klaim menawarkan lebih banyak fleksibilitas karena organisasi dapat membuat atribut tambahan sebagai klaim yang menjadi dasar kontrol akses.
Bagaimana identitas berbasis klaim bekerja
Identitas berbasis klaim adalah salah satu jenis manajemen identitas dan akses (IAM), yang merupakan kerangka kerja untuk proses bisnis yang memfasilitasi pengelolaan identitas digital. Kerangka kerja ini mencakup teknologi yang diperlukan untuk mendukung manajemen identitas.
Klaim adalah potongan informasi tentang pengguna yang telah dikemas, ditandatangani ke dalam token keamanan, dan dikirim oleh penerbit atau penyedia identitas ke aplikasi pihak yang bergantung melalui layanan token keamanan (STS). Data tersebut kemudian ditransmisikan menggunakan metode standar, seperti Security Assertion Markup Language (SAML), sehingga klaim memiliki format yang sama di berbagai sumber autentikasi dan aplikasi.
Identitas berbasis klaim telah dimasukkan ke dalam Microsoft .NET Framework sebagai bagian dari Windows Identity Foundation (WIF). WIF adalah serangkaian kelas .NET Framework untuk menerapkan identitas berbasis klaim yang dikembangkan untuk menyederhanakan dan menyatukan pendekatan identitas ini untuk aplikasi klien-server dan aplikasi cloud Microsoft Azure.
Layanan token keamanan bertindak sebagai otoritas penerbit, menerima kredensial yang masuk, memvalidasinya, dan membuat token aman dengan daftar klaim. Token tersebut dienkripsi dan dikirim ke aplikasi. Penting bahwa penerbit token adalah entitas tepercaya, seperti Microsoft, Facebook, atau Google.
Layanan Federasi AD Microsoft (AD FS) adalah jenis STS. AD FS adalah fitur dari sistem operasi Windows Server yang memperluas akses SSO pengguna akhir ke aplikasi dan sistem di luar firewall perusahaan. AD FS menggunakan model otorisasi kontrol akses berbasis klaim yang melibatkan autentikasi pengguna melalui cookie dan SAML.
Proses identitas berbasis klaim
Identitas berbasis klaim bergantung pada hubungan kepercayaan yang dibangun antara pihak yang membuat klaim dan pihak yang bergantung. Pihak yang bergantung adalah aplikasi atau perangkat yang bergantung pada klaim untuk identitas pengguna dan kontrol akses. Pihak yang bergantung hanya menerima klaim tentang identitas pengguna dari penerbit tepercaya.
Klaim dikirim ke pihak yang bergantung dalam bentuk token keamanan dalam beberapa format, termasuk SAML berbasis Extensible Markup Language atau Simple Web Token. STS memproses permintaan token dari pihak yang bergantung.
STS mengemas satu atau lebih klaim ke dalam token keamanan, menandatanganinya secara kriptografis, dan mengirimkannya ke pihak yang bergantung yang dienkripsi dalam transmisi. Ketika pihak yang bergantung menerima token, ia memverifikasi tanda tangan token dan, jika valid, menggunakan klaim untuk pengambilan keputusan lain yang diperlukan, seperti pemeriksaan otorisasi atau personalisasi.
Proses identitas berbasis klaim adalah sebagai berikut:
- Seorang pengguna meminta akses ke sebuah aplikasi.
- Aplikasi mengirimkan permintaan ke STS untuk mendapatkan token bagi pengguna tersebut.
- STS mengautentikasi pengguna, misalnya, dengan kata sandi, pemindaian biometrik, atau kartu pintar.
- STS membuat token.
- STS menandatangani token secara digital, dan tanda tangan digital tersebut menjadi bagian dari token.
- STS mengirimkan token kembali ke aplikasi yang memintanya.
- Aplikasi memverifikasi keabsahan tanda tangan digital dan memastikan bahwa token berasal dari STS yang dipercaya oleh layanan atau aplikasi tersebut.
- Aplikasi memproses data klaim untuk menentukan apakah pengguna dapat mengakses aplikasi serta tingkat akses yang akan diberikan.
Proses ini bisa menjadi lebih kompleks karena terdapat dua jenis STS: Identity Provider STS dan Relying Party STS. Identity Provider STS mengandalkan layanan autentikasi, seperti yang disediakan oleh AD. Sementara itu, Relying Party STS mengautentikasi menggunakan token yang telah disediakan oleh Identity Provider STS yang tepercaya.