Tutorial: Memberi akses grup ke sumber daya Azure menggunakan Azure PowerShell
Kontrol akses berbasis peran Azure (Azure RBAC) merupakan cara Anda mengelola akses ke sumber daya Azure. Dalam tutorial ini, Anda akan memberikan akses grup untuk menampilkan semuanya dalam langganan dan mengelola semuanya dalam grup sumber daya menggunakan Azure PowerShell.
Dalam tutorial ini, Anda akan mempelajari cara:
- Memberikan akses untuk grup di lingkup yang berbeda
- Cantumkan akses
- Menghapus akses
Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.
Catatan
Sebaiknya Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Lihat Menginstal Azure PowerShell untuk memulai. 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 grup di ID Microsoft Entra (atau memiliki grup yang sudah ada)
- Azure Cloud Shell
- Microsoft Graph PowerShell SDK
Penetapan peran
Di Azure RBAC, untuk memberikan akses, Anda perlu membuat penetapan peran. Penetapan peran terdiri dari tiga elemen: prinsip keamanan, definisi peran, dan cakupan. Berikut adalah dua penetapan peran yang akan Anda lakukan dalam tutorial ini:
Prinsip keamanan | Definisi peran | Cakupan |
---|---|---|
Grupkan (Grup Tutorial RBAC) |
Pembaca | Langganan |
Grupkan (Grup Tutorial RBAC) |
Kontributor | Grup sumber daya (rbac-tutorial-resource-group) |
Membuat grup
Untuk menetapkan peran, Anda memerlukan pengguna, grup, atau prinsip layanan. Jika Anda belum memiliki grup, Anda bisa membuatnya.
Di Azure Cloud Shell, buat grup baru menggunakan perintah New-MgGroup .
New-MgGroup -DisplayName "RBAC Tutorial Group" -MailEnabled:$false ` -SecurityEnabled:$true -MailNickName "NotSet"
DisplayName Id MailNickname Description GroupTypes ----------- -- ------------ ----------- ---------- RBAC Tutorial Group 11111111-1111-1111-1111-111111111111 NotSet {}
Jika Anda tidak memiliki izin untuk membuat grup, Anda bisa mencoba Tutorial: Memberi akses pengguna ke sumber daya Azure menggunakan Azure PowerShell sebagai gantinya.
Buat grup sumber daya
Anda menggunakan grup sumber daya untuk memperlihatkan cara menetapkan peran di lingkup grup sumber daya.
Dapatkan daftar lokasi wilayah menggunakan perintah Get-AzLocation.
Get-AzLocation | select Location
Pilih lokasi di dekat Anda dan tetapkan ke variabel.
$location = "westus"
Buat grup sumber daya baru menggunakan perintah New-AzResourceGroup.
New-AzResourceGroup -Name "rbac-tutorial-resource-group" -Location $location
ResourceGroupName : rbac-tutorial-resource-group Location : westus ProvisioningState : Succeeded Tags : ResourceId : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rbac-tutorial-resource-group
Memberikan akses
Untuk memberikan akses grup, Anda menggunakan perintah New-AzRoleAssignment untuk menetapkan peran. Anda harus menentukan prinsip keamanan, penentuan peran, dan lingkup.
Dapatkan ID objek grup menggunakan perintah Get-MgGroup .
Get-MgGroup -Filter "DisplayName eq 'RBAC Tutorial Group'"
DisplayName Id MailNickname Description GroupTypes ----------- -- ------------ ----------- ---------- RBAC Tutorial Group 11111111-1111-1111-1111-111111111111 NotSet {}
Simpan ID objek grup dalam variabel.
$groupId = "11111111-1111-1111-1111-111111111111"
Dapatkan ID langganan Anda menggunakan perintah Get-AzSubscription.
Get-AzSubscription
Name : Pay-As-You-Go Id : 00000000-0000-0000-0000-000000000000 TenantId : 22222222-2222-2222-2222-222222222222 State : Enabled
Simpan lingkup langganan dalam variabel.
$subScope = "/subscriptions/00000000-0000-0000-0000-000000000000"
Tetapkan peran Pembaca ke grup di lingkup langganan.
New-AzRoleAssignment -ObjectId $groupId ` -RoleDefinitionName "Reader" ` -Scope $subScope
RoleAssignmentId : /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/44444444-4444-4444-4444-444444444444 Scope : /subscriptions/00000000-0000-0000-0000-000000000000 DisplayName : RBAC Tutorial Group SignInName : RoleDefinitionName : Reader RoleDefinitionId : acdd72a7-3385-48ef-bd42-f606fba81ae7 ObjectId : 11111111-1111-1111-1111-111111111111 ObjectType : Group CanDelegate : False
Tetapkan peran Kontributor ke grup di lingkup grup sumber daya.
New-AzRoleAssignment -ObjectId $groupId ` -RoleDefinitionName "Contributor" ` -ResourceGroupName "rbac-tutorial-resource-group"
RoleAssignmentId : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rbac-tutorial-resource-group/providers/Microsoft.Authorization/roleAssignments/33333333-3333-3333-3333-333333333333 Scope : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rbac-tutorial-resource-group DisplayName : RBAC Tutorial Group SignInName : RoleDefinitionName : Contributor RoleDefinitionId : b24988ac-6180-42a0-ab88-20f7382dd24c ObjectId : 11111111-1111-1111-1111-111111111111 ObjectType : Group CanDelegate : False
Cantumkan akses
Untuk memverifikasi akses langganan, gunakan perintah Get-AzRoleAssignment untuk mencantumkan penetapan peran.
Get-AzRoleAssignment -ObjectId $groupId -Scope $subScope
RoleAssignmentId : /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/22222222-2222-2222-2222-222222222222 Scope : /subscriptions/00000000-0000-0000-0000-000000000000 DisplayName : RBAC Tutorial Group SignInName : RoleDefinitionName : Reader RoleDefinitionId : acdd72a7-3385-48ef-bd42-f606fba81ae7 ObjectId : 11111111-1111-1111-1111-111111111111 ObjectType : Group CanDelegate : False
Dalam output, Anda dapat melihat bahwa peran Pembaca telah ditetapkan ke Grup Tutorial RBAC di lingkup langganan.
Untuk memverifikasi akses langganan, gunakan perintah Get-AzRoleAssignment untuk mencantumkan penetapan peran.
Get-AzRoleAssignment -ObjectId $groupId -ResourceGroupName "rbac-tutorial-resource-group"
RoleAssignmentId : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rbac-tutorial-resource-group/providers/Microsoft.Authorization/roleAssignments/33333333-3333-3333-3333-333333333333 Scope : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rbac-tutorial-resource-group DisplayName : RBAC Tutorial Group SignInName : RoleDefinitionName : Contributor RoleDefinitionId : b24988ac-6180-42a0-ab88-20f7382dd24c ObjectId : 11111111-1111-1111-1111-111111111111 ObjectType : Group CanDelegate : False RoleAssignmentId : /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/22222222-2222-2222-2222-222222222222 Scope : /subscriptions/00000000-0000-0000-0000-000000000000 DisplayName : RBAC Tutorial Group SignInName : RoleDefinitionName : Reader RoleDefinitionId : acdd72a7-3385-48ef-bd42-f606fba81ae7 ObjectId : 11111111-1111-1111-1111-111111111111 ObjectType : Group CanDelegate : False
Dalam output, Anda dapat melihat bahwa peran Kontributor dan Pembaca telah ditetapkan ke Grup Tutorial RBAC. Peran Kontributor berada di lingkup rbac-tutorial-resource-group dan peran Pembaca diwariskan pada lingkup langganan.
(Opsional) Cantumkan akses menggunakan Portal Microsoft Azure
Untuk melihat tampilan penetapan peran di portal Microsoft Azure, lihat bilah Kontrol akses (IAM) untuk langganan.
Menampilkan bilah Kontrol akses (IAM) untuk grup sumber daya.
Menghapus akses
Untuk menghapus akses bagi pengguna, grup, dan aplikasi, gunakan Remove-AzRoleAssignment untuk menghapus penetapan peran.
Gunakan perintah berikut untuk menghapus penetapan peran Kontributor untuk grup di lingkup grup sumber daya.
Remove-AzRoleAssignment -ObjectId $groupId ` -RoleDefinitionName "Contributor" ` -ResourceGroupName "rbac-tutorial-resource-group"
Gunakan perintah berikut untuk menghapus penetapan peran Pembaca untuk grup di lingkup langganan.
Remove-AzRoleAssignment -ObjectId $groupId ` -RoleDefinitionName "Reader" ` -Scope $subScope
Membersihkan sumber daya
Untuk membersihkan sumber daya yang dibuat oleh tutorial ini, hapus grup sumber daya dan grup.
Hapus grup sumber daya menggunakan perintah Remove-AzResourceGroup.
Remove-AzResourceGroup -Name "rbac-tutorial-resource-group"
Confirm Are you sure you want to remove resource group 'rbac-tutorial-resource-group' [Y] Yes [N] No [S] Suspend [?] Help (default is "Y"):
Ketika diminta untuk mengonfirmasi, ketik Y. Butuh beberapa detik untuk menghapusnya.
Hapus grup menggunakan perintah Remove-MgGroup .
Remove-MgGroup -GroupID $groupId
Jika Anda menerima kesalahan saat mencoba menghapus grup, Anda juga dapat menghapus grup di portal.