Guia de início rápido: criar um HSM gerenciado usando um modelo ARM

Este guia de início rápido descreve como usar um modelo do Azure Resource Manager (modelo ARM) para criar um HSM gerenciado pelo Azure Key Vault. O HSM gerenciado é um serviço de nuvem totalmente gerenciado, altamente disponível, de locatário único e compatível com os padrões que permite proteger chaves criptográficas para seus aplicativos em nuvem, usando HSMs validados pelo FIPS 140-2 Nível 3 .

Um modelo do Azure Resource Manager é um arquivo JSON (JavaScript Object Notation) que define a infraestrutura e a configuração do seu projeto. O modelo utiliza sintaxe declarativa. Você descreve a implantação pretendida sem escrever a sequência de comandos de programação para criar a implantação.

Se o seu ambiente cumpre os pré-requisitos e se está familiarizado com a utilização de modelos ARM, selecione o botão Implementar no Azure. O modelo será aberto no portal do Azure.

Button to deploy the Resource Manager template to Azure.

Pré-requisitos

Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.

  • Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.

  • Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.

    • Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.

    • Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.

    • Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.

Rever o modelo

O modelo usado neste início rápido é de Modelos de Início Rápido do 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"
        }
      }
    }
  ]
}

O recurso do Azure definido no modelo é:

  • Microsoft.KeyVault/managedHSMs: crie um HSM gerenciado pelo Azure Key Vault.

Implementar o modelo

O modelo requer o ID do objeto associado à sua conta. Para encontrá-lo, use o comando Azure CLI az ad user show , passando seu endereço de email para o --id parâmetro. Você pode limitar a saída ao ID do objeto somente com o --query parâmetro.

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

Você também pode precisar do seu ID de locatário. Para localizá-lo, use o comando Azure CLI az ad user show . Você pode limitar a saída ao ID do locatário somente com o --query parâmetro.

az account show --query "tenantId"

Agora você pode implantar o modelo ARM:

  1. Selecione a imagem seguinte para iniciar sessão no Azure e abrir um modelo. O modelo cria um HSM gerenciado.

    Button to deploy the Resource Manager template to Azure.

  2. Selecione ou introduza os seguintes valores. A menos que especificado, use o valor padrão para criar o HSM gerenciado.

    • Subscrição: selecione uma subscrição do Azure.
    • Grupo de recursos: selecione Criar novo, digite "myResourceGroup" como o nome e selecione OK.
    • Localização: Selecione um local. Por exemplo, Leste dos EUA 2.
    • managedHSMName: insira um nome para seu HSM gerenciado.
    • ID do locatário: a função de modelo recupera automaticamente o ID do locatário, não altere o valor padrão. Se não houver nenhum valor, insira o ID do locatário recuperado acima.
    • initialAdminObjectIds: insira a ID do objeto que você recuperou acima.
  3. Selecione Comprar. Depois que o HSM gerenciado for implantado com êxito, você receberá uma notificação:

O portal do Azure é utilizado para implementar o modelo. Além do portal do Azure, você também pode usar o Azure PowerShell, a CLI do Azure e a API REST. Para aprender outros métodos de implantação, consulte Implantar modelos.

Validar a implementação

Você pode verificar se o HSM gerenciado foi criado com o comando Azure CLI az keyvault list . Você achará a saída mais fácil de ler se formatar os resultados como uma tabela:

az keyvault list -o table

Você deve ver o nome do HSM gerenciado recém-criado.

Clean up resources (Limpar recursos)

Outros inícios rápidos e tutoriais desta coleção têm por base este início rápido. Se quiser continuar a trabalhar com os inícios rápidos e tutoriais subsequentes, pode manter estes recursos.

Quando não for mais necessário, você pode usar o comando azur CLI az group delete para remover o grupo de recursos e todos os recursos relacionados:

az group delete --name "myResourceGroup"

Aviso

A exclusão do grupo de recursos coloca o HSM gerenciado em um estado de exclusão suave. O HSM gerenciado continuará a ser cobrado até ser limpo. Consulte Proteção contra eliminação recuperável e remoção do HSM Gerido

Próximos passos

Neste início rápido, você criou um HSM gerenciado. Este HSM gerenciado não estará totalmente funcional até que seja ativado. Consulte Ativar seu HSM gerenciado para saber como ativar seu HSM.