February 2, 2025

Authentication and Authorization pada Blazor Hybrid

Dalam hal keamanan, kita harus mengetahui apa itu otentikasi dan otorisasi. Autentikasi pada aplikasi adalah proses verifikasi identitas pengguna untuk memastikan bahwa mereka adalah pemilik akun yang sah. Proses ini biasanya melibatkan penggunaan credential seperti username dan password. Autentikasi sangat penting untuk menjaga keamanan data dan mencegah akses tidak sah ke sistem atau aplikasi.

Otorisasi pada aplikasi adalah proses yang menentukan hak akses pengguna terhadap informasi tertentu setelah berhasil diautentikasi. Ini memastikan bahwa hanya pengguna yang memiliki izin yang tepat yang dapat mengakses atau memodifikasi data dan fungsi dalam aplikasi.

pada Blazor Hybrid, autentikasi ditangani oleh native platform library. Ini berarti dalam mengautentikasi pengguna, proses yang dilakukan sama seperti yang kita lakukan di aplikasi .NET MAUI, WPF, atau Windows Forms lainnya. Tidak ada yang spesifik tentang Blazor Hybrid. Kita dapat menggunakan, misalnya, OpenID Connect dengan Identity Provider. Atau di WPF dan Windows Forms, kita bisa menggunakan Windows otentikasi. Sekarang pertanyaannya adalah bagaimana proses otentikasi ini dapat diakses dari aplikasi Blazor yang berjalan dalam elemen BlazorWebView. Dengan Blazor Hybrid, kita harus menerapkan custom AuthenticationStateProvider. Ini adalah Class yang sesuai dengan namanya yaitu menyediakan status otentikasi. Dalam class ini, kita dapat menulis kode khusus platform untuk mengautentikasi pengguna. Kemudian kita register class ini ke service provide pada aplikasi, sehingga kita dapat memasukkan sebuah instance ke dalam komponen aplikasi Blazor. Pada artikel ini akan dipelajari cara menerapkan autentikasi yang memiliki metode untuk login dan logout. 


Kita dapat menggunakan komponen AuthorizeView pada aplikasi Blazor. Berdasarkan status autentikasi, ini memungkinkan untuk menampilkan hanya bagian antarmuka pengguna yang dipilih. Penting untuk diketahui bahwa komponen AuthorizeView tidak spesifik untuk Blazor Hybrid. Dapat juga menggunakannya di aplikasi web Blazor untuk menerapkan otorisasi. Satu-satunya bagian khusus Blazor Hybrid adalah kita harus menulis AuthenticationStateProvider khusus yang terhubung dengan native platform library untuk mengautentikasi pengguna. Untuk menggunakan komponen AuthorizeView dan mengimplementasikan penyedia status autentikasi khusus

Untuk artikel selengkapnya dapat di download disini. Sedangkan untuk memudahkan dalam memahami isi artikel, maka penulis juga menyertakan dengan full source code project latihan ini, dan dapat di download disini.

Terima kasih