Menggunakan Azure Disk Encryption dengan urutan ekstensi Set Skala Komputer Virtual
Ekstensi seperti enkripsi disk Azure dapat ditambahkan ke skala komputer virtual Azure yang diatur dalam urutan tertentu. Untuk melakukannya, gunakan urutan ekstensi.
Secara umum, enkripsi harus diterapkan ke disk:
- Setelah ekstensi atau skrip kustom menyiapkan disk atau volume.
- Sebelum ekstensi atau skrip kustom mengakses atau mengkonsumsi data pada disk atau volume terenkripsi.
Dalam kedua kasus, properti provisionAfterExtensions
menentukan ekstensi mana yang harus ditambahkan nanti dalam urutan.
Contoh templat Azure
Jika Anda ingin Azure Disk Encryption diterapkan setelah ekstensi lain, letakkan properto provisionAfterExtensions
di blok ekstensi AzureDiskEncryption.
Berikut adalah contoh untuk menggunakan "CustomScriptExtension", skrip PowerShell yang menginisialisasi dan memformat disk Windows, diikuti oleh "AzureDiskEncryption":
"virtualMachineProfile": {
"extensionProfile": {
"extensions": [
{
"type": "Microsoft.Compute/virtualMachineScaleSets/extensions",
"name": "CustomScriptExtension",
"location": "[resourceGroup().location]",
"properties": {
"publisher": "Microsoft.Compute",
"type": "CustomScriptExtension",
"typeHandlerVersion": "1.9",
"autoUpgradeMinorVersion": true,
"forceUpdateTag": "[parameters('forceUpdateTag')]",
"settings": {
"fileUris": [
"https://raw.githubusercontent.com/Azure-Samples/compute-automation-configurations/master/ade-vmss/FormatMBRDisk.ps1"
]
},
"protectedSettings": {
"commandToExecute": "powershell -ExecutionPolicy Unrestricted -File FormatMBRDisk.ps1"
}
}
},
{
"type": "Microsoft.Compute/virtualMachineScaleSets/extensions",
"name": "AzureDiskEncryption",
"location": "[resourceGroup().location]",
"properties": {
"provisionAfterExtensions": [
"CustomScriptExtension"
],
"publisher": "Microsoft.Azure.Security",
"type": "AzureDiskEncryption",
"typeHandlerVersion": "2.2",
"autoUpgradeMinorVersion": true,
"forceUpdateTag": "[parameters('forceUpdateTag')]",
"settings": {
"EncryptionOperation": "EnableEncryption",
"KeyVaultURL": "[reference(variables('keyVaultResourceId'),'2018-02-14-preview').vaultUri]",
"KeyVaultResourceId": "[variables('keyVaultResourceID')]",
"KeyEncryptionKeyURL": "[parameters('keyEncryptionKeyURL')]",
"KekVaultResourceId": "[variables('keyVaultResourceID')]",
"KeyEncryptionAlgorithm": "[parameters('keyEncryptionAlgorithm')]",
"VolumeType": "[parameters('volumeType')]",
"SequenceVersion": "[parameters('sequenceVersion')]"
}
}
},
]
}
}
Jika Anda ingin Azure Disk Encryption diterapkan sebelum ekstensi lain, letakkan properti provisionAfterExtensions
di blok ekstensi untuk diikuti.
Berikut adalah contoh menggunakan "AzureDiskEncryption" diikuti oleh "VMDiagnosticsSettings", ekstensi yang menyediakan kemampuan pemantauan dan diagnostik pada Azure VM berbasis Windows:
"virtualMachineProfile": {
"extensionProfile": {
"extensions": [
{
"name": "AzureDiskEncryption",
"type": "Microsoft.Compute/virtualMachineScaleSets/extensions",
"location": "[resourceGroup().location]",
"properties": {
"publisher": "Microsoft.Azure.Security",
"type": "AzureDiskEncryption",
"typeHandlerVersion": "2.2",
"autoUpgradeMinorVersion": true,
"forceUpdateTag": "[parameters('forceUpdateTag')]",
"settings": {
"EncryptionOperation": "EnableEncryption",
"KeyVaultURL": "[reference(variables('keyVaultResourceId'),'2018-02-14-preview').vaultUri]",
"KeyVaultResourceId": "[variables('keyVaultResourceID')]",
"KeyEncryptionKeyURL": "[parameters('keyEncryptionKeyURL')]",
"KekVaultResourceId": "[variables('keyVaultResourceID')]",
"KeyEncryptionAlgorithm": "[parameters('keyEncryptionAlgorithm')]",
"VolumeType": "[parameters('volumeType')]",
"SequenceVersion": "[parameters('sequenceVersion')]"
}
}
},
{
"name": "Microsoft.Insights.VMDiagnosticsSettings",
"type": "extensions",
"location": "[resourceGroup().location]",
"apiVersion": "2016-03-30",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/myVM', copyindex())]"
],
"properties": {
"provisionAfterExtensions": [
"AzureDiskEncryption"
],
"publisher": "Microsoft.Azure.Diagnostics",
"type": "IaaSDiagnostics",
"typeHandlerVersion": "1.5",
"autoUpgradeMinorVersion": true,
"settings": {
"xmlCfg": "[base64(concat(variables('wadcfgxstart'),
variables('wadmetricsresourceid'),
concat('myVM', copyindex()),
variables('wadcfgxend')))]",
"storageAccount": "[variables('storageName')]"
},
"protectedSettings": {
"storageAccountName": "[variables('storageName')]",
"storageAccountKey": "[listkeys(variables('accountid'),
'2015-06-15').key1]",
"storageAccountEndPoint": "https://core.windows.net"
}
}
},
]
}
}
Untuk templat yang lebih mendalam, lihat:
- Menerapkan ekstensi Azure Disk Encryption setelah skrip shell kustom yang memformat disk (Linux): deploy-extseq-linux-ADE-after-customscript.jsaktif
Langkah berikutnya
- Pelajari selengkapnya tentang pengurutan ekstensi: Provisi ekstensi urutan di Virtual Machine Scale Sets.
- Pelajari selengkapnya tentang properti
provisionAfterExtensions
: Referensi templat Microsoft.Compute virtualMachineScaleSets/extensions. - Azure Disk Encryption untuk Virtual Machine Scale Sets
- Mengenkripsi Virtual Machine Scale Sets menggunakan Azure CLI
- Mengenkripsi Virtual Machine Scale Sets menggunakan Azure PowerShell
- Membuat dan mengonfigurasi brankas kunci untuk Azure Disk Encryption