Bagikan melalui


Tutorial: Memberikan akses pengguna 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 memberikan akses pengguna untuk melihat semuanya dalam langganan dan mengelola semuanya dalam grup sumber daya menggunakan Azure PowerShell.

Dalam tutorial ini, Anda mempelajari cara:

  • Memberikan akses untuk pengguna di cakupan yang berbeda
  • Akses ke daftar
  • Menghapus akses

Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.

Nota

Kami menyarankan agar 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:

Penetapan peran

Di Azure RBAC, untuk memberikan akses, Anda 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:

Prinsipal keamanan Pengertian peran Ruang Lingkup
Pengguna
(Pengguna Tutorial RBAC)
Pembaca Langganan
Pengguna
(Pengguna Tutorial RBAC)
Kontributor Grup sumber daya
(rbac-tutorial-resource-group)

Penetapan peran untuk pengguna

Membuat pengguna

Untuk menetapkan peran, Anda memerlukan pengguna, grup, atau perwakilan layanan. Jika Anda belum memiliki pengguna, Anda dapat membuatnya.

  1. Di Azure Cloud Shell, buat kata sandi yang sesuai dengan persyaratan kompleksitas kata sandi Anda.

    $PasswordProfile = @{ Password = "<Password>" }
    
  2. Buat pengguna baru untuk domain Anda menggunakan perintah New-MgUser .

    New-MgUser -DisplayName "RBAC Tutorial User" -PasswordProfile $PasswordProfile `
       -UserPrincipalName "rbacuser@example.com" -AccountEnabled:$true -MailNickName "rbacuser"
    
    DisplayName        Id                                   Mail UserPrincipalName
    -----------        --                                   ---- -----------------
    RBAC Tutorial User aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb      rbacuser@example.com
    

Membuat grup sumber daya

Anda menggunakan kelompok sumber daya untuk menunjukkan cara menetapkan peran pada cakupan kelompok sumber daya.

  1. Dapatkan daftar lokasi wilayah menggunakan perintah Get-AzLocation .

    Get-AzLocation | select Location
    
  2. Pilih lokasi di dekat Anda dan tetapkan ke variabel.

    $location = "westus"
    
  3. 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/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rbac-tutorial-resource-group
    

Memberikan akses

Untuk memberikan akses bagi pengguna, Anda menggunakan perintah New-AzRoleAssignment untuk menetapkan peran. Anda harus menentukan prinsip keamanan, definisi peran, dan cakupan.

  1. Dapatkan ID langganan Anda menggunakan perintah Get-AzSubscription.

    Get-AzSubscription
    
    Name     : Pay-As-You-Go
    Id       : 00000000-0000-0000-0000-000000000000
    TenantId : aaaabbbb-0000-cccc-1111-dddd2222eeee
    State    : Enabled
    
  2. Simpan cakupan langganan dalam variabel.

    $subScope = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
    
  3. Tetapkan peran Pembaca kepada pengguna di cakupan langganan.

    New-AzRoleAssignment -SignInName rbacuser@example.com `
      -RoleDefinitionName "Reader" `
      -Scope $subScope
    
    RoleAssignmentId   : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000
    Scope              : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e
    DisplayName        : RBAC Tutorial User
    SignInName         : rbacuser@example.com
    RoleDefinitionName : Reader
    RoleDefinitionId   : acdd72a7-3385-48ef-bd42-f606fba81ae7
    ObjectId           : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType         : User
    CanDelegate        : False
    
  4. Tetapkan peran Kontributor kepada pengguna di cakupan grup sumber daya.

    New-AzRoleAssignment -SignInName rbacuser@example.com `
      -RoleDefinitionName "Contributor" `
      -ResourceGroupName "rbac-tutorial-resource-group"
    
    RoleAssignmentId   : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rbac-tutorial-resource-group/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000
    Scope              : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rbac-tutorial-resource-group
    DisplayName        : RBAC Tutorial User
    SignInName         : rbacuser@example.com
    RoleDefinitionName : Contributor
    RoleDefinitionId   : b24988ac-6180-42a0-ab88-20f7382dd24c
    ObjectId           : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType         : User
    CanDelegate        : False
    

Akses ke daftar

  1. Untuk memverifikasi akses langganan, gunakan perintah Get-AzRoleAssignment untuk mencantumkan penetapan peran.

    Get-AzRoleAssignment -SignInName rbacuser@example.com -Scope $subScope
    
    RoleAssignmentId   : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Authorization/roleAssignments/ffffffff-eeee-dddd-cccc-bbbbbbbbbbb0
    Scope              : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e
    DisplayName        : RBAC Tutorial User
    SignInName         : rbacuser@example.com
    RoleDefinitionName : Reader
    RoleDefinitionId   : acdd72a7-3385-48ef-bd42-f606fba81ae7
    ObjectId           : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType         : User
    CanDelegate        : False
    

    Dalam output, Anda dapat melihat bahwa peran Pembaca telah ditugaskan kepada Pengguna Tutorial RBAC pada cakupan langganan.

  2. Untuk memverifikasi akses untuk grup sumber daya, gunakan perintah Get-AzRoleAssignment untuk mencantumkan penetapan peran.

    Get-AzRoleAssignment -SignInName rbacuser@example.com -ResourceGroupName "rbac-tutorial-resource-group"
    
    RoleAssignmentId   : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rbac-tutorial-resource-group/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000
    Scope              : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rbac-tutorial-resource-group
    DisplayName        : RBAC Tutorial User
    SignInName         : rbacuser@example.com
    RoleDefinitionName : Contributor
    RoleDefinitionId   : b24988ac-6180-42a0-ab88-20f7382dd24c
    ObjectId           : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType         : User
    CanDelegate        : False
    
    RoleAssignmentId   : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Authorization/roleAssignments/ffffffff-eeee-dddd-cccc-bbbbbbbbbbb0
    Scope              : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e
    DisplayName        : RBAC Tutorial User
    SignInName         : rbacuser@example.com
    RoleDefinitionName : Reader
    RoleDefinitionId   : acdd72a7-3385-48ef-bd42-f606fba81ae7
    ObjectId           : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType         : User
    CanDelegate        : False
    

    Pada bagian keluaran, Anda dapat melihat bahwa peran sebagai Kontributor dan Pembaca telah diberikan kepada Pengguna Tutorial RBAC. Peran Kontributor berada di cakupan rbac-tutorial-resource-group dan peran Pembaca diwarisi pada cakupan langganan.

(Opsional) Mencantumkan akses menggunakan Portal Microsoft Azure

  1. Untuk melihat tampilan penetapan peran di portal Microsoft Azure, lihat bilah Kontrol akses (IAM) untuk langganan.

    Penetapan peran untuk pengguna dalam cakupan langganan

  2. Lihat bilah Kontrol akses (IAM) untuk grup sumber daya.

    Penetapan peran untuk pengguna di cakupan grup sumber daya

Menghapus akses

Untuk menghapus akses bagi pengguna, grup, dan aplikasi, gunakan Remove-AzRoleAssignment untuk menghapus penetapan peran.

  1. Gunakan perintah berikut untuk menghapus penetapan peran Kontributor untuk pengguna di cakupan grup sumber daya.

    Remove-AzRoleAssignment -SignInName rbacuser@example.com `
      -RoleDefinitionName "Contributor" `
      -ResourceGroupName "rbac-tutorial-resource-group"
    
  2. Gunakan perintah berikut untuk menghapus penetapan peran Pembaca untuk pengguna di cakupan langganan.

    Remove-AzRoleAssignment -SignInName rbacuser@example.com `
      -RoleDefinitionName "Reader" `
      -Scope $subScope
    

Membersihkan sumber daya

Untuk membersihkan sumber daya yang dibuat oleh tutorial ini, hapus grup sumber daya dan pengguna.

  1. 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"):
    
  2. Ketika diminta untuk mengonfirmasi, ketik Y. Diperlukan waktu beberapa detik untuk menghapus.

  3. Hapus pengguna menggunakan perintah Remove-MgUser .

    $User = Get-MgUser -Filter "DisplayName eq 'RBAC Tutorial User'"
    Remove-MgUser -UserId $User.Id
    

Langkah berikutnya