Apa itu kontrol akses berbasis peran Azure (Azure RBAC)?
Pengelolaan access control untuk sumber daya cloud merupakan fungsi penting bagi organisasi mana pun yang menggunakan cloud.Access control berbasis peran Azure (Azure RBAC) membantu Anda mengelola siapa yang memiliki akses ke sumber daya Azure, apa yang dapat mereka lakukan dengan sumber daya tersebut, dan area apa yang dapat mereka akses dalam Access control
Azure RBAC merupakan sistem otorisasi yang di buat di Azure Resource Manager yang menyediakan pengelolaan akses mendetail untuk sumber daya Azure.
Apa yang bisa saya lakukan dengan Azure RBAC?
Berikut beberapa contoh apa yang bisa Anda lakukan dengan Azure RBAC:
- Izinkan satu pengguna mengelola komputer virtual dalam langganan dan pengguna lain mengelola jaringan virtual
- Mengizinkan grup DBA mengelola database SQL dalam langganan
- Izinkan pengguna mengelola semua sumber daya dalam grup sumber daya, seperti komputer virtual, situs web, dan subnet
- Izinkan aplikasi mengakses semua sumber daya dalam grup sumber daya
Cara kerja Azure RBAC
Cara Anda mengontrol akses ke sumber daya menggunakan Azure RBAC adalah dengan menetapkan peran Azure. Ini merupakan konsep kunci untuk di pahami – cara izin di berlakukan. Penetapan peran terdiri dari tiga elemen: prinsip keamanan, definisi peran, dan cakupan.
Prinsip keamanan
Perwakilan keamanan: Perwakilan keamanan adalah objek yang mewakili pengguna, grup, perwakilan layanan, atau identitas terkelola yang meminta akses ke sumber daya Azure. Anda dapat menetapkan peran untuk salah satu perwakilan keamanan ini.
Definisi peran
Definisi peran sekumpulan izin. Ini biasanya hanya di sebut peran. Definisi peran mencantumkan operasi yang dapat di lakukan, seperti membaca, menulis, dan menghapus. Peran dapat berupa tingkat tinggi, seperti pemilik, atau spesifik, seperti pembaca mesin virtual.
Azure mencakup beberapa peran bawaan yang dapat Anda gunakan. Misalnya, peran Kontributor Komputer Virtual memungkinkan pengguna membuat dan mengelola komputer virtual. Jika peran bawaan tidak memenuhi kebutuhan spesifik organisasi, Anda bisa membuat peran kustom Azure.
Azure memiliki tindakan operasi data yang memungkinkan Anda memberikan akses ke data dalam objek. Misalnya, jika pengguna telah membaca akses data ke akun penyimpanan, maka mereka dapat membaca blob atau pesan dalam akun penyimpanan tersebut.
Untuk informasi selengkapnya, lihat Memahami definisi peran Azure.
Lingkup
Cakupan: Cakupan adalah sekumpulan sumber daya tempat akses tersebut berlaku. Saat Anda menetapkan peran, Anda selanjutnya dapat membatasi tindakan yang di izinkan dengan menentukan cakupan. Ini berguna jika Anda ingin menjadikan seseorang sebagai Kontributor Situs Web, tetapi hanya untuk satu grup sumber daya.
Di Azure, Anda dapat menentukan cakupan di beberapa tingkat: grup pengelolaan, langganan, grup sumber daya, atau sumber daya. Cakupan di susun dalam hubungan induk-turunan. Anda dapat menetapkan peran di salah satu tingkat cakupan ini.
Untuk informasi selengkapnya tentang cakupan, lihat Memahami cakupan.
Penetapan peran
Penetapan peran adalah proses melampirkan definisi peran kepada pengguna, grup, perwakilan layanan, atau identitas terkelola pada cakupan tertentu untuk tujuan memberikan akses. Akses di berikan dengan membuat penetapan peran, dan akses di cabut dengan menghapus penetapan peran.
Diagram berikut menunjukkan contoh penetapan peran. Dalam contoh ini, grup Pemasaran telah di beri peran Kontributor untuk grup sumber daya penjualan farmasi. Artinya pengguna di grup Pemasaran dapat membuat atau mengelola sumber daya Azure apa pun di grup sumber daya penjualan farmasi. Pengguna pemasaran tidak memiliki akses ke sumber daya di luar grup sumber daya penjualan farmasi, kecuali mereka merupakan bagian dari penetapan peran lain.
Anda dapat menetapkan peran menggunakan portal Microsoft Azure, Azure CLI, Microsoft Azure PowerShell, Azure SDK, atau REST API.
Untuk informasi selengkapnya, lihat Langkah-langkah untuk menetapkan peran Azure.
Grup
Penetapan peran bersifat transitif untuk grup yang berarti bahwa jika pengguna adalah anggota grup dan grup tersebut merupakan anggota grup lain yang memiliki penetapan peran, pengguna akan memiliki izin dalam penetapan peran tersebut.
Beberapa penetapan peran
Jadi apa yang terjadi jika Anda memiliki beberapa penetapan peran yang tumpang tindih? Azure RBAC merupakan model aditif, sehingga izin efektif Anda adalah jumlah penetapan peran Anda. Pertimbangkan contoh berikut di mana pengguna di berikan peran Kontributor di cakupan langganan dan peran Pembaca pada grup sumber daya. Jumlah izin Kontributor dan izin Pembaca secara efektif merupakan peran Kontributor untuk langganan. Oleh karena itu, dalam hal ini, penetapan peran Pembaca tidak berdampak.
Penetapan penolakan
Sebelumnya, Azure RBAC adalah model khusus tanpa penolakan, tetapi sekarang Azure RBAC mendukung penetapan penolakan secara terbatas. Mirip dengan penetapan peran, penetapan penolakan melampirkan serangkaian tindakan menolak kepada pengguna, grup, perwakilan layanan, atau identitas terkelola pada lingkup tertentu untuk tujuan menolak akses. Penetapan peran menentukan serangkaian tindakan yang di izinkan, sementara penetapan penolakan menentukan serangkaian tindakan yang tidak di izinkan. Dengan kata lain, penetapan penolakan memblokir pengguna untuk melakukan tindakan tertentu meskipun penetapan peran memberi mereka akses. Penetapan penolakan lebih di utamakan daripada penetapan peran.
Cara Azure RBAC menentukan apakah pengguna memiliki akses ke sumber daya
Berikut ini langkah-langkah tingkat tinggi yang di gunakan Azure RBAC untuk menentukan apakah Anda memiliki akses ke sumber daya. Langkah-langkah ini berlaku untuk Azure Resource Manager atau layanan sarana data yang terintegrasi dengan Azure RBAC. Ini berguna untuk dipahami jika Anda mencoba memecahkan masalah akses.
- Pengguna (atau perwakilan layanan) memperoleh token untuk Azure Resource Manager.Token ini mencakup keanggotaan grup pengguna (termasuk keanggotaan grup transitif).
- Pengguna melakukan panggilan REST API ke Azure Resource Manager dengan token terlampir.
- Azure Resource Manager mengambil semua penetapan peran dan penetapan penolakan yang berlaku untuk sumber daya tempat tindakan di ambil.
- Jika penetapan penolakan berlaku, akses di blokir. Jika tidak, evaluasi berlanjut.
- Azure Resource Manager mempersempit penetapan peran yang berlaku untuk pengguna ini atau grup mereka dan menentukan peran apa yang di gunakan pengguna untuk sumber daya ini.
- Azure Resource Manager menentukan apakah tindakan dalam panggilan API di sertakan dalam peran yang dimiliki pengguna untuk sumber daya ini. Jika peran termasuk
Actions
yang memiliki kartubebas (*
), izin efektif dihitung dengan mengurangiNotActions
dari yang diizinkanActions
. Demikian pula, pengurangan yang sama di lakukan untuk setiap tindakan data apa pun.Actions - NotActions = Effective management permissionsDataActions - NotDataActions = Effective data permissions
- Apabila pengguna tidak memiliki peran dengan tindakan pada cakupan yang diminta, akses tidak diizinkan. Jika tidak, kondisi apa pun akan dievaluasi.
- Jikalau penetapan peran mencakup kondisi, peran tersebut akan dievaluasi. Jika tidak, akses diizinkan.
- Kalau kondisi terpenuhi, akses di izinkan. Jika tidak, akses tidak di izinkan.
Di mana data Azure RBAC di simpan?
Definisi peran, penetapan peran, dan penugasan penolakan di simpan secara global untuk memastikan bahwa Anda memiliki akses ke sumber daya Anda terlepas dari wilayah yang Anda buat sumber dayanya.
Saat penetapan peran atau data Azure RBAC lainnya di hapus, data akan di hapus secara global. Kepala sekolah yang memiliki akses ke sumber daya melalui data Azure RBAC akan kehilangan aksesnya.
Mengapa data Azure RBAC global?
Data Azure RBAC bersifat global untuk memastikan bahwa pelanggan dapat mengakses sumber daya tepat waktu terlepas dari tempat mereka mengakses. Azure RBAC diberlakukan oleh Azure Resource Manager, yang memiliki titik akhir global dan permintaan dirutekan ke wilayah terdekat untuk kecepatan dan ketahanan. Oleh karena itu, Azure RBAC harus ditegakkan di semua wilayah dan data direplikasi ke semua wilayah. Untuk informasi selengkapnya, lihat Ketahanan Azure Resource Manager.
Pertimbangkan contoh berikut. Arina membuat mesin virtual di Asia Timur. Bob, yang merupakan anggota tim Arina, bekerja di Estados Unidos. Bob perlu mengakses mesin virtual yang dibuat di Asia Timur. Untuk memberi Bob akses tepat waktu ke mesin virtual, Azure perlu mereplikasi penugasan peran secara global yang memberi Bob akses ke mesin virtual dari mana pun Bob berada.
Oleh:Efriana