Извините, что withOSDiskEncryptionSettings
работает не так, как вы хотели.
На самом деле, он будет использоваться при создании виртуальной машины с загруженным предварительно зашифрованным диском ОС. Поскольку это предварительно зашифрованный диск, Azure не сможет расшифровать данные, а виртуальная машина не сможет запуститься. Итак, в этом случае вам нужно указать Azure настройки шифрования диска. Для получения более подробной информации вы можете обратиться к: Подготовить предварительно зашифрованные Linux VHD и Укажите секретный URL-адрес при подключении диска ОС
Однако для Вновь созданная Azure VM, в настоящее время вы должны использовать расширение шифрования диска, чтобы включить шифрование диска. И это на самом деле то, что вы делаете с Azure портала, Azure CLI или Azure PowerShell. Например, с Azure PowerShell вы должны выполнить: Set-AzVMDiskEncryptionExtension -ResourceGroupName MyResourceGroup -VMName "MyVM" -DiskEncryptionKeyVaultUrl $KeyVault.VaultUri -DiskEncryptionKeyVaultId $KeyVault.ResourceId -SkipVmBackup -VolumeType All
Итак, если вы действительно хотите включить шифрование диска программным способом. Вы можете использовать Azure Java SDK, чтобы добавить расширение к своей виртуальной машине. Вот пример: ManageVirtualMachineExtension. java
Надеюсь, что приведенная выше информация будет вам полезна.