Kelola peran perwakilan layanan
Untuk membatasi akses ke sumber daya Azure, Anda dapat menggunakan perwakilan layanan untuk mengelola penetapan peran. Setiap peran menyediakan izin berbeda yang diizinkan oleh pengguna saat mengakses sumber daya Azure. Langkah dalam tutorial ini menjelaskan cara membuat dan menghapus peran perwakilan layanan.
Azure CLI memiliki perintah berikut untuk mengelola penetapan peran:
Membuat atau menghapus penetapan peran
Peran Kontributor memiliki izin penuh untuk membaca dan menulis ke akun Azure. Peran Pembaca lebih ketat dengan akses baca-saja. Selalu gunakan prinsip hak istimewa paling sedikit. Untuk daftar lengkap peran yang tersedia di Azure RBAC, lihat Peran bawaan Azure.
Penambahan peran tidak membatasi izin yang ditetapkan sebelumnya. Contoh ini menambahkan peran Pembaca dan menghapus peran Kontributor:
az role assignment create --assignee myServicePrincipalID \
--role Reader \
--scope /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName
az role assignment delete --assignee myServicePrincipalID \
--role Contributor \
--scope /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName
Konsol Output:
{
"condition": null,
"conditionVersion": null,
"createdBy": null,
"createdOn": "yyyy-mm-ddT00:00:00.000000+00:00",
"delegatedManagedIdentityResourceId": null,
"description": null,
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000",
"name": "00000000-0000-0000-0000-000000000000",
"principalId": "00000000-0000-0000-0000-000000000000",
"principalType": "ServicePrincipal",
"roleDefinitionId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/00000000-0000-0000-0000-000000000000",
"scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroupName",
"type": "Microsoft.Authorization/roleAssignments",
"updatedBy": "00000000-0000-0000-0000-000000000000",
"updatedOn": "yyyy-mm-ddT00:00:00.000000+00:00"
}
Cara mendapatkan nilai untuk parameter cakupan
Satu pertanyaan yang mungkin Anda miliki adalah "Bagaimana cara mengetahui --scope
nilai parameter?" Jawabannya adalah menemukan dan menyalin ID Sumber Daya sumber daya Azure yang perlu diakses oleh perwakilan layanan Anda. Informasi ini biasanya ditemukan di halaman Properti atau Titik Akhir portal Azure dari setiap sumber daya. Berikut adalah contoh umum--scope
, tetapi bergantung pada ID Sumber Daya Anda untuk format dan nilai aktual.
Scope | Contoh |
---|---|
Langganan | /subscriptions/mySubscriptionID |
Grup sumber daya | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName |
Komputer virtual | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myVMname |
Layanan file akun penyimpanan | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.Storage/storageAccounts/myStorageAccountName/fileServices/default |
pabrik data | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.DataFactory/factories/myDataFactoryName |
Untuk contoh cakupan lainnya, lihat Memahami cakupan untuk Azure RBAC.
Memverifikasi perubahan
Perubahan ini dapat diverifikasi dengan mencantumkan peran yang ditetapkan:
# list all role assignments for the current subscription
az role assignment list --output table
# list role assignments for a user
az role assignment list --assignee myUserName@contoso.com
# list role assignments for a subscription
az role assignment list --subscription mySubscriptionID
Anda juga dapat masuk ke portal Azure dan secara manual menetapkan peran ke perwakilan layanan dari menu Kontrol akses (IAM). Untuk contoh selengkapnya tentang mencantumkan penetapan peran, lihat Mencantumkan penetapan peran Azure menggunakan Azure CLI.
Langkah berikutnya
Sekarang setelah Anda mempelajari cara mengelola peran perwakilan layanan Anda, lanjutkan ke langkah berikutnya untuk mempelajari cara menggunakan perwakilan layanan untuk membuat sumber daya.