Краткое руководство. Создание управляемого HSM с помощью шаблона ARM

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

Шаблон Azure Resource Manager — это файл нотации объектов JavaScript (JSON), который определяет инфраструктуру и конфигурацию проекта. В шаблоне используется декларативный синтаксис. Вы описываете предполагаемое развертывание без написания последовательности команд программирования для создания развертывания.

Если среда соответствует предварительным требованиям и вы знакомы с использованием шаблонов ARM, нажмите кнопку Развертывание в Azure. Шаблон откроется на портале Azure.

Button to deploy the Resource Manager template to Azure.

Необходимые компоненты

Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем приступить к работе.

  • Используйте среду Bash в Azure Cloud Shell. Дополнительные сведения см . в кратком руководстве по Bash в Azure Cloud Shell.

  • Если вы предпочитаете выполнять справочные команды CLI локально, установите Azure CLI. Если вы работаете в Windows или macOS, Azure CLI можно запустить в контейнере Docker. Дополнительные сведения см. в статье Как запустить Azure CLI в контейнере Docker.

    • Если вы используете локальную установку, выполните вход в Azure CLI с помощью команды az login. Чтобы выполнить аутентификацию, следуйте инструкциям в окне терминала. Сведения о других возможностях, доступных при входе, см. в статье Вход с помощью Azure CLI.

    • Установите расширение Azure CLI при первом использовании, когда появится соответствующий запрос. Дополнительные сведения о расширениях см. в статье Использование расширений с Azure CLI.

    • Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.

Изучение шаблона

Шаблон, используемый в этом кратком руководстве, состоит из шаблонов быстрого запуска Azure:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.5.6.12127",
      "templateHash": "9933229425431379390"
    }
  },
  "parameters": {
    "managedHSMName": {
      "type": "string",
      "metadata": {
        "description": "String specifying the name of the managed HSM."
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "String specifying the Azure location where the managed HSM should be created."
      }
    },
    "initialAdminObjectIds": {
      "type": "array",
      "metadata": {
        "description": "Array specifying the objectIDs associated with a list of initial administrators."
      }
    },
    "tenantId": {
      "type": "string",
      "defaultValue": "[subscription().tenantId]",
      "metadata": {
        "description": "String specifying the Azure Active Directory tenant ID that should be used for authenticating requests to the managed HSM."
      }
    },
    "softRetentionInDays": {
      "type": "int",
      "defaultValue": 7,
      "maxValue": 90,
      "minValue": 7,
      "metadata": {
        "description": "Specifies the number of days that managed Key Vault will be kept recoverable if deleted. If you do not want to have soft delete enabled, set value to 0."
      }
    }
  },
  "resources": [
    {
      "type": "Microsoft.KeyVault/managedHSMs",
      "apiVersion": "2021-04-01-preview",
      "name": "[parameters('managedHSMName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "Standard_B1",
        "family": "B"
      },
      "properties": {
        "enableSoftDelete": "[greater(parameters('softRetentionInDays'), 0)]",
        "softDeleteRetentionInDays": "[if(equals(parameters('softRetentionInDays'), 0), null(), parameters('softRetentionInDays'))]",
        "enablePurgeProtection": false,
        "tenantId": "[parameters('tenantId')]",
        "initialAdminObjectIds": "[parameters('initialAdminObjectIds')]",
        "publicNetworkAccess": "Enabled",
        "networkAcls": {
          "bypass": "None",
          "defaultAction": "Allow"
        }
      }
    }
  ]
}

Ресурс Azure, определенный в шаблоне:

  • Microsoft.KeyVault/managedHSMs: создание управляемого HSM в Azure Key Vault.

Развертывание шаблона

Для шаблона требуется идентификатор объекта, связанный с вашей учетной записью. Чтобы найти его, используйте команду Azure CLI az ad user show для передачи адреса электронной почты в параметр --id. Вы можете ограничить выходные данные с помощью параметра --query, оставив только идентификатор объекта.

az ad user show --id <your-email-address> --query "objectId"

Вам также может потребоваться идентификатор клиента. Чтобы найти его, используйте команду Azure CLI az ad user show. Вы можете ограничить выходные данные с помощью параметра --query, оставив только идентификатор клиента.

az account show --query "tenantId"

Теперь вы можете развернуть шаблон ARM:

  1. Выберите следующее изображение, чтобы войти на портал Azure и открыть шаблон. Шаблон создает Управляемое устройство HSM.

    Button to deploy the Resource Manager template to Azure.

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

    • Подписка— выберите подписку Azure.
    • Группа ресурсов: выберите "Создать", введите "myResourceGroup" в качестве имени и нажмите кнопку "ОК".
    • Расположение: выберите расположение. Например, восточная часть США 2.
    • managedHSMName: введите имя Управляемого устройства HSM.
    • Идентификатор клиента: функция шаблона автоматически получает идентификатор клиента. Не изменяйте значение по умолчанию. Если нет значения, введите идентификатор клиента, полученный выше.
    • initial Администратор ObjectIds: введите идентификатор объекта, полученный выше.
  3. Щелкните Приобрести. После успешного развертывания Управляемого устройства HSM вы получите следующее уведомление:

Для развертывания шаблона используется портал Azure. В дополнение к порталу Azure можно также использовать Azure PowerShell, Azure CLI и REST API. Дополнительные сведения о других методах развертывания см. в статье о развертывании с использованием шаблонов.

Проверка развертывания

Вы можете убедиться, что управляемый HSM был создан с помощью команды Azure CLI az keyvault list . Выходные данные проще читать, если форматировать результаты в виде таблицы:

az keyvault list -o table

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

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

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

Вы можете удалить ставшую ненужной группу ресурсов и все связанные с ней ресурсы с помощью Azure CLI, выполнив команду az group delete:

az group delete --name "myResourceGroup"

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

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

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

В этом кратком руководстве вы создали Управляемое устройство HSM. Возможности Управляемого устройства HSM будут ограничены до его активации. Сведения о том, как активировать Управляемое устройство HSM, см. в разделе Активация Управляемого устройства HSM.