Mengonfigurasi identitas terkelola untuk sumber daya Azure di komputer virtual Azure menggunakan templat
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.
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
.