Bagikan melalui


Apa itu kontrol akses berbasis peran Azure (Azure RBAC)?

Manajemen akses untuk sumber daya cloud adalah fungsi penting untuk organisasi apa pun yang menggunakan cloud. Kontrol akses 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.

Azure RBAC adalah sistem otorisasi yang dibangun di Azure Resource Manager yang menyediakan manajemen akses terperinci ke sumber daya Azure.

Video ini memberikan gambaran umum singkat tentang Azure RBAC.

Apa yang bisa saya lakukan dengan Azure RBAC?

Berikut adalah beberapa contoh apa yang dapat Anda lakukan dengan Azure RBAC:

  • Mengizinkan satu pengguna mengelola komputer virtual dalam langganan dan pengguna lain untuk mengelola jaringan virtual
  • Mengizinkan grup DBA mengelola database SQL dalam langganan
  • Mengizinkan pengguna mengelola semua sumber daya dalam grup sumber daya, seperti komputer virtual, situs web, dan subnet
  • Mengizinkan 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 adalah konsep utama untuk dipahami - ini adalah bagaimana izin diberlakukan. Penetapan peran terdiri dari tiga elemen: prinsip keamanan, definisi peran, dan cakupan.

Prinsipal keamanan

Prinsip keamanan adalah objek yang mewakili pengguna, grup, perwakilan layanan, atau identitas terkelola yang meminta akses ke sumber daya Azure. Anda dapat menetapkan peran ke salah satu prinsipal keamanan ini.

Diagram memperlihatkan jenis prinsip keamanan untuk penetapan peran.

Pengertian peran

Definisi peran adalah kumpulan izin. Ini biasanya hanya disebut peran. Definisi peran mencantumkan operasi yang dapat dilakukan, seperti membaca, menulis, dan menghapus. Peran bisa tingkat tinggi, seperti pemilik, atau spesifik, seperti pembaca komputer virtual.

Diagram memperlihatkan contoh definisi peran untuk penetapan peran

Azure menyertakan beberapa peran bawaan yang dapat Anda gunakan. Misalnya, peran Kontributor Komputer Virtual memungkinkan pengguna untuk membuat dan mengelola komputer virtual. Jika peran bawaan tidak memenuhi kebutuhan spesifik organisasi, Anda bisa membuat peran kustom Azure.

Video ini memberikan gambaran singkat tentang peran bawaan dan peran kustom.

Azure memiliki tindakan 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.

Scope

Cakupan adalah sekumpulan sumber daya tempat akses diterapkan. Saat menetapkan peran, Anda dapat membatasi lebih lanjut tindakan yang diizinkan 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 empat tingkat: grup manajemen, langganan, grup sumber daya, atau sumber daya. Cakupan disusun dalam hubungan induk-anak. Anda dapat menetapkan peran di salah satu tingkat cakupan ini.

Diagram memperlihatkan tingkat cakupan untuk penetapan peran.

Untuk informasi selengkapnya tentang cakupan, lihat Memahami cakupan.

Penetapan peran

Penetapan peran adalah proses melampirkan definisi peran ke pengguna, grup, perwakilan layanan, atau identitas terkelola pada cakupan tertentu untuk tujuan memberikan akses. Akses diberikan dengan membuat penetapan peran, dan akses dicabut dengan menghapus penetapan peran.

Diagram berikut menunjukkan contoh penetapan peran. Dalam contoh ini, grup Pemasaran telah diberi peran Kontributor untuk grup sumber daya penjualan farmasi. Ini berarti bahwa 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 rekanan di luar grup rekanan penjualan farmasi, kecuali jika mereka memiliki penugasan peran lain.

Diagram memperlihatkan bagaimana prinsip keamanan, definisi peran, dan cakupan membuat penetapan peran.

Anda dapat menetapkan peran menggunakan portal Microsoft Azure, Azure CLI, Azure PowerShell, Azure SDK, atau REST API.

Untuk informasi selengkapnya, lihat Langkah-langkah untuk menetapkan peran Azure.

Groups

Penetapan peran bersifat transitif untuk grup, yang berarti bahwa jika pengguna adalah anggota grup dan grup tersebut adalah anggota grup lain yang memiliki penetapan peran, pengguna memiliki izin dalam penetapan peran.

Diagram memperlihatkan bagaimana penetapan peran transitif untuk grup.

Beberapa penugasan peran

Jadi apa yang terjadi jika Anda memiliki beberapa penetapan peran yang tumpang tindih? Azure RBAC adalah model aditif, sehingga izin efektif Anda adalah jumlah penetapan peran Anda. Pertimbangkan contoh berikut di mana pengguna diberikan 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.

Diagram memperlihatkan bagaimana beberapa penetapan peran tumpang tindih.

Cara Azure RBAC menentukan apakah pengguna memiliki akses ke sumber daya

Berikut ini adalah langkah-langkah tingkat tinggi yang digunakan 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.

  1. Pengguna (atau perwakilan layanan) memperoleh token untuk Azure Resource Manager.

    Token mencakup keanggotaan grup pengguna (termasuk keanggotaan grup transitif).

  2. Pengguna melakukan panggilan REST API ke Azure Resource Manager dengan token terlampir.

  3. Azure Resource Manager mengambil semua penetapan peran dan menolak penetapan yang berlaku untuk sumber daya tempat tindakan diambil.

  4. Jika penetapan penolakan berlaku, akses akan diblokir. Jika tidak, evaluasi berlanjut.

  5. Azure Resource Manager mempersempit penetapan peran yang berlaku untuk pengguna ini atau grup mereka dan menentukan peran apa yang dimiliki pengguna untuk sumber daya ini.

  6. Azure Resource Manager menentukan apakah tindakan dalam panggilan API disertakan dalam peran yang dimiliki pengguna untuk sumber daya ini. Jika peranan termasuk Actions yang memiliki wildcard (*), izin efektif dihitung dengan mengurangi NotActions dari Actions yang diizinkan. Demikian pula, pengurangan yang sama dilakukan untuk tindakan data apa pun.

    Actions - NotActions = Effective management permissions

    DataActions - NotDataActions = Effective data permissions

  7. Jika pengguna tidak memiliki peran dengan tindakan pada cakupan yang diminta, akses tidak diizinkan. Jika tidak, semua kondisi akan dievaluasi.

  8. Jika penetapan peran menyertakan kondisi, kondisi tersebut akan dievaluasi. Jika tidak, akses diizinkan.

  9. Jika kondisi terpenuhi, akses diizinkan. Jika tidak, akses tidak diizinkan.

Diagram berikut adalah ringkasan logika evaluasi.

Diagram alur logika evaluasi untuk menentukan akses ke sumber daya.

Di mana data Azure RBAC disimpan?

Definisi peran, penugasan peran, dan penugasan penolakan disimpan secara global agar Anda tetap dapat mengakses sumber daya Anda terlepas dari wilayah tempat Anda membuat sumber dayanya.

Saat penetapan peran atau data Azure RBAC lainnya dihapus, data akan dihapus secara global. Prinsipal yang memiliki akses ke sumber daya melalui data Azure RBAC akan kehilangan aksesnya.

Mengapa data Azure RBAC bersifat global?

Data Azure RBAC bersifat global untuk memastikan bahwa pelanggan dapat mengakses sumber daya secara 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 diberlakukan di semua wilayah dan data direplikasi ke semua wilayah. Untuk informasi selengkapnya, lihat Ketahanan Azure Resource Manager.

Pertimbangkan contoh berikut. Arina membuat komputer virtual di Asia Timur. Bob, yang merupakan anggota tim Arina, bekerja di Amerika Serikat. Bob perlu mengakses komputer virtual yang dibuat di Asia Timur. Untuk memberi Bob akses tepat waktu ke komputer virtual, Azure perlu mereplikasi penetapan peran secara global yang memberi Bob akses ke komputer virtual dari mana saja Bob berada.

Diagram memperlihatkan data Azure RBAC di beberapa wilayah.

Persyaratan lisensi

Menggunakan fitur ini gratis dan disertakan dalam langganan Azure Anda.

Langkah selanjutnya