Полное резервное копирование и восстановление и выборочное восстановление ключей
Примечание.
Эта возможность доступна только для управляемых устройств HSM в качестве типа ресурса.
Управляемое устройство HSM позволяет создавать полную резервную копию всего содержимого HSM, включая все ключи, версии, атрибуты, теги и назначения ролей. Эта резервная копия шифруется с помощью криптографических ключей, связанных с доменом безопасности HSM.
Резервное копирование выполняется в плоскости данных. Сторона, инициирующая операцию резервного копирования, должна иметь разрешение на действие dataAction Microsoft.KeyVault/managedHsm/backup/start/action.
Только следующие встроенные роли имеют разрешение на выполнение полного резервного копирования:
- администратор Управляемого устройства HSM;
- резервное копирование Управляемого устройства HSM.
Существует два способа выполнения полного резервного копирования и восстановления.
- Назначение управляемого удостоверения, назначаемого пользователем (UAMI) службе управляемого устройства HSM. Вы можете создать резервную копию и восстановить MHSM с помощью управляемого удостоверения, назначаемого пользователем, независимо от того, имеет ли учетная запись хранения доступ к общедоступной сети или доступ к частной сети. Если учетная запись хранения находится за частной конечной точкой, метод UAMI работает с обходом доверенной службы, чтобы разрешить резервное копирование и восстановление.
- Использование маркера SAS контейнера хранилища с разрешениями crdw. Резервное копирование и восстановление с помощью маркера SAS контейнера хранилища требует, чтобы учетная запись хранения была включена доступ к общедоступной сети.
Чтобы выполнить полную резервную копию, необходимо указать следующие сведения:
- имя или URL-адрес HSM;
- Имя учетной записи хранения
- контейнер хранения больших двоичных объектов в учетной записи хранения;
- Маркер SAS контейнера хранилища или управляемого удостоверения, назначаемого пользователем, с разрешениями crdw
Azure Cloud Shell
В Azure есть Azure Cloud Shell, интерактивная оболочка среды, с которой можно работать в браузере. Для работы со службами Azure можно использовать Bash или PowerShell с Cloud Shell. Для запуска кода из этой статьи можно использовать предварительно установленные команды Cloud Shell. Ничего дополнительного в локальной среде устанавливать не нужно.
Начало работы с Azure Cloud Shell
Вариант | Пример и ссылка |
---|---|
Нажмите кнопку Попробовать в правом верхнем углу блока кода или команд. При нажатии кнопки Попробовать код или команда не копируется в Cloud Shell автоматически. | |
Чтобы открыть Cloud Shell в браузере, перейдите по адресу https://shell.azure.com или нажмите кнопку Запуск Cloud Shell. | |
Нажмите кнопку Cloud Shell в строке меню в правом верхнем углу окна портала Azure. |
Чтобы использовать Azure Cloud Shell, выполните следующие действия:
Запустите Cloud Shell.
Нажмите кнопку Копировать в блоке кода (или блоке команд), чтобы скопировать код или команду.
Вставьте код или команду в окно сеанса Cloud Shell, нажав клавиши CTRL+SHIFT+V в Windows и Linux или CMD+SHIFT+V в macOS.
Нажмите клавишу ВВОД, чтобы запустить код или команду.
Предварительные требования при резервном копировании и восстановлении с помощью управляемого удостоверения, назначаемого пользователем:
- Убедитесь, что у вас есть Azure CLI версии 2.56.0 или более поздней. Чтобы узнать версию, выполните команду
az --version
. Если вам необходимо выполнить установку или обновление, обратитесь к статье Установка Azure CLI. - Создание управляемого удостоверения, назначаемого пользователем.
- Создайте учетную запись хранения (или используйте существующую учетную запись хранения).
- Если доступ к общедоступной сети отключен в учетной записи хранения, включите обход доверенной службы в учетной записи хранения на вкладке "Сеть" в разделе "Исключения".
- Предоставьте роль "участник данных BLOB-объектов хранилища" назначаемого пользователем управляемому удостоверению, созданному на шаге 2, перейдите на вкладку "контроль доступа" на портале —> добавление назначения ролей. Затем выберите "Управляемое удостоверение" и выберите управляемое удостоверение, созданное на шаге 2.> Проверка и назначение
- Создайте управляемый модуль HSM и свяжите управляемое удостоверение с приведенной ниже командой.
az keyvault create --hsm-name mhsmdemo2 –l mhsmlocation -- retention-days 7 --administrators "initialadmin" --mi-user-assigned "/subscriptions/subid/resourcegroups/mhsmrgname/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userassignedidentitynamefromstep2"
Если у вас есть управляемый HSM, свяжите управляемое удостоверение, обновив MHSM с помощью следующей команды.
az keyvault update-hsm --hsm-name mhsmdemo2 --mi-user-assigned "/subscriptions/subid/resourcegroups/mhsmrgname/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userassignedidentitynamefromstep2"
Полное резервное копирование
Резервное копирование — это длительная операция, но немедленно возвращает идентификатор задания. По этому идентификатору задания вы можете проверить состояние процесса резервного копирования. Процесс резервного копирования создает в указанном контейнере папку с именем, созданным по шаблону mhsm-{HSM_NAME}-{YYYY}{MM}{DD}{HH}{mm}{SS}
, где HSM_NAME обозначает это имя управляемого устройства HSM, а YYYY, MM, DD, HH, MM, mm, SS — соответственно год, месяц, день, час, минуту и секунду получения команды резервного копирования в формате UTC.
Пока выполняется резервное копирование, HSM может не работать в полной пропускной способности, так как некоторые секции HSM будут заняты выполнением операции резервного копирования.
Резервное копирование HSM с помощью управляемого удостоверения, назначаемого пользователем
az keyvault backup start --use-managed-identity true --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer
Резервное копирование HSM с помощью маркера SAS
# time for 500 minutes later for SAS token expiry
end=$(date -u -d "500 minutes" '+%Y-%m-%dT%H:%MZ')
# Get storage account key
skey=$(az storage account keys list --query '[0].value' -o tsv --account-name mhsmdemobackup --subscription {subscription-id})
# Create a container
az storage container create --account-name mhsmdemobackup --name mhsmdemobackupcontainer --account-key $skey
# Generate a container sas token
sas=$(az storage container generate-sas -n mhsmdemobackupcontainer --account-name mhsmdemobackup --permissions crdw --expiry $end --account-key $skey -o tsv --subscription {subscription-id})
# Backup HSM
az keyvault backup start --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer --storage-container-SAS-token $sas --subscription {subscription-id}
Полное восстановление
Полное восстановление позволяет полностью восстановить содержимое HSM из ранее созданной резервной копии, включая все ключи, версии, атрибуты, теги и назначения ролей. Все данные, которые до этого хранились в HSM, будут полностью очищены, и устройство вернется к тому состоянию, в котором находилось на момент создания этой резервной копии.
Внимание
Полное восстановление — это достаточно разрушительный процесс. Поэтому необходимо выполнить полную резервную копию устройства HSM, восстанавливаемого restore
по крайней мере через 30 минут до операции.
Восстановление выполняется в плоскости данных. Сторона, инициирующая операцию восстановления, должна иметь разрешение на действие dataAction Microsoft.KeyVault/managedHsm/restore/start/action. Исходное устройство HSM, из которого создавалась резервная копия, и целевое устройство HSM, на которое выполняется восстановление, обязательно должны иметь одинаковый домен безопасности. Сведения о домене безопасности для Управляемого устройства HSM см. здесь.
Существует 2 способа выполнения полного восстановления. Чтобы выполнить полное восстановление, необходимо предоставить следующие сведения:
- имя или URL-адрес HSM;
- Имя учетной записи хранения
- контейнер больших двоичных объектов в учетной записи хранения;
- Маркер SAS контейнера хранилища или управляемого удостоверения, назначаемого пользователем, с разрешениями
rl
- Имя папки контейнера хранилища, в которой хранится исходная резервная копия
Хотя восстановление — это длительная операция, при ее запуске немедленно возвращается идентификатор задания. По этому идентификатору задания вы можете проверить состояние процесса восстановления. Пока идет процесс восстановления, HSM переходит в особый режим восстановления и не принимает команды плоскости данных (за исключением проверки состояния восстановления).
Восстановление HSM с помощью управляемого удостоверения, назначаемого пользователем
az keyvault restore start --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer --backup-folder mhsm-backup-foldername --use-managed-identity true
Восстановление HSM с помощью маркера SAS
# time for 500 minutes later for SAS token expiry
end=$(date -u -d "500 minutes" '+%Y-%m-%dT%H:%MZ')
# Get storage account key
skey=$(az storage account keys list --query '[0].value' -o tsv --account-name mhsmdemobackup --subscription {subscription-id})
# Generate a container sas token
sas=$(az storage container generate-sas -n mhsmdemobackupcontainer --account-name mhsmdemobackup --permissions rl --expiry $end --account-key $skey -o tsv --subscription {subscription-id})
# Restore HSM
az keyvault restore start --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer --storage-container-SAS-token $sas --backup-folder mhsm-mhsmdemo-2020083120161860
Выборочное восстановление ключа
Выборочное восстановление ключа позволяет восстановить один отдельный ключ со всеми версиями ключей из предыдущей резервной копии в HSM. Ключ необходимо очистить, чтобы выборочное восстановление ключа работало. Если вы пытаетесь восстановить обратимо удаленный ключ, используйте восстановление ключа. Дополнительные сведения о восстановлении ключа.
Выборочное восстановление ключа с помощью управляемого удостоверения, назначаемого пользователем
az keyvault restore start --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer --backup-folder mhsm-backup-foldername --use-managed-identity true --key-name rsa-key2
Выборочное восстановление ключа с помощью маркера SAS
az keyvault restore start --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer --storage-container-SAS-token $sas --backup-folder mhsm-mhsmdemo-2020083120161860 -–key-name rsa-key2
Next Steps
- См. статью Управление Управляемым устройством HSM с помощью Azure CLI.
- Узнайте больше о домене безопасности для Управляемого устройства HSM.