Partilhar via


Guia de início rápido: provisionar e ativar um HSM gerenciado usando a CLI do Azure

Neste início rápido, você criará e ativará um HSM gerenciado do Azure Key Vault (Módulo de Segurança de Hardware) com a CLI do Azure. 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 . Para obter mais informações sobre o HSM gerenciado, consulte a Visão geral.

Pré-requisitos

Para concluir as etapas neste artigo, você deve ter:

  • Uma subscrição do Microsoft Azure. Se você não tiver um, você pode se inscrever para uma avaliação gratuita.
  • A CLI do Azure versão 2.25.0 ou posterior. Executar az --version para localizar a versão. Se precisar de instalar ou atualizar, veja Instalar a CLI do Azure.

Azure Cloud Shell

O Azure aloja o Azure Cloud Shell, um ambiente de shell interativo que pode utilizar através do seu browser. Pode utilizar o Bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. Você pode usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada em seu ambiente local.

Para iniciar o Azure Cloud Shell:

Opção Exemplo/Ligação
Selecione Experimentar no canto superior direito de um código ou bloco de comandos. Selecionar Experimentar não copia automaticamente o código ou comando para o Cloud Shell. Captura de tela que mostra um exemplo de Try It for Azure Cloud Shell.
Aceda a https://shell.azure.com ou selecione o botão Iniciar Cloud Shell para abrir o Cloud Shell no browser. Botão para iniciar o Azure Cloud Shell.
Selecione o botão Cloud Shell na barra de menus, na parte direita do portal do Azure. Captura de tela que mostra o botão Cloud Shell no portal do Azure

Para usar o Azure Cloud Shell:

  1. Inicie o Cloud Shell.

  2. Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou comando.

  3. Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e Linux ou selecionando Cmd+Shift+V no macOS.

  4. Selecione Enter para executar o código ou comando.

Iniciar sessão no Azure

Para entrar no Azure usando a CLI, você pode digitar:

az login

Criar um grupo de recursos

Um grupo de recursos é um contentor lógico no qual os recursos do Azure são implementados e geridos. O exemplo a seguir cria um grupo de recursos chamado ContosoResourceGroup no local eastus2.

az group create --name "ContosoResourceGroup" --location eastus2

Criar um HSM gerenciado

Criar um HSM gerenciado é um processo de duas etapas:

  1. Provisione um recurso HSM gerenciado.
  2. Ative seu HSM gerenciado baixando um artefato chamado domínio de segurança.

Provisionar um HSM gerenciado

Use o az keyvault create comando para criar um HSM gerenciado. Esse script tem três parâmetros obrigatórios: um nome de grupo de recursos, um nome HSM e a localização geográfica.

Você precisa fornecer as seguintes entradas para criar um recurso HSM gerenciado:

  • Um grupo de recursos onde será colocado na sua subscrição.
  • Localização do Azure.
  • Uma lista de administradores iniciais.

O exemplo a seguir cria um HSM chamado ContosoMHSM, no grupo de recursos ContosoResourceGroup, residente no local Leste dos EUA 2 , com o usuário conectado atual como o único administrador, com período de retenção de 7 dias para exclusão suave. O HSM gerenciado continuará a ser cobrado até ser limpo em um período de exclusão suave. Para obter mais informações, consulte Managed HSM soft-delete and purge protection e leia mais sobre Managed HSM soft-delete.

oid=$(az ad signed-in-user show --query id -o tsv)
az keyvault create --hsm-name "ContosoMHSM" --resource-group "ContosoResourceGroup" --location "eastus2" --administrators $oid --retention-days 7

Nota

Se você estiver usando Identidades Gerenciadas como administradores iniciais do HSM Gerenciado, deverá inserir o OID/PrincipalID das Identidades Gerenciadas depois de '--administrators' e não o ClientID.

Nota

O comando create pode levar alguns minutos. Uma vez que ele retorna com sucesso, você está pronto para ativar seu HSM.

Aviso

As instâncias gerenciadas do HSM são consideradas sempre em uso. Se você optar por ativar a proteção contra limpeza usando o --enable-purge-protection sinalizador, você será cobrado pela totalidade do período de retenção.

A saída deste comando mostra as propriedades do HSM gerenciado que você criou. As duas propriedades mais importantes são:

  • name: No exemplo, o nome é ContosoMHSM. Você usará esse nome para outros comandos.
  • hsmUri: No exemplo, o URI é 'https://contosohsm.managedhsm.azure.net.' Os aplicativos que usam seu HSM por meio de sua API REST devem usar esse URI.

Sua conta do Azure agora está autorizada a executar quaisquer operações neste HSM gerenciado. Até o momento, ninguém mais está autorizado.

Ative seu HSM gerenciado

Todos os comandos do plano de dados são desativados até que o HSM seja ativado. Por exemplo, não poderá criar chaves ou atribuir funções. Somente os administradores designados que foram atribuídos durante o comando create podem ativar o HSM. Para ativar o HSM, você deve baixar o Domínio de segurança.

Para ativar seu HSM, você precisará:

  • Para fornecer um mínimo de três pares de chaves RSA (até um máximo de 10)
  • Para especificar o número mínimo de chaves necessárias para desencriptar o domínio de segurança (denominado quórum)

Para ativar o HSM, envie pelo menos três (máximo 10) chaves públicas RSA para o HSM. O HSM criptografa o domínio de segurança com essas chaves e o envia de volta. Quando o download desse domínio de segurança for concluído com sucesso, seu HSM estará pronto para uso. Você também precisa especificar quorum, que é o número mínimo de chaves privadas necessárias para descriptografar o domínio de segurança.

O exemplo a seguir mostra como usar openssl para gerar três certificados autoassinados.

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

Nota

Mesmo que o certificado tenha "expirado", ele ainda pode ser usado para restaurar o domínio de segurança.

Importante

Crie e armazene os pares de chaves RSA e o arquivo de domínio de segurança gerados nesta etapa com segurança.

Use o az keyvault security-domain download comando para baixar o domínio de segurança e ativar seu HSM gerenciado. O exemplo a seguir usa três pares de chaves RSA (somente chaves públicas são necessárias para este comando) e define o quorum como dois.

az keyvault security-domain download --hsm-name ContosoMHSM --sd-wrapping-keys ./certs/cert_0.cer ./certs/cert_1.cer ./certs/cert_2.cer --sd-quorum 2 --security-domain-file ContosoMHSM-SD.json

Guarde o ficheiro de domínio de segurança e os pares de chaves RSA de forma segura. Você precisará deles para recuperação de desastres ou para criar outro HSM gerenciado que compartilhe o mesmo domínio de segurança para que os dois possam compartilhar chaves.

Depois de fazer o download bem-sucedido do domínio de segurança, seu HSM estará no estado ativo e pronto para ser usado.

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 já não forem necessários, pode utilizar o comando az group delete para remover o grupo de recursos e todos os recursos relacionados. Pode eliminar os recursos da seguinte forma:

az group delete --name ContosoResourceGroup

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ê provisionou um HSM gerenciado e o ativou. Para saber mais sobre o HSM gerenciado e como integrá-lo aos seus aplicativos, continue nestes artigos.