Tutorial: Membuat peran kustom Microsoft Azure menggunakan Microsoft Azure PowerShell
Jika peran bawaan Microsoft Azure tidak memenuhi kebutuhan spesifik organisasi, Anda dapat membuat peran kustom sendiri. Untuk tutorial ini, Anda membuat peran kustom bernama Reader Support Tickets menggunakan Microsoft Azure PowerShell. Peran kustom memungkinkan pengguna melihat semuanya di sarana kontrol langganan dan juga membuka tiket dukungan.
Dalam tutorial ini, Anda akan mempelajari cara:
- Membuat peran kustom
- Mencantumkan peran kustom
- Perbarui peran kustom
- Menghapus peran kustom
Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.
Catatan
Sebaiknya Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Untuk memulai, lihat Menginstal Azure PowerShell. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.
Prasyarat
Untuk menyelesaikan tutorial ini, Anda akan memerlukan:
- Izin untuk membuat peran kustom, seperti Administrator Akses Pengguna
- Azure Cloud Shell atau Azure PowerShell
Masuk ke Azure PowerShell
Masuk ke Azure PowerShell.
Membuat peran kustom
Cara termudah untuk membuat peran kustom adalah memulai dengan peran bawaan, mengeditnya, lalu membuat peran baru.
Di PowerShell, gunakan perintah Get-AzProviderOperation untuk mendapatkan daftar operasi untuk penyedia sumber Microsoft.Support. Sangat membantu untuk mengetahui operasi yang tersedia untuk membuat izin Anda. Anda juga dapat melihat daftar semua operasi di operasi penyedia sumber Microsoft Azure.
Get-AzProviderOperation "Microsoft.Support/*" | FT Operation, Description -AutoSize
Operation Description --------- ----------- Microsoft.Support/register/action Registers to Support Resource Provider Microsoft.Support/supportTickets/read Gets Support Ticket details (including status, severity, contact ... Microsoft.Support/supportTickets/write Creates or Updates a Support Ticket. You can create a Support Tic...
Gunakan perintah Get-AzRoleDefinition untuk menghasilkan peran Pembaca dalam format JSON.
Get-AzRoleDefinition -Name "Reader" | ConvertTo-Json | Out-File C:\CustomRoles\ReaderSupportRole.json
Buka file ReaderSupportRole.json di editor.
Berikut ini menunjukkan output JSON. Untuk informasi tentang properti yang berbeda, lihatPeran kustom Microsoft Azure.
{ "Name": "Reader", "Id": "acdd72a7-3385-48ef-bd42-f606fba81ae7", "IsCustom": false, "Description": "Lets you view everything, but not make any changes.", "Actions": [ "*/read" ], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/" ] }
Edit file JSON untuk menambahkan tindakan
"Microsoft.Support/*"
ke propertiActions
. Pastikan untuk menyertakan koma setelah tindakan baca. Tindakan ini akan memungkinkan pengguna untuk membuat tiket dukungan.Dapatkan ID langganan Anda menggunakan perintah Get-AzSubscription.
Get-AzSubscription
Dalam
AssignableScopes
, tambah ID langganan dengan format berikut:"/subscriptions/00000000-0000-0000-0000-000000000000"
Anda harus menambahkan ID langganan secara eksplisit, jika tidak, Anda tidak akan diizinkan untuk mengimpor peran ke dalam langganan Anda.
Hapus
Id
garis properti dan ubahIsCustom
properti menjaditrue
.Ubah properti
Name
danDescription
menjadi "Tiket Dukungan Pembaca" dan "Lihat semua yang ada di langganan dan juga buka tiket dukungan."File JSON Anda akan terlihat seperti berikut:
{ "Name": "Reader Support Tickets", "IsCustom": true, "Description": "View everything in the subscription and also open support tickets.", "Actions": [ "*/read", "Microsoft.Support/*" ], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/subscriptions/00000000-0000-0000-0000-000000000000" ] }
Untuk membuat peran kustom baru, gunakan perintah New-AzRoleDefinition dan tentukan file definisi peran JSON.
New-AzRoleDefinition -InputFile "C:\CustomRoles\ReaderSupportRole.json"
Name : Reader Support Tickets Id : 22222222-2222-2222-2222-222222222222 IsCustom : True Description : View everything in the subscription and also open support tickets. Actions : {*/read, Microsoft.Support/*} NotActions : {} DataActions : {} NotDataActions : {} AssignableScopes : {/subscriptions/00000000-0000-0000-0000-000000000000}
Peran kustom baru sekarang tersedia di portal Microsoft Azure dan dapat ditetapkan ke pengguna, grup, atau perwakilan layanan seperti peran bawaan.
Mencantumkan peran kustom
Untuk mencantumkan semua peran kustom Anda, gunakan perintah Get-AzRoleDefinition.
Get-AzRoleDefinition | ? {$_.IsCustom -eq $true} | FT Name, IsCustom
Name IsCustom ---- -------- Reader Support Tickets True
Anda juga dapat melihat peran kustom di portal Microsoft Azure.
Perbarui peran kustom
Untuk memperbarui peran kustom, Anda dapat memperbarui file JSON atau menggunakan objek PSRoleDefinition
.
Untuk memperbarui file JSON, gunakan perintah Get-AzRoleDefinition untuk menghasilkan peran kustom dalam format JSON.
Get-AzRoleDefinition -Name "Reader Support Tickets" | ConvertTo-Json | Out-File C:\CustomRoles\ReaderSupportRole2.json
Buka file di editor.
Di
Actions
, tambahkan tindakan untuk membuat dan mengelola penyebaran grup sumber daya"Microsoft.Resources/deployments/*"
.File JSON yang diperbarui akan terlihat seperti berikut:
{ "Name": "Reader Support Tickets", "Id": "22222222-2222-2222-2222-222222222222", "IsCustom": true, "Description": "View everything in the subscription and also open support tickets.", "Actions": [ "*/read", "Microsoft.Support/*", "Microsoft.Resources/deployments/*" ], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/subscriptions/00000000-0000-0000-0000-000000000000" ] }
Untuk memperbarui peran kustom, gunakan perintah Set-AzRoleDefinition dan tentukan file JSON yang diperbarui.
Set-AzRoleDefinition -InputFile "C:\CustomRoles\ReaderSupportRole2.json"
Name : Reader Support Tickets Id : 22222222-2222-2222-2222-222222222222 IsCustom : True Description : View everything in the subscription and also open support tickets. Actions : {*/read, Microsoft.Support/*, Microsoft.Resources/deployments/*} NotActions : {} DataActions : {} NotDataActions : {} AssignableScopes : {/subscriptions/00000000-0000-0000-0000-000000000000}
Untuk menggunakan objek
PSRoleDefintion
untuk memperbarui peran kustom Anda, pertama, gunakan perintah Get-AzRoleDefinition untuk mendapatkan peran.$role = Get-AzRoleDefinition "Reader Support Tickets"
Panggil metode
Add
untuk menambah tindakan untuk membaca pengaturan diagnostik.$role.Actions.Add("Microsoft.Insights/diagnosticSettings/*/read")
Gunakan Set-AzRoleDefinition untuk memperbarui peran.
Set-AzRoleDefinition -Role $role
Name : Reader Support Tickets Id : 22222222-2222-2222-2222-222222222222 IsCustom : True Description : View everything in the subscription and also open support tickets. Actions : {*/read, Microsoft.Support/*, Microsoft.Resources/deployments/*, Microsoft.Insights/diagnosticSettings/*/read} NotActions : {} DataActions : {} NotDataActions : {} AssignableScopes : {/subscriptions/00000000-0000-0000-0000-000000000000}
Menghapus peran kustom
Gunakan perintah Get-AzRoleDefinition untuk mendapatkan ID dari peran kustom.
Get-AzRoleDefinition "Reader Support Tickets"
Gunakan perintah Remove-AzRoleDefinition dan tentukan ID peran untuk menghapus peran kustom.
Remove-AzRoleDefinition -Id "22222222-2222-2222-2222-222222222222"
Confirm Are you sure you want to remove role definition with id '22222222-2222-2222-2222-222222222222'. [Y] Yes [N] No [S] Suspend [?] Help (default is "Y"):
Ketika diminta untuk mengonfirmasi, ketik Y.