Краткое руководство. Подготовка и активация управляемого устройства HSM с помощью PowerShell

В этом кратком руководстве вы создадите и активируете управляемый модуль HSM (аппаратный модуль безопасности) для Azure Key Vault с помощью PowerShell. Управляемый модуль HSM — это полностью управляемая, высокодоступная, однопользовательская, соответствующая стандартам облачная служба, которая позволяет защищать криптографические ключи для облачных приложений, используя устройства HSM, отвечающие стандартам FIPS 140-2 уровня 3. Дополнительные сведения об управляемых модулях HSM см. в этом обзоре.

Чтобы установить и использовать PowerShell локально для работы с этим руководством, понадобится модуль Azure PowerShell 1.0.0 или более поздней версии. Чтобы узнать версию, введите $PSVersionTable.PSVersion. Если вам необходимо выполнить обновление, ознакомьтесь со статьей, посвященной установке модуля Azure PowerShell. Если модуль PowerShell запущен локально, необходимо также выполнить командлет Connect-AzAccount, чтобы создать подключение к Azure.

Connect-AzAccount

Создание или изменение группы ресурсов

Группа ресурсов — это логический контейнер, в котором происходит развертывание ресурсов Azure и управление ими. Используйте командлет Azure PowerShell New-AzResourceGroup , чтобы создать группу ресурсов с именем myResourceGroup в расположении eastus2 .

New-AzResourceGroup -Name "myResourceGroup" -Location "eastus2"

Получение идентификатора субъекта.

Чтобы создать управляемый модуль HSM, вам потребуется идентификатор субъекта Microsoft Entra. Чтобы получить идентификатор, используйте командлет Azure PowerShell Get-AzADUser, передав ему адрес электронной почты в параметре UserPrincipalName:

Get-AzADUser -UserPrincipalName "<your@email.address>"

Будет возвращен идентификатор участника в формате "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".

Создание управляемого устройства HSM

Создание управляемого модуля HSM выполняется в два этапа.

  1. Подготовка ресурса управляемого устройства HSM.
  2. Активация управляемого модуля HSM путем скачивания артефакта, который называется доменом безопасности.

Подготовка управляемого модуля HSM

Выполните командлет Azure PowerShell New-AzKeyVaultManagedHsm, чтобы создать новый управляемый модуль HSM. Необходимо будет указать следующие сведения:

  • Имя управляемого устройства HSM: строка длиной от 3 до 24 символов, которая может содержать только цифры (0–9), буквы (a–z, A–Z) и дефисы (-)

    Важно!

    Управляемый модуль HSM должен иметь уникальное имя. В следующих примерах замените заполнитель <your-unique-managed-hsm-name> именем своего управляемого модуля HSM.

  • Имя группы ресурсов: myResourceGroup.

  • Расположение: Восточная часть США 2.

  • Идентификатор субъекта: передайте идентификатор субъекта Microsoft Entra, полученный в последнем разделе, параметру Администратор istrator.

New-AzKeyVaultManagedHsm -Name "your-unique-managed-hsm-name" -ResourceGroupName "myResourceGroup" -Location "eastus2" -Administrator "your-principal-ID" -SoftDeleteRetentionInDays "# of days to retain the managed hsm after softdelete"

Примечание.

Выполнение команды создания может занять несколько минут. После успешного ее завершения вы можете активировать HSM.

В выходных данных командлета отобразятся свойства созданного управляемого модуля HSM. Зафиксируйте два его свойства.

  • Имя: имя, которое вы предоставили для управляемого модуля HSM.
  • HsmUri: в нашем примере это значение https://<уникальное_значение_управляемого_модуля_hsm>.vault.azure.net/. Необходимо, чтобы приложения, использующие ваше хранилище через REST API, использовали этот URI.

На этом этапе любые операции в новом модуле HSM может выполнять только ваша учетная запись Azure.

Активация управляемого модуля HSM

Все команды плоскости данных неактивны до тех пор, пока не будет активировано устройство HSM. Вы не сможете создавать ключи или назначать роли. Только администраторы, назначенные во время выполнения команды создания, могут активировать HSM. Чтобы активировать HSM, необходимо скачать домен безопасности.

Чтобы активировать необходимый модуль HSM, потребуется следующее:

  • предоставить не менее трех пар ключей RSA (можно больше, но не более 10);
  • указать минимальное число ключей, необходимых для расшифровки домена безопасности (кворум).

Чтобы активировать HSM, отправьте в него не менее трех (но не более 10) открытых ключей RSA. HSM шифрует домен безопасности с помощью этих ключей и отправляет их обратно. После успешного завершения загрузки домена безопасности устройство HSM готово к использованию. Также необходимо указать кворум, который является минимальным числом закрытых ключей, необходимых для расшифровки домена безопасности.

В приведенном ниже примере показано, как с помощью openssl (версия для Windows доступна здесь) создать три самозаверяющих сертификата.

openssl req -newkey rsa:2048 -nodes -keyout cert_0.key -x509 -days 365 -out cert_0.cer
openssl req -newkey rsa:2048 -nodes -keyout cert_1.key -x509 -days 365 -out cert_1.cer
openssl req -newkey rsa:2048 -nodes -keyout cert_2.key -x509 -days 365 -out cert_2.cer

Важно!

Безопасно создайте и сохраните пары ключей RSA и файл домена безопасности.

Выполните командлет Azure PowerShell Export-AzKeyVaultSecurityDomain, чтобы скачать домен безопасности и активировать управляемый модуль HSM. В следующем примере используются три пары ключей RSA (для этой команды нужны только открытые ключи) и настраивается значение кворума 2.

Export-AzKeyVaultSecurityDomain -Name "<your-unique-managed-hsm-name>" -Certificates "cert_0.cer", "cert_1.cer", "cert_2.cer" -OutputPath "MHSMsd.ps.json" -Quorum 2

Надежно сохраните файл домена безопасности и пары ключей RSA. Они понадобятся вам для аварийного восстановления или создания другого управляемого модуля HSM с тем же доменам безопасности, что позволит им совместно использовать ключи.

После успешного скачивания домена безопасности HSM будет находиться в активном состоянии и будет готов к использованию.

Очистка ресурсов

Другие руководства в этой серии созданы на основе этого документа. Если вы планируете продолжить работу с другими краткими руководствами и статьями, эти ресурсы можно не удалять.

Чтобы удалить группу ресурсов и все связанные с ней ресурсы, выполните командлет Remove-AzResourceGroup в Azure PowerShell.

Remove-AzResourceGroup -Name "myResourceGroup"

Предупреждение

При удалении группы ресурсов управляемый модуль HSM переходит в обратимое удаленное состояние. За модуль продолжит взиматься плата до тех пор, пока он не будет очищен. См. статью Обратимое удаление и защита от очистки для управляемых модулей HSM.

Следующие шаги

Используя сведения в этом кратком руководстве, вы создали управляемый модуль HSM. Дополнительные сведения об управляемом модуле HSM и его интеграции в приложения см. в следующих статьях.