Резервное копирование и восстановление Azure Key Vault
В этом документе показано, как создать резервную копию секретов, ключей и сертификатов, хранящихся в хранилище ключей. Резервное копирование позволяет создать автономную копию всех секретов на тот маловероятный случай, если доступ к хранилищу ключей будет утерян.
Обзор
Azure Key Vault автоматически предоставляет несколько функций для поддержания доступности и предотвращения потери данных. Создавайте резервные копии секретов, только если у вас есть для этого серьезное бизнес-обоснование. Создание резервной копии секретов в хранилище ключей может добавить значительные операционные трудности, как, например, обслуживание нескольких наборов журналов, разрешений и резервных копий по истечении срока действия секретов или при их смене.
Key Vault сохраняет доступность в аварийных сценариях и автоматически выполняет отработку отказа запросов в парный регион без вмешательства пользователя. Дополнительные сведения см. в статье Доступность и избыточность хранилища ключей Azure.
Если вам требуется защита от случайного или злонамеренного удаления секретов, настройте в хранилище ключей функции обратимого удаления и защиты от очистки. Дополнительные сведения см. в статье Общие сведения об обратимом удалении в Azure Key Vault.
Ограничения
Внимание
Key Vault не поддерживает резервное копирование более 500 предыдущих версий ключа, секрета или объекта сертификата. Попытка резервного копирования ключа, секрета или объекта сертификата может привести к ошибке. Удалить предыдущие версии ключа, секрета или сертификата нельзя.
Key Vault в настоящее время не предоставляет способ резервного копирования всего хранилища ключей в одной операции и ключах, секреты и сертификаты должны быть резервными копиями.
Рассмотрите также следующие вопросы:
- Создание резервной копии секретов, для которых существует несколько версий, может приводить к ошибкам времени ожидания.
- Резервная копия создается как моментальный снимок на определенный момент времени. Если секреты обновятся во время создания резервной копии, это приведет к несоответствию ключей шифрования.
- Если вы превысите ограничения службы хранилища ключей на количество запросов в секунду, к хранилищу ключей будет применяться регулирование, что приведет к сбою процесса резервного копирования.
Рекомендации по проектированию
При создании резервной копии объекта, хранимого в хранилище ключей (секрета, ключа или сертификата), он скачивается как зашифрованный большой двоичный объект. Этот большой двоичный объект невозможно расшифровать за пределами Azure. Чтобы получить пригодные для использования данные из этого большого двоичного объекта, необходимо восстановить его в хранилище ключей в той же подписке и географической области Azure.
Необходимые компоненты
Чтобы создать резервную копию объекта, сохраненного в хранилище ключей, вам потребуется следующее.
- Разрешения уровня участника или более высокого уровня в подписке Azure.
- Первичное хранилище ключей с теми секретами, резервные копии которых нужно создать.
- Вторичное хранилище ключей, в котором будут восстановлены секреты.
Создание резервной копии и восстановление с помощью портала Azure
Чтобы создать резервную копию объекта или восстановить его с помощью портала Azure, выполните перечисленные в этом разделе шаги.
Резервное копирование
Перейдите на портал Azure.
Выберите нужное хранилище ключей.
Перейдите к объекту (секрету, ключу или сертификату), резервную копию которого вы намерены создать.
Выберите объект.
Выберите Скачать резервную копию.
Щелкните Скачать.
Храните зашифрованный большой двоичный объект в безопасном расположении.
Восстановление
Перейдите на портал Azure.
Выберите нужное хранилище ключей.
Перейдите к типу объекта (секрет, ключ или сертификат), который нужно восстановить.
Выберите Восстановить резервную копию.
Перейдите к расположению, где сохранен зашифрованный большой двоичный объект.
Нажмите ОК.
Создание резервной копии и восстановление с помощью Azure CLI или Azure PowerShell
## Log in to Azure
az login
## Set your subscription
az account set --subscription {AZURE SUBSCRIPTION ID}
## Register Key Vault as a provider
az provider register -n Microsoft.KeyVault
## Back up a certificate in Key Vault
az keyvault certificate backup --file {File Path} --name {Certificate Name} --vault-name {Key Vault Name} --subscription {SUBSCRIPTION ID}
## Back up a key in Key Vault
az keyvault key backup --file {File Path} --name {Key Name} --vault-name {Key Vault Name} --subscription {SUBSCRIPTION ID}
## Back up a secret in Key Vault
az keyvault secret backup --file {File Path} --name {Secret Name} --vault-name {Key Vault Name} --subscription {SUBSCRIPTION ID}
## Restore a certificate in Key Vault
az keyvault certificate restore --file {File Path} --vault-name {Key Vault Name} --subscription {SUBSCRIPTION ID}
## Restore a key in Key Vault
az keyvault key restore --file {File Path} --vault-name {Key Vault Name} --subscription {SUBSCRIPTION ID}
## Restore a secret in Key Vault
az keyvault secret restore --file {File Path} --vault-name {Key Vault Name} --subscription {SUBSCRIPTION ID}