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. | |
Aceda a https://shell.azure.com ou selecione o botão Iniciar Cloud Shell para abrir o Cloud Shell no browser. | |
Selecione o botão Cloud Shell na barra de menus, na parte direita do portal do Azure. |
Para usar o Azure Cloud Shell:
Inicie o Cloud Shell.
Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou comando.
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.
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 norwayeast.
az group create --name "ContosoResourceGroup" --location norwayeast
Criar um HSM gerenciado
Criar um HSM gerenciado é um processo de duas etapas:
- Provisione um recurso HSM gerenciado.
- 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 da Noruega, 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 "norwayeast" --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.
- Leia uma visão geral do HSM gerenciado
- Saiba mais sobre como gerenciar chaves em um HSM gerenciado
- Saiba mais sobre o gerenciamento de funções para um HSM gerenciado
- Revise as práticas recomendadas do HSM gerenciado