Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Jika peran bawaan Microsoft Azure tidak memenuhi kebutuhan spesifik organisasi, Anda dapat membuat peran kustom sendiri. Artikel ini menjelaskan cara mencantumkan, membuat, memperbarui, atau menghapus peran kustom menggunakan Azure CLI.
Untuk tutorial langkah demi langkah tentang cara membuat peran kustom, lihat Tutorial: Membuat peran kustom Azure menggunakan Azure CLI.
Prasyarat
Untuk membuat peran kustom, Anda perlu:
- Izin untuk membuat peran kustom, seperti Administrator Akses Pengguna
- Azure Cloud Shell atau Azure CLI
Mencantumkan peran kustom
Untuk mencantumkan peran kustom yang tersedia untuk penugasan, gunakan az role definition list. Contoh berikut mencantumkan semua peran kustom dalam langganan saat ini.
az role definition list --custom-role-only true --output json --query '[].{roleName:roleName, roleType:roleType}'
[
{
"roleName": "My Management Contributor",
"type": "CustomRole"
},
{
"roleName": "My Service Reader Role",
"type": "CustomRole"
},
{
"roleName": "Virtual Machine Operator",
"type": "CustomRole"
}
]
Daftar definisi peran khusus
Untuk mencantumkan definisi peran kustom, gunakan daftar definisi peran az. Perintah ini adalah perintah yang sama dengan yang akan Anda gunakan untuk peran bawaan.
az role definition list --name {roleName}
Contoh berikut mencantumkan definisi peran Operator Komputer Virtual :
az role definition list --name "Virtual Machine Operator"
[
{
"assignableScopes": [
"/subscriptions/{subscriptionId}"
],
"description": "Can monitor and restart virtual machines.",
"id": "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/roleDefinitions/00000000-0000-0000-0000-000000000000",
"name": "00000000-0000-0000-0000-000000000000",
"permissions": [
{
"actions": [
"Microsoft.Storage/*/read",
"Microsoft.Network/*/read",
"Microsoft.Compute/*/read",
"Microsoft.Compute/virtualMachines/start/action",
"Microsoft.Compute/virtualMachines/restart/action",
"Microsoft.Authorization/*/read",
"Microsoft.ResourceHealth/availabilityStatuses/read",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Insights/alertRules/*",
"Microsoft.Insights/diagnosticSettings/*",
"Microsoft.Support/*"
],
"dataActions": [],
"notActions": [],
"notDataActions": []
}
],
"roleName": "Virtual Machine Operator",
"roleType": "CustomRole",
"type": "Microsoft.Authorization/roleDefinitions"
}
]
Contoh berikut hanya mencantumkan tindakan peran Operator Komputer Virtual :
az role definition list --name "Virtual Machine Operator" --output json --query '[].permissions[0].actions'
[
[
"Microsoft.Storage/*/read",
"Microsoft.Network/*/read",
"Microsoft.Compute/*/read",
"Microsoft.Compute/virtualMachines/start/action",
"Microsoft.Compute/virtualMachines/restart/action",
"Microsoft.Authorization/*/read",
"Microsoft.ResourceHealth/availabilityStatuses/read",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Insights/alertRules/*",
"Microsoft.Insights/diagnosticSettings/*",
"Microsoft.Support/*"
]
]
Membuat peran kustom
Untuk membuat peran kustom, gunakan buat definisi peran az. Definisi peran dapat berupa deskripsi JSON atau jalur ke file yang berisi deskripsi JSON.
az role definition create --role-definition {roleDefinition}
Contoh berikut membuat peran kustom bernama Operator Komputer Virtual. Peran kustom ini menetapkan akses ke semua tindakan baca penyedia sumber daya Microsoft.Compute, Microsoft.Storage, dan Microsoft.Network dan menetapkan akses untuk memulai, memulai ulang, dan memantau komputer virtual. Peran kustom ini dapat digunakan dalam dua langganan. Contoh ini menggunakan file JSON sebagai input.
vmoperator.json
{
"Name": "Virtual Machine Operator",
"IsCustom": true,
"Description": "Can monitor and restart virtual machines.",
"Actions": [
"Microsoft.Storage/*/read",
"Microsoft.Network/*/read",
"Microsoft.Compute/*/read",
"Microsoft.Compute/virtualMachines/start/action",
"Microsoft.Compute/virtualMachines/restart/action",
"Microsoft.Authorization/*/read",
"Microsoft.ResourceHealth/availabilityStatuses/read",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Insights/alertRules/*",
"Microsoft.Support/*"
],
"NotActions": [
],
"AssignableScopes": [
"/subscriptions/{subscriptionId1}",
"/subscriptions/{subscriptionId2}"
]
}
az role definition create --role-definition ~/roles/vmoperator.json
Memperbarui peran kustom
Untuk memperbarui peran kustom, pertama-tama gunakan az role definition list untuk mengambil definisi peran. Kedua, buat perubahan yang diinginkan pada definisi peran. Terakhir, gunakan az role definition update untuk menyimpan definisi peran yang diperbarui.
az role definition update --role-definition {roleDefinition}
Contoh berikut menambahkan tindakan Microsoft.Insights/diagnosticSettings/ ke Actions dan menambahkan grup manajemen ke AssignableScopes untuk peran kustom Operator Komputer Virtual .
vmoperator.json
{
"Name": "Virtual Machine Operator",
"IsCustom": true,
"Description": "Can monitor and restart virtual machines.",
"Actions": [
"Microsoft.Storage/*/read",
"Microsoft.Network/*/read",
"Microsoft.Compute/*/read",
"Microsoft.Compute/virtualMachines/start/action",
"Microsoft.Compute/virtualMachines/restart/action",
"Microsoft.Authorization/*/read",
"Microsoft.ResourceHealth/availabilityStatuses/read",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Insights/alertRules/*",
"Microsoft.Insights/diagnosticSettings/*",
"Microsoft.Support/*"
],
"NotActions": [
],
"AssignableScopes": [
"/subscriptions/{subscriptionId1}",
"/subscriptions/{subscriptionId2}",
"/providers/Microsoft.Management/managementGroups/marketing-group"
]
}
az role definition update --role-definition ~/roles/vmoperator.json
Menghapus sebuah peran kustom
Hapus penetapan peran apa pun yang menggunakan peran kustom. Untuk informasi selengkapnya, lihat Cara menemukan penetapan peran untuk menghapus peran kustom.
Gunakan az role definition delete untuk menghapus peran kustom. Untuk menentukan peran yang akan dihapus, gunakan nama peran atau ID peran. Untuk menentukan ID peran, gunakan daftar definisi peran az.
az role definition delete --name {roleNameOrId}Contoh berikut menghapus peran kustom Operator Komputer Virtual .
az role definition delete --name "Virtual Machine Operator"