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