Mengonfigurasi identitas terkelola pada komputer virtual (VM) Azure
Identitas terkelola untuk sumber daya Azure adalah fitur ID Microsoft Entra. 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 memberikan layanan Azure identitas terkelola otomatis di Microsoft Entra ID. Anda dapat menggunakan identitas ini untuk mengautentikasi tiap layanan yang mendukung autentikasi Microsoft Entra, tanpa memiliki kredensial dalam kode Anda.
Untuk informasi tentang definisi dan detail Azure Policy, lihat Menggunakan Azure Policy untuk menetapkan identitas terkelola (pratinjau).
Dalam artikel ini, Anda mempelajari cara mengaktifkan dan menonaktifkan sistem dan identitas terkelola yang ditetapkan pengguna untuk Azure Virtual Machine (VM), menggunakan portal Microsoft Azure.
Prasyarat
- Jika Anda tidak terbiasa dengan identitas terkelola untuk sumber daya Azure, lihat bagian ringkasan.
- Jika Anda belum memiliki akun Azure, daftar untuk mendapatkan akun gratis sebelum melanjutkan.
Identitas terkelola yang ditetapkan sistem
Di bagian ini, Anda mempelajari cara mengaktifkan dan menonaktifkan identitas terkelola yang ditetapkan sistem untuk Komputer Virtual menggunakan portal Microsoft Azure.
Aktifkan identitas terkelola yang ditetapkan sistem selama pembuatan VM
Untuk mengaktifkan identitas terkelola yang ditetapkan sistem pada Komputer Virtual selama pembuatannya, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual. Tidak diperlukan penetapan peran direktori Microsoft Entra lainnya.
- Di bawah tab Manajemen di bagian Identitas, alihkan Identitas layanan terkelola ke Aktif.
Lihat Mulai Cepat berikut ini untuk membuat Komputer Virtual:
- Buat komputer virtual Windows dengan portal Microsoft Azure
- Membuat komputer virtual Linux dengan portal Azure
Aktifkan identitas terkelola yang ditetapkan sistem pada Komputer Virtual yang ada
Tip
Langkah-langkah dalam artikel ini mungkin sedikit berbeda berdasarkan portal tempat Anda memulai.
Untuk mengaktifkan identitas terkelola yang ditetapkan sistem pada komputer virtual yang awalnya disediakan tanpa identitas tersebut, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual. Tidak diperlukan penetapan peran direktori Microsoft Entra lainnya.
Masuk ke portal Microsoft Azure menggunakan akun yang terkait dengan langganan Azure yang berisi Komputer Virtual.
Arahkan ke Komputer Virtual yang diinginkan dan pilih Identitas.
Di bawah Sistem ditetapkan, Status, pilih Aktif lalu klik Simpan:
Menghapus identitas terkelola yang ditetapkan sistem dari Komputer Virtual
Untuk menghapus identitas terkelola yang ditetapkan sistem dari Komputer Virtual, akun Anda memerlukan penetapan peran Kontributor Komputer virtual. Tidak diperlukan penetapan peran direktori Microsoft Entra lainnya.
Jika Anda memiliki Komputer Virtual yang tidak lagi memerlukan identitas terkelola yang ditetapkan sistem:
Masuk ke portal Microsoft Azure menggunakan akun yang terkait dengan langganan Azure yang berisi Komputer Virtual.
Arahkan ke Komputer Virtual yang diinginkan dan pilih Identitas.
Di bawah Sistem ditetapkan, Status, pilih Nonaktif, lalu klik Simpan:
Identitas terkelola yang ditetapkan pengguna
Di bagian ini, Anda mempelajari cara menambahkan dan menghapus identitas terkelola yang ditetapkan pengguna dari Komputer Virtual menggunakan portal Microsoft Azure.
Menetapkan identitas yang ditetapkan pengguna selama pembuatan Komputer Virtual
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 Entra lainnya.
Saat ini, portal Microsoft Azure tidak mendukung penetapan identitas terkelola yang ditetapkan pengguna selama pembuatan Komputer Virtual. Sebagai gantinya, lihat salah satu artikel Mulai Cepat pembuatan Komputer Virtual berikut ini untuk terlebih dahulu membuat Komputer Virtual, lalu lanjutkan ke bagian berikutnya untuk detail tentang menetapkan identitas terkelola yang ditetapkan pengguna ke Komputer Virtual:
- Buat komputer virtual Windows dengan portal Microsoft Azure
- Membuat komputer virtual Linux dengan portal Azure
Menetapkan identitas terkelola yang ditetapkan pengguna ke Komputer Virtual 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 Entra lainnya.
Masuk ke portal Microsoft Azure menggunakan akun yang terkait dengan langganan Azure yang berisi Komputer Virtual.
Arahkan ke mesin virtual yang diinginkan dan klik Identitas, pengguna ditetapkan lalu +Tambahkan.
Klik identitas yang ditetapkan pengguna yang ingin Anda tambahkan ke Komputer Virtual lalu klik Tambahkan.
Menghapus identitas terkelola yang ditetapkan pengguna dari Komputer Virtual
Untuk menghapus identitas yang ditetapkan pengguna dari Komputer Virtual, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual. Tidak diperlukan penetapan peran direktori Microsoft Entra lainnya.
Masuk ke portal Microsoft Azure menggunakan akun yang terkait dengan langganan Azure yang berisi Komputer Virtual.
Navigasikan ke VM yang diinginkan dan pilih Identitas, Pengguna yang ditetapkan, nama identitas terkelola yang ditetapkan pengguna yang ingin Anda hapus lalu klik Hapus (klik Ya di panel konfirmasi).
Langkah berikutnya
- Menggunakan portal Microsoft Azure, berikan akses identitas terkelola Komputer Virtual Azure ke sumber daya Azure lainnya.
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
- Jika Anda asing dengan identitas terkelola untuk sumber daya Azure, lihat Apa itu identitas terkelola untuk sumber daya Azure?. Untuk mempelajari jenis identitas terkelola yang ditetapkan sistem dan yang ditetapkan pengguna, lihat Jenis identitas terkelola.
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai Cepat untuk Bash di Azure Cloud Shell.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, instal Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
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 lainnya, lihat Masuk dengan Azure CLI.
Saat Anda diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan peningkatan 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 Entra lainnya.
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
Buat komputer virtual menggunakan az vm create. Contoh berikut membuat VM bernama myVM dengan identitas terkelola yang ditetapkan sistem, seperti yang diminta oleh parameter
--assign-identity
, dengan--role
dan--scope
yang ditentukan. 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 --role contributor --scope mySubscription --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 Entra lainnya.
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
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 Entra lainnya.
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 Entra lainnya.
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>
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, nama harus dimulai dengan huruf atau angka, dan dapat menyertakan kombinasi karakter alfanumerik, tanda hubung (-) dan garis bawah (_). 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": "00001111-aaaa-2222-bbbb-3333cccc4444", "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<myUserAssignedIdentity>/credentials?tid=5678&oid=9012&aid=aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>", "location": "westcentralus", "name": "<USER ASSIGNED IDENTITY NAME>", "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222", "resourceGroup": "<RESOURCE GROUP>", "tags": {}, "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee", "type": "Microsoft.ManagedIdentity/userAssignedIdentities" }
Buat komputer virtual menggunakan az vm create. Contoh berikut membuat VM yang terkait dengan identitas baru yang ditetapkan pengguna, seperti yang ditentukan oleh parameter
--assign-identity
, dengan--role
dan--scope
yang ditentukan. Pastikan untuk mengganti nilai parameter<RESOURCE GROUP>
,<VM NAME>
,<USER NAME>
,<PASSWORD>
,<USER ASSIGNED IDENTITY NAME>
,<ROLE>
, dan<SUBSCRIPTION>
dengan nilai Anda sendiri.az vm create --resource-group <RESOURCE GROUP> --name <VM NAME> --image <SKU linux image> --admin-username <USER NAME> --admin-password <PASSWORD> --assign-identity <USER ASSIGNED IDENTITY NAME> --role <ROLE> --scope <SUBSCRIPTION>
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 Entra lainnya.
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 (yaitu 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": "00001111-aaaa-2222-bbbb-3333cccc4444", "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=aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>", "location": "westcentralus", "name": "<USER ASSIGNED IDENTITY NAME>", "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222", "resourceGroup": "<RESOURCE GROUP>", "tags": {}, "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee", "type": "Microsoft.ManagedIdentity/userAssignedIdentities" }
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 propertiname
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
- Identitas terkelola untuk sumber daya Azure
- Untuk Mulai Cepat pembuatan Azure VM lengkap, lihat:
Dalam artikel ini, dengan menggunakan PowerShell, Anda mempelajari cara menjalankan identitas terkelola berikut untuk operasi sumber daya Azure pada komputer virtual Azure.
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
- Jika Anda tidak terbiasa dengan identitas terkelola untuk sumber daya Azure, lihat bagian ringkasan. Pastikan untuk meninjau perbedaan antara identitas terkelola yang ditetapkan sistem dan ditetapkan pengguna.
- Jika Anda belum memiliki akun Azure, daftar untuk mendapatkan akun gratis sebelum melanjutkan.
- Untuk menjalankan contoh skrip, Anda memiliki dua opsi:
- Gunakan Azure Cloud Shell, yang dapat Anda buka menggunakan tombol Coba di sudut kanan atas blok kode.
- Jalankan skrip secara lokal dengan menginstal versi terbaru Azure PowerShell, lalu masuk ke Azure menggunakan
Connect-AzAccount
.
Identitas terkelola yang ditetapkan sistem
Di bagian ini, kita membahas cara mengaktifkan dan menonaktifkan identitas terkelola yang ditetapkan sistem menggunakan Azure PowerShell.
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 Entra lainnya.
Lihat salah satu Mulai Cepat komputer virtual Azure berikut, yang hanya menyelesaikan bagian yang diperlukan ("Masuk ke Azure", "Buat grup sumber daya", "Buat grup jaringan", "Buat komputer virtual").
Ketika Anda sampai di bagian "Buat komputer virtual", buat sedikit modifikasi pada sintaks cmdlet New-AzVMConfig. Pastikan untuk menambahkan parameter
-IdentityType SystemAssigned
untuk menyediakan komputer virtual dengan identitas yang ditetapkan sistem yang diaktifkan, misalnya:$vmConfig = New-AzVMConfig -VMName myVM -IdentityType SystemAssigned ...
Mengaktifkan identitas terkelola yang ditetapkan sistem pada komputer virtual yang ada
Untuk mengaktifkan identitas terkelola yang ditetapkan sistem pada komputer virtual yang awalnya disediakan tanpa identitas tersebut, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual. Tidak diperlukan penetapan peran direktori Microsoft Entra lainnya.
Ambil properti VM menggunakan cmdlet
Get-AzVM
. Selanjutnya untuk mengaktifkan identitas terkelola yang ditetapkan sistem, gunakan tombol-IdentityType
pada cmdlet Update-AzVM:$vm = Get-AzVM -ResourceGroupName myResourceGroup -Name myVM Update-AzVM -ResourceGroupName myResourceGroup -VM $vm -IdentityType SystemAssigned
Menambahkan identitas yang ditetapkan sistem komputer virtual ke grup
Setelah mengaktifkan identitas yang diaktifkan sistem pada komputer virtual, Anda dapat menambahkannya ke grup. Prosedur berikut menambahkan identitas yang ditetapkan sistem di komputer virtual ke grup.
Ambil dan catat
ObjectID
(sebagaimana ditentukan dalam bidangId
dari nilai yang dikembalikan) perwakilan layanan komputer virtual:Get-AzADServicePrincipal -displayname "myVM"
Ambil dan catat
ObjectID
(sebagaimana ditentukan dalam bidangId
dari nilai yang dikembalikan) grup:Get-AzADGroup -searchstring "myGroup"
Tambahkan perwakilan layanan komputer virtual ke grup:
New-MgGroupMember -GroupId "<Id of group>" -DirectoryObjectId "<Id of VM service principal>"
Menonaktifkan identitas terkelola 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 Entra lainnya.
Jika Anda memiliki Komputer Virtual yang tidak lagi memerlukan identitas terkelola yang ditetapkan sistem, tetapi masih memerlukan identitas terkelola yang ditetapkan pengguna, gunakan cmdlet berikut:
Ambil properti komputer virtual menggunakan cmdlet
Get-AzVM
dan atur parameter-IdentityType
keUserAssigned
:$vm = Get-AzVM -ResourceGroupName myResourceGroup -Name myVM Update-AzVm -ResourceGroupName myResourceGroup -VM $vm -IdentityType "UserAssigned" -IdentityID "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESROURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>..."
Jika Anda memiliki komputer virtual yang tidak lagi memerlukan identitas terkelola yang ditetapkan sistem dan tidak memiliki identitas terkelola yang ditetapkan pengguna, gunakan perintah berikut:
$vm = Get-AzVM -ResourceGroupName myResourceGroup -Name myVM
Update-AzVm -ResourceGroupName myResourceGroup -VM $vm -IdentityType None
Identitas terkelola yang ditetapkan pengguna
Di bagian ini, Anda mempelajari cara menambahkan dan menghapus identitas terkelola yang ditetapkan pengguna dari komputer virtual menggunakan Azure PowerShell.
Menetapkan identitas terkelola yang ditetapkan pengguna ke komputer virtual selama pembuatan
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 Entra lainnya.
Lihat salah satu Mulai Cepat komputer virtual Azure berikut, yang hanya menyelesaikan bagian yang diperlukan ("Masuk ke Azure", "Buat grup sumber daya", "Buat grup jaringan", "Buat komputer virtual").
Ketika Anda sampai di bagian "Buat komputer virtual", buat sedikit modifikasi pada sintaks cmdlet
New-AzVMConfig
. Tambahkan parameter-IdentityType UserAssigned
dan-IdentityID
untuk menyediakan komputer virtual dengan identitas yang ditetapkan pengguna. Ganti<VM NAME>
,<SUBSCRIPTION ID>
,<RESROURCE GROUP>
, dan<USER ASSIGNED IDENTITY NAME>
dengan nilai Anda. Contohnya:$vmConfig = New-AzVMConfig -VMName <VM NAME> -IdentityType UserAssigned -IdentityID "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESROURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<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 Entra lainnya.
Buat identitas terkelola yang ditetapkan pengguna menggunakan cmdlet New-AzUserAssignedIdentity. Catat
Id
di keluaran karena Anda akan memerlukan informasi ini di langkah berikutnya.Penting
Membuat identitas terkelola yang ditetapkan pengguna hanya mendukung karakter alfanumerik, garis bawah, dan tanda hubung (0-9 or a-z atau A-Z, _ atau -). Selain itu, panjang nama harus dibatasi mulai dari 3 hingga 128 karakter agar penugasan ke komputer virtual/Microsoft Azure Virtual Machine Scale Sets berfungsi dengan baik. Untuk informasi selengkapnya, lihat Tanya Jawab Umum dan masalah yang diketahui
New-AzUserAssignedIdentity -ResourceGroupName <RESOURCEGROUP> -Name <USER ASSIGNED IDENTITY NAME>
Ambil properti VM menggunakan cmdlet
Get-AzVM
. Selanjutnya untuk menetapkan identitas terkelola yang ditetapkan pengguna ke komputer virtual Azure, gunakan tombol-IdentityType
dan-IdentityID
do cmdlet Update-AzVM. Nilai untuk parameter-IdentityId
adalahId
yang Anda catat di langkah sebelumnya. Ganti<VM NAME>
,<SUBSCRIPTION ID>
,<RESROURCE GROUP>
, dan<USER ASSIGNED IDENTITY NAME>
dengan nilai Anda.Peringatan
Untuk mempertahankan identitas terkelola yang ditetapkan pengguna sebelumnya yang ditetapkan ke komputer virtual, kuerikan properti
Identity
dari objek VM (misalnya,$vm.Identity
). Jika ada identitas terkelola yang ditetapkan pengguna dikembalikan, sertakan dalam perintah berikut bersama dengan identitas terkelola yang ditetapkan pengguna baru yang ingin Anda tetapkan ke komputer virtual.$vm = Get-AzVM -ResourceGroupName <RESOURCE GROUP> -Name <VM NAME> # Get the list of existing identity IDs and then append to it $identityIds = $vm.Identity.UserAssignedIdentities.Keys $uid = "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESROURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>" $identityIds = $identityIds + $uid # Update the VM with added identity IDs Update-AzVM -ResourceGroupName <RESOURCE GROUP> -VM $vm -IdentityType UserAssigned -IdentityID $uid
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 komputer virtual Anda memiliki beberapa identitas terkelola yang ditetapkan pengguna, Anda dapat menghapus semuanya, kecuali yang terakhir menggunakan perintah berikut. Pastikan untuk mengganti nilai parameter <RESOURCE GROUP>
dan <VM NAME>
dengan nilai Anda sendiri. <USER ASSIGNED IDENTITY NAME>
adalah properti nama identitas terkelola yang ditetapkan pengguna, yang harus tetap berada di komputer virtual. Informasi ini dapat ditemukan menggunakan kueri untuk Identity
mencari properti objek VM. Misalnya, $vm.Identity
:
$vm = Get-AzVm -ResourceGroupName myResourceGroup -Name myVm
Update-AzVm -ResourceGroupName myResourceGroup -VirtualMachine $vm -IdentityType UserAssigned -IdentityID <USER ASSIGNED IDENTITY NAME>
Jika komputer virtual Anda tidak memiliki identitas terkelola yang ditetapkan sistem dan Anda ingin menghapus semua identitas terkelola yang ditetapkan pengguna dari komputer virtual, gunakan perintah berikut:
$vm = Get-AzVm -ResourceGroupName myResourceGroup -Name myVm
Update-AzVm -ResourceGroupName myResourceGroup -VM $vm -IdentityType None
Jika komputer virtual Anda memiliki identitas terkelola yang ditetapkan sistem dan ditetapkan pengguna, Anda dapat menghapus semua identitas terkelola yang ditetapkan pengguna dengan beralih untuk hanya menggunakan identitas terkelola yang ditetapkan sistem.
$vm = Get-AzVm -ResourceGroupName myResourceGroup -Name myVm
Update-AzVm -ResourceGroupName myResourceGroup -VirtualMachine $vm -IdentityType "SystemAssigned"
Langkah berikutnya
Untuk Mulai Cepat pembuatan komputer virtual Azure lengkap, lihat:
Dalam artikel ini, dengan menggunakan templat penyebaran Azure Resource Manager, Anda mempelajari cara menjalankan identitas terkelola berikut untuk operasi sumber daya Azure di komputer virtual Azure:
Prasyarat
- Jika Anda tidak terbiasa menggunakan templat penyebaran Azure Resource Manager, lihat bagian gambaran umum. Pastikan untuk meninjau perbedaan antara identitas terkelola yang ditetapkan sistem dan ditetapkan pengguna.
- Jika Anda belum memiliki akun Azure, daftar untuk mendapatkan akun gratis sebelum melanjutkan.
Templat Azure Resource Manager
Seperti portal Azure dan pembuatan skrip, templat Azure Resource Manager memungkinkan Anda untuk menerapkan sumber daya baru atau yang dimodifikasi yang ditentukan oleh grup sumber daya Azure. Beberapa opsi tersedia untuk pengeditan dan penyebaran templat, baik berbasis lokal maupun portal, termasuk:
- Menggunakan templat khusus dari Azure Marketplace, yang memungkinkan Anda membuat templat dari awal, atau mendasarkannya pada templat mulai cepat atau umum yang ada.
- Berasal dari grup sumber daya yang ada, dengan mengekspor templat dari penyebaran asli, atau dari status penyebaran saat ini.
- Menggunakan editor JSON lokal (seperti Visual Studio Code), lalu mengunggah dan menyebarkan dengan menggunakan PowerShell atau CLI.
- Menggunakan Visual Studio proyek Azure Resource Group untuk membuat dan menggunakan templat.
Terlepas dari opsi yang Anda pilih, sintaks templat sama selama penyebaran awal dan pemindahan ulang. Mengaktifkan identitas terkelola yang ditetapkan sistem atau pengguna di komputer virtual baru atau yang sudah ada dilakukan dengan cara yang sama. Selain itu, secara default, Azure Resource Manager melakukan pembaruan bertahap untuk penyebaran.
Identitas terkelola yang ditetapkan sistem
Di bagian ini, Anda akan mengaktifkan dan menonaktifkan identitas terkelola yang ditetapkan sistem menggunakan templat Azure Resource Manager.
Mengaktifkan identitas terkelola yang ditetapkan sistem selama pembuatan komputer virtual Azure atau 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 Entra lainnya.
Baik Anda masuk ke Azure secara lokal maupun melalui portal Microsoft Azure, gunakan akun yang terkait dengan langganan Azure yang berisi komputer virtual.
Untuk mengaktifkan identitas terkelola yang ditetapkan sistem, muat templat ke editor, temukan sumber daya
Microsoft.Compute/virtualMachines
yang menarik dalam bagianresources
dan tambahkan properti"identity"
pada tingkat yang sama dengan properti"type": "Microsoft.Compute/virtualMachines"
. Gunakan sintaks berikut:"identity": { "type": "SystemAssigned" },
Bila sudah selesai, bagian berikut harus ditambahkan ke bagian
resource
dari templat Anda dan harus menyerupai yang berikut:"resources": [ { //other resource provider properties... "apiVersion": "2018-06-01", "type": "Microsoft.Compute/virtualMachines", "name": "[variables('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "SystemAssigned", } } ]
Menetapkan peran identitas terkelola yang ditetapkan sistem komputer virtual
Setelah mengaktifkan identitas terkelola yang ditetapkan sistem pada VM Anda, Anda mungkin ingin memberinya peran seperti akses Pembaca ke grup sumber daya tempat identitas tersebut dibuat. Temukan informasi terperinci untuk membantu Anda dengan langkah ini di artikel Menetapkan peran Azure menggunakan templat Azure Resource Manager.
Menonaktifkan identitas terkelola yang ditetapkan sistem dari komputer virtual Azure
Untuk menghapus identitas terkelola yang ditetapkan sistem dari Komputer Virtual, akun Anda memerlukan penetapan peran Kontributor Komputer virtual. Tidak diperlukan penetapan peran direktori Microsoft Entra lainnya.
Baik Anda masuk ke Azure secara lokal maupun melalui portal Microsoft Azure, gunakan akun yang terkait dengan langganan Azure yang berisi komputer virtual.
Muat kerangka ke dalam editor dan temukan
Microsoft.Compute/virtualMachines
sumber daya yang diinginkan dalam bagianresources
. Jika Anda memiliki Komputer Virtual yang hanya memiliki identitas terkelola yang ditetapkan sistem, Anda dapat menonaktifkannya dengan mengubah jenis identitas menjadiNone
.Microsoft.Compute/virtualMachines versi API 2018-06-01
Jika komputer virtual Anda memiliki identitas terkelola yang ditetapkan sistem dan pengguna, hapus
SystemAssigned
dari jenis identitas dan ikutiUserAssigned
dengan nilai kamususerAssignedIdentities
.Microsoft.Compute/virtualMachines versi API 2018-06-01
Jika
apiVersion
Anda adalah2017-12-01
dan komputer virtual Anda memiliki identitas terkelola yang ditetapkan sistem dan pengguna, hapusSystemAssigned
dari jenis identitas dan ikutiUserAssigned
dengan arrayidentityIds
dari identitas terkelola yang ditetapkan pengguna.
Contoh berikut memperlihatkan cara menghapus identitas terkelola yang ditetapkan sistem dari komputer virtual tanpa identitas terkelola yang ditetapkan pengguna:
{
"apiVersion": "2018-06-01",
"type": "Microsoft.Compute/virtualMachines",
"name": "[parameters('vmName')]",
"location": "[resourceGroup().location]",
"identity": {
"type": "None"
}
}
Identitas terkelola yang ditetapkan pengguna
Di bagian ini, Anda menetapkan identitas terkelola yang ditetapkan pengguna ke komputer virtual Azure menggunakan templat Azure Resource Manager.
Catatan
Untuk membuat identitas terkelola yang ditetapkan pengguna menggunakan Templat Azure Resource Manager, lihat Membuat identitas terkelola yang ditetapkan pengguna.
Menetapkan identitas terkelola yang ditetapkan pengguna ke komputer virtual Azure
Untuk menetapkan identitas yang ditetapkan pengguna ke mesin virtual, akun Anda memerlukan penetapan peran Operator Identitas Terkelola. Tidak diperlukan penetapan peran direktori Microsoft Entra lainnya.
Di elemen
resources
, tambahkan entri berikut untuk menetapkan identitas terkelola yang ditetapkan pengguna ke komputer virtual Anda. Pastikan untuk mengganti<USERASSIGNEDIDENTITY>
dengan nama identitas terkelola yang ditetapkan pengguna yang Anda buat.Microsoft.Compute/virtualMachines versi API 2018-06-01
Jika
apiVersion
Anda adalah2018-06-01
, identitas terkelola yang ditetapkan pengguna Anda disimpan dalam format kamususerAssignedIdentities
dan nilai<USERASSIGNEDIDENTITYNAME>
harus disimpan dalam variabel yang ditentukan di bagianvariables
dari templat Anda.{ "apiVersion": "2018-06-01", "type": "Microsoft.Compute/virtualMachines", "name": "[variables('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "userAssigned", "userAssignedIdentities": { "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {} } } }
Microsoft.Compute/virtualMachines versi API 2017-12-01
Jika
apiVersion
Anda adalah2017-12-01
, identitas terkelola yang ditetapkan pengguna Anda disimpan dalam arrayidentityIds
dan nilai<USERASSIGNEDIDENTITYNAME>
harus disimpan dalam variabel yang ditentukan di bagianvariables
dari templat Anda.{ "apiVersion": "2017-12-01", "type": "Microsoft.Compute/virtualMachines", "name": "[variables('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "userAssigned", "identityIds": [ "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]" ] } }
Bila sudah selesai, bagian berikut harus ditambahkan ke bagian
resource
dari templat Anda dan harus menyerupai yang berikut:Microsoft.Compute/virtualMachines versi API 2018-06-01
"resources": [ { //other resource provider properties... "apiVersion": "2018-06-01", "type": "Microsoft.Compute/virtualMachines", "name": "[variables('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "userAssigned", "userAssignedIdentities": { "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {} } } } ]
Microsoft.Compute/virtualMachines versi API 2017-12-01
"resources": [ { //other resource provider properties... "apiVersion": "2017-12-01", "type": "Microsoft.Compute/virtualMachines", "name": "[variables('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "userAssigned", "identityIds": [ "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]" ] } } ]
Menghapus identitas terkelola yang ditetapkan pengguna dari komputer virtual Azure
Untuk menghapus identitas yang ditetapkan pengguna dari Komputer Virtual, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual. Tidak diperlukan penetapan peran direktori Microsoft Entra lainnya.
Baik Anda masuk ke Azure secara lokal maupun melalui portal Microsoft Azure, gunakan akun yang terkait dengan langganan Azure yang berisi komputer virtual.
Muat kerangka ke dalam editor dan temukan
Microsoft.Compute/virtualMachines
sumber daya yang diinginkan dalam bagianresources
. Jika Anda memiliki komputer virtual yang hanya memiliki identitas terkelola yang ditetapkan pengguna, Anda dapat menonaktifkannya dengan mengubah jenis identitas menjadiNone
.Contoh berikut menunjukkan kepada Anda cara menghapus semua identitas terkelola yang ditetapkan pengguna dari Komputer Virtual tanpa identitas terkelola yang ditetapkan sistem:
{ "apiVersion": "2018-06-01", "type": "Microsoft.Compute/virtualMachines", "name": "[parameters('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "None" }, }
Microsoft.Compute/virtualMachines versi API 2018-06-01
Untuk menghapus satu identitas terkelola yang ditetapkan pengguna dari komputer virtual, hapus dari kamus
useraAssignedIdentities
.Jika Anda memiliki identitas terkelola yang ditetapkan sistem, simpan dalam nilai
type
di bawah nilaiidentity
.Microsoft.Compute/virtualMachines versi API 2017-12-01
Untuk menghapus satu identitas terkelola yang ditetapkan pengguna dari komputer virtual, hapus dari array
identityIds
.Jika Anda memiliki identitas terkelola yang ditetapkan sistem, simpan dalam nilai
type
di bawah nilaiidentity
.
Langkah berikutnya
Dalam artikel ini, menggunakan CURL untuk melakukan panggilan ke titik akhir REST Azure Resource Manager, Anda mempelajari cara menjalankan identitas terkelola berikut untuk operasi sumber daya Azure di 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
- Jika Anda asing dengan identitas terkelola untuk sumber daya Azure, lihat Apa itu identitas terkelola untuk sumber daya Azure?. Untuk mempelajari jenis identitas terkelola yang ditetapkan sistem dan yang ditetapkan pengguna, lihat Jenis identitas terkelola.
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai Cepat untuk Bash di Azure Cloud Shell.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, instal Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
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 lainnya, lihat Masuk dengan Azure CLI.
Saat Anda diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan peningkatan 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 CURL untuk melakukan panggilan ke titik akhir REST Azure Resource Manager.
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 Entra lainnya.
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
Buat antarmuka jaringan untuk komputer virtual Anda:
az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
Ambil token akses Pembawa, yang akan Anda gunakan pada langkah berikutnya di header Otorisasi untuk membuat komputer virtual Anda dengan identitas terkelola yang ditetapkan sistem.
az account get-access-token
Dengan menggunakan Azure Cloud Shell, buat komputer virtual menggunakan CURL untuk memanggil titik akhir REST Azure Resource Manager. Contoh berikut membuat komputer virtual bernama myVM dengan identitas terkelola yang ditetapkan sistem, seperti yang diidentifikasi dalam isi permintaan berdasarkan nilai
"identity":{"type":"SystemAssigned"}
. Ganti<ACCESS TOKEN>
dengan nilai yang Anda terima di langkah sebelumnya ketika Anda meminta token akses Pembawa dan nilai<SUBSCRIPTION ID>
yang sesuai untuk lingkungan Anda.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PUT -d '{"location":"westus","name":"myVM","identity":{"type":"SystemAssigned"},"properties":{"hardwareProfile":{"vmSize":"Standard_D2_v2"},"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"name":"myVM3osdisk","createOption":"FromImage"},"dataDisks":[{"diskSizeGB":1023,"createOption":"Empty","lun":0},{"diskSizeGB":1023,"createOption":"Empty","lun":1}]},"osProfile":{"adminUsername":"azureuser","computerName":"myVM","adminPassword":"<SECURE PASSWORD STRING>"},"networkProfile":{"networkInterfaces":[{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic","properties":{"primary":true}}]}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "location":"westus", "name":"myVM", "identity":{ "type":"SystemAssigned" }, "properties":{ "hardwareProfile":{ "vmSize":"Standard_D2_v2" }, "storageProfile":{ "imageReference":{ "sku":"2016-Datacenter", "publisher":"MicrosoftWindowsServer", "version":"latest", "offer":"WindowsServer" }, "osDisk":{ "caching":"ReadWrite", "managedDisk":{ "storageAccountType":"StandardSSD_LRS" }, "name":"myVM3osdisk", "createOption":"FromImage" }, "dataDisks":[ { "diskSizeGB":1023, "createOption":"Empty", "lun":0 }, { "diskSizeGB":1023, "createOption":"Empty", "lun":1 } ] }, "osProfile":{ "adminUsername":"azureuser", "computerName":"myVM", "adminPassword":"myPassword12" }, "networkProfile":{ "networkInterfaces":[ { "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic", "properties":{ "primary":true } } ] } } }
Mengaktifkan identitas terkelola yang ditetapkan sistem di komputer virtual yang ada
Untuk mengaktifkan identitas terkelola yang ditetapkan sistem pada komputer virtual yang awalnya disediakan tanpa identitas tersebut, akun Anda memerlukan penetapan peran Kontributor Komputer Virtual. Tidak diperlukan penetapan peran direktori Microsoft Entra lainnya.
Ambil token akses Pembawa, yang akan Anda gunakan pada langkah berikutnya di header Otorisasi untuk membuat komputer virtual Anda dengan identitas terkelola yang ditetapkan sistem.
az account get-access-token
Gunakan perintah CURL berikut untuk memanggil titik akhir REST Azure Resource Manager untuk mengaktifkan identitas terkelola yang ditetapkan sistem pada komputer virtual Anda seperti yang diidentifikasi dalam isi permintaan berdasarkan nilai
{"identity":{"type":"SystemAssigned"}
untuk komputer virtual bernama myVM. Ganti<ACCESS TOKEN>
dengan nilai yang Anda terima di langkah sebelumnya ketika Anda meminta token akses Pembawa dan nilai<SUBSCRIPTION ID>
yang sesuai untuk lingkungan Anda.Penting
Untuk memastikan Anda tidak menghapus identitas terkelola yang ditetapkan pengguna apa pun yang ditetapkan ke komputer virtual, Anda perlu mencantumkan identitas terkelola yang ditetapkan pengguna menggunakan perintah CURL ini:
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachines/<VM NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
. Jika Anda memiliki identitas terkelola yang ditetapkan pengguna yang ditetapkan ke komputer virtual seperti yang diidentifikasi dalam nilaiidentity
dalam respons, lewati ke langkah 3 yang memperlihatkan cara mempertahankan identitas terkelola yang ditetapkan pengguna sambil mengaktifkan identitas terkelola yang ditetapkan sistem pada komputer virtual Anda.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned"}}' -H "Content-Type: application/json" -H "Authorization:Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "identity":{ "type":"SystemAssigned" } }
Untuk mengaktifkan identitas terkelola yang ditetapkan sistem pada komputer virtual dengan identitas terkelola yang ditetapkan pengguna yang ada, Anda perlu menambahkan
SystemAssigned
ke nilaitype
.Misalnya, jika komputer virtual Anda memiliki identitas terkelola yang ditetapkan pengguna
ID1
ID2
dan ditetapkan untuknya, dan Anda ingin menambahkan identitas terkelola yang ditetapkan sistem ke komputer virtual, gunakan panggilan CURL berikut. Ganti<ACCESS TOKEN>
dan<SUBSCRIPTION ID>
dengan nilai yang sesuai untuk lingkungan Anda.Versi API
2018-06-01
menyimpan identitas terkelola yang ditetapkan pengguna dalam nilaiuserAssignedIdentities
dalam format kamus dibandingkan dengan nilaiidentityIds
dalam format array yang digunakan dalam versi API2017-12-01
.API VERSION 2018-06-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{"/subscriptions/<<SUBSCRIPTION ID>>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{},"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{}}}}' -H "Content-Type: application/json" -H "Authorization:Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "identity":{ "type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{ "/subscriptions/<<SUBSCRIPTION ID>>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{ }, "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{ } } } }
API VERSION 2017-12-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "identityIds":["/subscriptions/<<SUBSCRIPTION ID>>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1","/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"]}}' -H "Content-Type: application/json" -H "Authorization:Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "identity":{ "type":"SystemAssigned, UserAssigned", "identityIds":[ "/subscriptions/<<SUBSCRIPTION ID>>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1", "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2" ] } }
Menonaktifkan identitas terkelola 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 Entra lainnya.
Ambil token akses Pembawa, yang akan Anda gunakan pada langkah berikutnya di header Otorisasi untuk membuat komputer virtual Anda dengan identitas terkelola yang ditetapkan sistem.
az account get-access-token
Perbarui komputer virtual menggunakan CURL untuk memanggil titik akhir REST Azure Resource Manager untuk menonaktifkan identitas terkelola yang ditetapkan sistem. Contoh berikut menonaktifkan identitas terkelola yang ditetapkan sistem seperti yang diidentifikasi dalam isi permintaan berdasarkan nilai
{"identity":{"type":"None"}}
dari komputer virtual bernama myVM. Ganti<ACCESS TOKEN>
dengan nilai yang Anda terima di langkah sebelumnya ketika Anda meminta token akses Pembawa dan nilai<SUBSCRIPTION ID>
yang sesuai untuk lingkungan Anda.Penting
Untuk memastikan Anda tidak menghapus identitas terkelola yang ditetapkan pengguna apa pun yang ditetapkan ke komputer virtual, Anda perlu mencantumkan identitas terkelola yang ditetapkan pengguna menggunakan perintah CURL ini:
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachines/<VM NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
. Jika Anda memiliki identitas terkelola yang ditetapkan pengguna yang ditetapkan ke komputer virtual seperti yang diidentifikasi dalam nilaiidentity
dalam respons, lewati ke langkah 3 yang memperlihatkan cara mempertahankan identitas terkelola yang ditetapkan pengguna sambil menonaktifkan identitas terkelola yang ditetapkan sistem pada komputer virtual Anda.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"None"}}' -H "Content-Type: application/json" -H "Authorization:Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "identity":{ "type":"None" } }
Untuk menghapus identitas terkelola yang ditetapkan sistem dari komputer virtual yang memiliki identitas terkelola yang ditetapkan pengguna, hapus
SystemAssigned
dari nilai{"identity":{"type:" "}}
sambil mempertahankan nilaiUserAssigned
dan nilai kamususerAssignedIdentities
jika Anda menggunakan versi API 2018-06-01. Jika Anda menggunakan versi API 2017-12-01 atau versi lebih lama, pertahankan arrayidentityIds
.
Identitas terkelola yang ditetapkan pengguna
Di bagian ini, Anda mempelajari cara menambahkan dan menghapus identitas terkelola yang ditetapkan pengguna di komputer virtual Azure menggunakan CURL untuk melakukan panggilan ke titik akhir REST Azure Resource Manager.
Menetapkan identitas terkelola yang ditetapkan pengguna selama pembuatan komputer virtual Azure
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 Entra lainnya.
Ambil token akses Pembawa, yang akan Anda gunakan pada langkah berikutnya di header Otorisasi untuk membuat komputer virtual Anda dengan identitas terkelola yang ditetapkan sistem.
az account get-access-token
Buat antarmuka jaringan untuk komputer virtual Anda:
az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
Ambil token akses Pembawa, yang akan Anda gunakan pada langkah berikutnya di header Otorisasi untuk membuat komputer virtual Anda dengan identitas terkelola yang ditetapkan sistem.
az account get-access-token
Buat identitas terkelola yang ditetapkan pengguna menggunakan instruksi yang ditemukan di sini: Membuat identitas terkelola yang ditetapkan pengguna.
Buat komputer virtual menggunakan CURL untuk memanggil titik akhir REST Azure Resource Manager. Contoh berikut membuat komputer virtual bernama myVM di grup sumber daya myResourceGroup dengan identitas terkelola yang ditetapkan pengguna
ID1
, seperti yang diidentifikasi dalam isi permintaan berdasarkan nilai"identity":{"type":"UserAssigned"}
. Ganti<ACCESS TOKEN>
dengan nilai yang Anda terima di langkah sebelumnya ketika Anda meminta token akses Pembawa dan nilai<SUBSCRIPTION ID>
yang sesuai untuk lingkungan Anda.API VERSION 2018-06-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PUT -d '{"location":"westus","name":"myVM","identity":{"type":"UserAssigned","identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]},"properties":{"hardwareProfile":{"vmSize":"Standard_D2_v2"},"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"name":"myVM3osdisk","createOption":"FromImage"},"dataDisks":[{"diskSizeGB":1023,"createOption":"Empty","lun":0},{"diskSizeGB":1023,"createOption":"Empty","lun":1}]},"osProfile":{"adminUsername":"azureuser","computerName":"myVM","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaces":[{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic","properties":{"primary":true}}]}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "location":"westus", "name":"myVM", "identity":{ "type":"UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] }, "properties":{ "hardwareProfile":{ "vmSize":"Standard_D2_v2" }, "storageProfile":{ "imageReference":{ "sku":"2016-Datacenter", "publisher":"MicrosoftWindowsServer", "version":"latest", "offer":"WindowsServer" }, "osDisk":{ "caching":"ReadWrite", "managedDisk":{ "storageAccountType":"StandardSSD_LRS" }, "name":"myVM3osdisk", "createOption":"FromImage" }, "dataDisks":[ { "diskSizeGB":1023, "createOption":"Empty", "lun":0 }, { "diskSizeGB":1023, "createOption":"Empty", "lun":1 } ] }, "osProfile":{ "adminUsername":"azureuser", "computerName":"myVM", "adminPassword":"myPassword12" }, "networkProfile":{ "networkInterfaces":[ { "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic", "properties":{ "primary":true } } ] } } }
API VERSION 2017-12-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01' -X PUT -d '{"location":"westus","name":"myVM","identity":{"type":"UserAssigned","identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]},"properties":{"hardwareProfile":{"vmSize":"Standard_D2_v2"},"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"name":"myVM3osdisk","createOption":"FromImage"},"dataDisks":[{"diskSizeGB":1023,"createOption":"Empty","lun":0},{"diskSizeGB":1023,"createOption":"Empty","lun":1}]},"osProfile":{"adminUsername":"azureuser","computerName":"myVM","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaces":[{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic","properties":{"primary":true}}]}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "location":"westus", "name":"myVM", "identity":{ "type":"UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] }, "properties":{ "hardwareProfile":{ "vmSize":"Standard_D2_v2" }, "storageProfile":{ "imageReference":{ "sku":"2016-Datacenter", "publisher":"MicrosoftWindowsServer", "version":"latest", "offer":"WindowsServer" }, "osDisk":{ "caching":"ReadWrite", "managedDisk":{ "storageAccountType":"StandardSSD_LRS" }, "name":"myVM3osdisk", "createOption":"FromImage" }, "dataDisks":[ { "diskSizeGB":1023, "createOption":"Empty", "lun":0 }, { "diskSizeGB":1023, "createOption":"Empty", "lun":1 } ] }, "osProfile":{ "adminUsername":"azureuser", "computerName":"myVM", "adminPassword":"myPassword12" }, "networkProfile":{ "networkInterfaces":[ { "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic", "properties":{ "primary":true } } ] } } }
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 Entra lainnya.
Ambil token akses Pembawa, yang akan Anda gunakan pada langkah berikutnya di header Otorisasi untuk membuat komputer virtual Anda dengan identitas terkelola yang ditetapkan sistem.
az account get-access-token
Buat identitas terkelola yang ditetapkan pengguna menggunakan instruksi yang ditemukan di sini, Membuat identitas terkelola yang ditetapkan pengguna.
Untuk memastikan Anda tidak menghapus identitas terkelola yang ditetapkan pengguna atau sistem yang ada yang ditetapkan ke komputer virtual, Anda perlu mencantumkan jenis identitas yang ditetapkan ke komputer virtual menggunakan perintah CURL berikut. Jika Anda sudah mengelola identitas yang ditetapkan ke kumpulan skala komputer virtual, identitas tersebut tercantum di bawah nilai
identity
.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachines/<VM NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
GET https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachines/<VM NAME>?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Jika Anda memiliki identitas terkelola yang ditetapkan pengguna atau sistem yang ditetapkan ke komputer virtual seperti yang diidentifikasi dalam nilai
identity
dalam respons, lewati ke langkah 5 yang memperlihatkan cara mempertahankan identitas terkelola yang ditetapkan sistem sambil menambahkan identitas terkelola yang ditetapkan pengguna ke komputer virtual Anda.Jika Anda tidak memiliki identitas terkelola yang ditetapkan pengguna apa pun yang ditetapkan ke komputer virtual Anda, gunakan perintah CURL berikut untuk memanggil titik akhir REST Azure Resource Manager untuk menetapkan identitas terkelola yang ditetapkan pengguna pertama ke komputer virtual.
Contoh berikut menetapkan identitas terkelola yang ditetapkan pengguna,
ID1
ke komputer virtual bernama myVM di grup sumber daya myResourceGroup. Ganti<ACCESS TOKEN>
dengan nilai yang Anda terima di langkah sebelumnya ketika Anda meminta token akses Pembawa dan nilai<SUBSCRIPTION ID>
yang sesuai untuk lingkungan Anda.API VERSION 2018-06-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{}}}}' -H "Content-Type: application/json" -H "Authorization:Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "identity":{ "type":"UserAssigned", "userAssignedIdentities":{ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{ } } } }
API VERSION 2017-12-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"userAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]}}' -H "Content-Type: application/json" -H "Authorization:Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "identity":{ "type":"userAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] } }
Jika Anda memiliki identitas terkelola yang ditetapkan pengguna atau yang ditetapkan sistem yang ditetapkan untuk komputer virtual Anda:
API VERSION 2018-06-01
Tambahkan identitas terkelola yang ditetapkan pengguna ke nilai kamus
userAssignedIdentities
.Misalnya, jika Anda memiliki identitas terkelola yang ditetapkan sistem dan identitas terkelola yang ditetapkan pengguna
ID1
yang saat ini ditetapkan ke komputer virtual Anda dan ingin menambahkan identitas terkelola yang ditetapkan penggunaID2
ke identitas tersebut:curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{},"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{}}}}' -H "Content-Type: application/json" -H "Authorization:Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "identity":{ "type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{ }, "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{ } } } }
API VERSION 2017-12-01
Pertahankan identitas terkelola yang ditetapkan pengguna yang ingin Anda simpan dalam nilai array
identityIds
sambil menambahkan identitas terkelola yang ditetapkan pengguna baru.Misalnya, jika Anda memiliki identitas terkelola yang ditetapkan sistem dan identitas terkelola yang ditetapkan pengguna
ID1
yang saat ini ditetapkan ke komputer virtual Anda dan ingin menambahkan identitas terkelola yang ditetapkan penggunaID2
ke identitas tersebut:curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned,UserAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1","/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"]}}' -H "Content-Type: application/json" -H "Authorization:Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "identity":{ "type":"SystemAssigned,UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1", "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2" ] } }
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.
Ambil token akses Pembawa, yang akan Anda gunakan pada langkah berikutnya di header Otorisasi untuk membuat komputer virtual Anda dengan identitas terkelola yang ditetapkan sistem.
az account get-access-token
Untuk memastikan Anda tidak menghapus identitas terkelola yang ditetapkan pengguna yang sudah ada yang tetap ingin Anda tetapkan ke komputer virtual atau menghapus identitas terkelola yang ditetapkan sistem, Anda perlu mencantumkan identitas terkelola dengan menggunakan perintah CURL berikut:
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachines/<VM NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
GET https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachines/<VM NAME>?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Jika Anda sudah mengelola identitas yang ditetapkan ke komputer virtual, identitas tersebut tercantum dalam respons dalam nilai
identity
.Misalnya, jika Anda memiliki identitas terkelola yang ditetapkan pengguna
ID1
danID2
yang ditetapkan ke komputer virtual Anda, dan Anda hanya ingin tetap menetapkanID1
dan mempertahankan identitas yang ditetapkan sistem:API VERSION 2018-06-01
Tambahkan
null
ke identitas terkelola yang ditetapkan pengguna yang ingin Anda hapus:curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":null}}}' -H "Content-Type: application/json" -H "Authorization:Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "identity":{ "type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":null } } }
API VERSION 2017-12-01
Hanya pertahankan identitas terkelola yang ditetapkan pengguna yang ingin Anda simpan dalam array
identityIds
:curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]}}' -H "Content-Type: application/json" -H "Authorization:Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
Header permintaan
Header permintaan Deskripsi Tipe-Konten Harus diisi. Atur ke application/json
.Otorisasi Harus diisi. Atur ke token akses Bearer
yang valid.Badan permintaan
{ "identity":{ "type":"SystemAssigned, UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] } }
Jika komputer virtual Anda memiliki identitas terkelola yang ditetapkan sistem dan ditetapkan pengguna, Anda dapat menghapus semua identitas terkelola yang ditetapkan pengguna dengan beralih untuk hanya menggunakan identitas terkelola yang ditetapkan sistem menggunakan perintah berikut:
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned"}}' -H "Content-Type: application/json" -H "Authorization:Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan | Deskripsi |
---|---|
Tipe-Konten | Harus diisi. Atur ke application/json . |
Otorisasi | Harus diisi. Atur ke token akses Bearer yang valid. |
Badan permintaan
{
"identity":{
"type":"SystemAssigned"
}
}
Jika komputer virtual Anda hanya memiliki identitas terkelola yang ditetapkan pengguna dan Anda ingin menghapus semuanya, gunakan perintah berikut:
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"None"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
Header permintaan
Header permintaan | Deskripsi |
---|---|
Tipe-Konten | Harus diisi. Atur ke application/json . |
Otorisasi | Harus diisi. Atur ke token akses Bearer yang valid. |
Badan permintaan
{
"identity":{
"type":"None"
}
}
Langkah berikutnya
Untuk informasi tentang cara membuat, mencantumkan, atau menghapus identitas terkelola yang ditetapkan pengguna menggunakan REST, lihat:
Dalam artikel ini, Anda mempelajari cara mengaktifkan dan menghapus identitas terkelola untuk sumber daya Komputer Virtual Azure, menggunakan Azure SDK.
Prasyarat
- Jika Anda tidak terbiasa dengan fitur identitas terkelola untuk sumber daya Azure, lihat gambaran umum ini. Jika Anda belum memiliki akun Azure, daftar untuk mendapatkan akun gratis sebelum melanjutkan.
Azure SDK dengan identitas terkelola untuk dukungan sumber daya Azure
Azure mendukung beberapa platform pemrograman melalui serangkaian Azure SDK. Beberapa di antaranya telah diperbarui untuk mendukung identitas terkelola untuk sumber daya Azure, dan menyediakan sampel yang sesuai untuk menunjukkan penggunaan. Daftar ini diperbarui saat dukungan lain ditambahkan:
Langkah berikutnya
- Lihat artikel terkait di bagian Konfigurasi Identitas untuk Komputer Virtual Azure, untuk mempelajari bagaimana Anda juga bisa menggunakan portal Microsoft Azure, PowerShell, CLI, dan templat sumber daya.