Mengonfigurasi Identitas terkelola untuk sumber daya Azure di komputer virtual Azure menggunakan Azure CLI

Identitas terkelola untuk sumber daya Azure adalah fitur Azure Active Directory. Setiap layanan Azure yang mendukung identitas terkelola untuk sumber daya Azure tunduk pada garis waktu mereka masing-masing. Pastikan Anda meninjau status ketersediaan identitas terkelola untuk sumber daya dan masalah yang diketahui sebelum Anda memulai.

Identitas terkelola untuk sumber daya Azure menyediakan layanan Azure dengan identitas yang dikelola secara otomatis di Azure Active Directory. Anda dapat menggunakan identitas ini untuk mengautentikasi ke layanan apa pun yang mendukung autentikasi Microsoft Azure Active Directory, tanpa memiliki info masuk dalam kode Anda.

Dalam artikel ini, dengan menggunakan Azure CLI, Anda mempelajari cara menjalankan identitas terkelola berikut untuk operasi sumber daya Azure pada komputer virtual Azure:

  • Mengaktifkan dan menonaktifkan identitas terkelola yang ditetapkan sistem di komputer virtual Azure
  • Menambahkan dan menghapus identitas terkelola yang ditetapkan pengguna di komputer virtual Azure

Jika Anda belum memiliki akun Azure, daftar untuk mendapatkan akun gratis sebelum melanjutkan.

Prasyarat

  • Gunakan lingkungan Bash di Azure Cloud Shell.

    Luncurkan Cloud Shell di jendela baru

  • Jika mau, instal Azure CLI untuk menjalankan perintah referensi CLI.

    • Jika Anda menggunakan instalasi lokal, masuk ke Azure CLI dengan menggunakan perintah login az. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk tambahan, lihat Masuk dengan Azure CLI.

    • Saat diminta, instal ekstensi saat pertama kali menggunakan Azure CLI. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan ekstensi dengan Azure CLI.

    • Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk memutakhirkan ke versi terbaru, jalankan pemutakhiran az.

Identitas terkelola yang ditetapkan sistem

Di bagian ini, Anda mempelajari cara mengaktifkan dan menonaktifkan identitas terkelola yang ditetapkan sistem di komputer virtual Azure menggunakan Azure CLI.

Mengaktifkan identitas terkelola yang ditetapkan sistem selama pembuatan komputer virtual Azure

Untuk membuat komputer virtual Azure dengan identitas terkelola yang ditetapkan sistem yang diaktifkan, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual. Tidak diperlukan penetapan peran direktori Microsoft Azure Active Directory tambahan.

  1. Buat grup sumber daya untuk penahanan dan penyebaran komputer virtual Anda dan sumber daya terkaitnya, menggunakan az group create. Anda dapat melewati langkah ini jika Anda sudah memiliki grup sumber daya yang ingin Anda gunakan sebagai gantinya:

    az group create --name myResourceGroup --location westus
    
  2. Buat VM menggunakan az vm create. Contoh berikut membuat komputer virtual bernama myVM dengan identitas terkelola yang ditetapkan sistem, seperti yang diminta oleh parameter --assign-identity. Parameter --admin-username dan --admin-password menentukan nama pengguna administratif dan akun kata sandi untuk masuk komputer virtual. Perbarui nilai ini sebagaimana mestinya untuk lingkungan Anda:

    az vm create --resource-group myResourceGroup --name myVM --image win2016datacenter --generate-ssh-keys --assign-identity --admin-username azureuser --admin-password myPassword12
    

Mengaktifkan identitas terkelola yang ditetapkan sistem pada komputer virtual yang ada

Untuk mengaktifkan identitas terkelola yang ditetapkan sistem pada komputer virtual, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual. Tidak diperlukan penetapan peran direktori Microsoft Azure Active Directory tambahan.

  1. Jika Anda menggunakan Azure CLI di konsol lokal, pertama-tama masuk ke Azure menggunakan az login. Gunakan akun yang terkait dengan langganan Azure yang berisi komputer virtual.

    az login
    
  2. Gunakan az vm identity assign dengan perintah identity assign aktifkan identitas yang ditetapkan sistem ke komputer virtual yang ada:

    az vm identity assign -g myResourceGroup -n myVm
    

Menonaktifkan identitas yang ditetapkan sistem dari komputer virtual Azure

Untuk menonaktifkan identitas terkelola yang ditetapkan sistem pada komputer virtual, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual. Tidak diperlukan penetapan peran direktori Microsoft Azure Active Directory tambahan.

Jika Anda memiliki Komputer Virtual yang tidak lagi memerlukan identitas yang ditetapkan sistem, tetapi masih memerlukan identitas yang ditetapkan pengguna, gunakan perintah berikut:

az vm update -n myVM -g myResourceGroup --set identity.type='UserAssigned' 

Jika Anda memiliki komputer virtual yang tidak lagi memerlukan identitas yang ditetapkan sistem dan tidak memiliki identitas yang ditetapkan pengguna, gunakan perintah berikut:

Catatan

Nilai none peka huruf besar/kecil. Harus huruf kecil.

az vm update -n myVM -g myResourceGroup --set identity.type="none"

Identitas Terkelola yang Ditetapkan Pengguna

Di bagian ini, Anda akan mempelajari cara menambahkan dan menghapus identitas terkelola yang ditetapkan pengguna dari komputer virtual Azure menggunakan Azure CLI. Jika Anda membuat identitas terkelola yang ditetapkan pengguna di RG yang berbeda dari komputer virtual Anda. Anda harus menggunakan URL identitas terkelola untuk menetapkannya ke komputer virtual Anda. Contohnya:

--identities "/subscriptions/<SUBID>/resourcegroups/<RESROURCEGROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER_ASSIGNED_ID_NAME>"

Menetapkan identitas terkelola yang ditetapkan pengguna selama pembuatan komputer virtual Azure

Untuk menetapkan identitas yang ditetapkan pengguna ke komputer virtual selama pembuatannya, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual dan Operator Identitas Terkelola. Tidak diperlukan penetapan peran direktori Microsoft Azure Active Directory tambahan.

  1. Anda dapat melewati langkah ini jika sudah memiliki grup sumber daya yang ingin Anda gunakan. Buat grup sumber daya untuk penahanan dan penyebaran identitas terkelola yang ditetapkan pengguna Anda, menggunakan az group create. Pastikan untuk mengganti nilai parameter <RESOURCE GROUP> dan <LOCATION> dengan nilai Anda sendiri. :

    az group create --name <RESOURCE GROUP> --location <LOCATION>
    
  2. Buat identitas terkelola yang ditetapkan pengguna menggunakan buat identitas az. Parameter -g menentukan grup sumber daya tempat identitas terkelola yang ditetapkan pengguna dibuat, dan parameter -n menentukan namanya.

    Penting

    Saat Anda membuat identitas terkelola yang ditetapkan pengguna, hanya karakter alfanumerik (0-9, a-z, dan AZ) dan tanda hubung (-) yang didukung. Untuk penugasan ke komputer virtual atau skala komputer virtual yang diatur agar berfungsi dengan baik, namanya dibatasi hingga 24 karakter. Untuk informasi selengkapnya, lihat Tanya Jawab Umum dan masalah yang sering ditanyakan.

    az identity create -g myResourceGroup -n myUserAssignedIdentity
    

    Respons berisi detail untuk identitas terkelola yang ditetapkan pengguna yang telah dibuat, serupa dengan yang berikut. Nilai ID sumber daya yang ditetapkan ke identitas terkelola yang ditetapkan pengguna digunakan dalam langkah berikut.

    {
        "clientId": "73444643-8088-4d70-9532-c3a0fdc190fz",
        "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<myUserAssignedIdentity>/credentials?tid=5678&oid=9012&aid=73444643-8088-4d70-9532-c3a0fdc190fz",
        "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>",
        "location": "westcentralus",
        "name": "<USER ASSIGNED IDENTITY NAME>",
        "principalId": "e5fdfdc1-ed84-4d48-8551-fe9fb9dedfll",
        "resourceGroup": "<RESOURCE GROUP>",
        "tags": {},
        "tenantId": "733a8f0e-ec41-4e69-8ad8-971fc4b533bl",
        "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  3. Buat VM menggunakan az vm create. Contoh berikut membuat komputer virtual yang terkait dengan identitas yang ditetapkan pengguna baru, seperti yang ditentukan oleh parameter --assign-identity. Pastikan untuk mengganti nilai parameter <RESOURCE GROUP>, <VM NAME>, <USER NAME>, <PASSWORD>, dan <USER ASSIGNED IDENTITY NAME> dengan nilai Anda sendiri.

    az vm create --resource-group <RESOURCE GROUP> --name <VM NAME> --image UbuntuLTS --admin-username <USER NAME> --admin-password <PASSWORD> --assign-identity <USER ASSIGNED IDENTITY NAME>
    

Menetapkan identitas terkelola yang ditetapkan pengguna ke komputer virtual Azure yang sudah ada

Untuk menetapkan identitas yang ditetapkan pengguna ke komputer virtual, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual dan Operator Identitas Terkelola. Tidak diperlukan penetapan peran direktori Microsoft Azure Active Directory tambahan.

  1. Buat identitas yang ditetapkan pengguna menggunakan az identity create. Parameter -g menentukan grup sumber daya tempat identitas yang ditetapkan pengguna dibuat, dan parameter -n menentukan namanya. Pastikan untuk mengganti nilai parameter <RESOURCE GROUP> dan <USER ASSIGNED IDENTITY NAME> dengan nilai Anda sendiri:

    Penting

    Membuat identitas terkelola yang ditetapkan pengguna dengan karakter khusus (misalnya, garis bawah) dalam nama saat ini tidak didukung. Gunakan karakter alfanumerik. Periksa kembali untuk melihat pembaruan. Untuk informasi selengkapnya, lihat Tanya Jawab Umum dan masalah yang diketahui

    az identity create -g <RESOURCE GROUP> -n <USER ASSIGNED IDENTITY NAME>
    

    Respons berisi detail untuk identitas terkelola yang ditetapkan pengguna yang telah dibuat, serupa dengan yang berikut.

    {
      "clientId": "73444643-8088-4d70-9532-c3a0fdc190fz",
      "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/credentials?tid=5678&oid=9012&aid=73444643-8088-4d70-9532-c3a0fdc190fz",
      "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>",
      "location": "westcentralus",
      "name": "<USER ASSIGNED IDENTITY NAME>",
      "principalId": "e5fdfdc1-ed84-4d48-8551-fe9fb9dedfll",
      "resourceGroup": "<RESOURCE GROUP>",
      "tags": {},
      "tenantId": "733a8f0e-ec41-4e69-8ad8-971fc4b533bl",
      "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  2. Tetapkan identitas yang ditetapkan pengguna ke komputer virtual Anda menggunakan az vm identity assign. Pastikan untuk mengganti nilai parameter <RESOURCE GROUP> dan <VM NAME> dengan nilai Anda sendiri. <USER ASSIGNED IDENTITY NAME> adalah properti name sumber daya identitas terkelola yang ditetapkan pengguna, seperti yang dibuat di langkah sebelumnya. Jika Anda membuat identitas terkelola yang ditetapkan pengguna di RG yang berbeda dari komputer virtual Anda. Anda harus menggunakan URL identitas terkelola Anda.

    az vm identity assign -g <RESOURCE GROUP> -n <VM NAME> --identities <USER ASSIGNED IDENTITY>
    

Menghapus identitas terkelola yang ditetapkan pengguna dari komputer virtual Azure

Untuk menghapus identitas yang ditetapkan pengguna ke komputer virtual, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual.

Jika ini adalah satu-satunya identitas terkelola yang ditetapkan pengguna yang ditetapkan ke komputer virtual, UserAssigned akan dihapus dari nilai jenis identitas. Pastikan untuk mengganti nilai parameter <RESOURCE GROUP> dan <VM NAME> dengan nilai Anda sendiri. <USER ASSIGNED IDENTITY> akan menjadi properti name identitas yang ditetapkan pengguna, yang dapat ditemukan di bagian identitas dari komputer virtual menggunakan az vm identity show:

az vm identity remove -g <RESOURCE GROUP> -n <VM NAME> --identities <USER ASSIGNED IDENTITY>

Jika komputer virtual Anda tidak memiliki identitas terkelola yang ditetapkan sistem dan Anda ingin menghapus semua identitas yang ditetapkan pengguna dari komputer virtual, gunakan perintah berikut:

Catatan

Nilai none peka huruf besar/kecil. Harus huruf kecil.

az vm update -n myVM -g myResourceGroup --set identity.type="none" identity.userAssignedIdentities=null

Jika komputer virtual Anda memiliki identitas yang ditetapkan sistem dan ditetapkan pengguna, Anda dapat menghapus semua identitas yang ditetapkan pengguna dengan beralih untuk hanya menggunakan yang ditetapkan sistem. Gunakan perintah berikut:

az vm update -n myVM -g myResourceGroup --set identity.type='SystemAssigned' identity.userAssignedIdentities=null 

Langkah berikutnya