Para obter uma visão geral do HSM Gerenciado, confira O que é o HSM Gerenciado?
Pré-requisitos
Uma assinatura Azure é necessária. Se você não tiver uma, crie uma conta gratuita antes de começar.
Você também precisará de:
Observação
Todos os comandos a seguir mostram dois métodos de uso para a CLI. Um método usa os --hsm-name parâmetros e --name (para nome da chave). O outro método usa o --id parâmetro, em que você pode especificar a URL inteira, incluindo o nome da chave, quando apropriado. O último método é útil quando o chamador (seja um usuário ou um aplicativo) não tem acesso de leitura ao plano de controle e somente acesso restrito ao plano de dados.
Algumas interações com material de chave exigem permissões específicas do RBAC local do HSM Gerenciado. Para obter a lista completa de funções e permissões internas do RBAC local do HSM Gerenciado, confira Funções internas do RBAC local do HSM Gerenciado. Para atribuir essas permissões a um usuário, consulte Acesso seguro aos HSMs gerenciados.
Criar uma chave HSM
Observação
Você não pode exportar uma chave gerada ou importada para o HSM Gerenciado. A única exceção à regra de não exportação é quando você cria uma chave com uma política de liberação de chave específica. Essa política permite que a chave seja exportada apenas para ambientes de computação confidenciais confiáveis (enclaves seguros) definidos explicitamente. Essa funcionalidade de exportação limitada foi projetada para cenários de computação segura específicos e não é igual a uma exportação de chave de uso geral. Para obter as melhores práticas recomendadas para portabilidade e durabilidade importantes, consulte o artigo vinculado.
No portal Azure, navegue até o recurso HSM Gerenciado.
No menu à esquerda, em Configurações, selecione Chaves.
Selecione Gerar/Importar na lista suspensa Gerar/Importar/Restaurar Backup .
Escolha o tipo de chave (RSA-HSM, EC-HSM ou oct-HSM), defina o tamanho da chave ou a curva, o nome e as operações permitidas e selecione Criar.
Screenshot do painel Chaves no portal Azure para um HSM Gerenciado.
Use o az keyvault key create comando para criar uma chave.
Criar uma chave RSA
Este exemplo mostra como criar uma chave RSA de 3072 bits que é usada apenas para operações wrapKey e unwrapKey (--ops).
az keyvault key create --hsm-name <hsm-name> --name myrsakey --ops wrapKey unwrapKey --kty RSA-HSM --size 3072
## OR
# Note the key name (myrsakey) in the URI
az keyvault key create --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey --ops wrapKey unwrapKey --kty RSA-HSM --size 3072
A get operação retorna apenas a chave pública e os atributos de chave. Ele não retorna a chave privada (se uma chave assimétrica) ou o material da chave (se uma chave simétrica).
Criar uma chave do EC
O exemplo a seguir mostra como criar uma chave EC com a curva P-256. A chave é apenas para operações de assinatura e verificação (--ops) e tem duas tags, uso e nome do aplicativo. Use marcas para adicionar metadados extras à chave para acompanhamento e gerenciamento.
az keyvault key create --hsm-name <hsm-name> --name myec256key --ops sign verify --tags 'usage=signing' 'appname=myapp' --kty EC-HSM --curve P-256
## OR
# Note the key name (myec256key) in the URI
az keyvault key create --id https://<hsm-name>.managedhsm.azure.net/keys/myec256key --ops sign verify --tags 'usage=signing' 'appname=myapp' --kty EC-HSM --curve P-256
Criar uma chave simétrica de 256 bits
Este exemplo mostra como criar uma chave simétrica de 256 bits que é apenas para criptografar e descriptografar operações (--ops).
az keyvault key create --hsm-name <hsm-name> --name myaeskey --ops encrypt decrypt --tags 'usage=encryption' 'appname=myapp' --kty oct-HSM --size 256
## OR
# Note the key name (myaeskey) in the URI
az keyvault key create --id https://<hsm-name>.managedhsm.azure.net/keys/myaeskey --ops encrypt decrypt --tags 'usage=encryption' 'appname=myapp' --kty oct-HSM --size 256
Use o Add-AzKeyVaultKey cmdlet para criar uma chave.
Criar uma chave RSA
Este exemplo mostra como criar uma chave RSA de 3072 bits que é usada apenas para operações wrapKey e unwrapKey .
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -KeyType RSA-HSM -Size 3072 -KeyOps wrapKey,unwrapKey
Criar uma chave do EC
Este exemplo mostra como criar uma chave EC com a curva P-256 para operações de sinal e verificação .
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myec256key -KeyType EC-HSM -CurveName P-256 -KeyOps sign,verify -Tag @{usage='signing'; appname='myapp'}
Criar uma chave simétrica de 256 bits
Este exemplo mostra como criar uma chave simétrica de 256 bits para criptografar e descriptografar operações.
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myaeskey -KeyType oct-HSM -Size 256 -KeyOps encrypt,decrypt -Tag @{usage='encryption'; appname='myapp'}
No portal Azure, navegue até o recurso HSM Gerenciado.
No menu à esquerda, em Configurações, selecione Chaves.
Selecione a chave que você deseja exibir. O portal exibe os atributos, as versões e as marcas da chave.
Use o az keyvault key show comando para exibir atributos, versões e marcas para uma chave.
az keyvault key show --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key show --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey
Use o Get-AzKeyVaultKey cmdlet para exibir atributos, versões e marcas para uma chave.
Get-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey
Listar chaves
No portal Azure, navegue até o recurso HSM Gerenciado.
No menu à esquerda, em Configurações, selecione Chaves. O portal lista todas as chaves no HSM Gerenciado.
Use o az keyvault key list comando para listar todas as chaves dentro de um HSM gerenciado.
az keyvault key list --hsm-name <hsm-name>
## OR
# use full URI
az keyvault key list --id https://<hsm-name>.managedhsm.azure.net/
Use o Get-AzKeyVaultKey cmdlet para listar todas as chaves em um HSM Gerenciado.
Get-AzKeyVaultKey -HsmName <hsm-name>
Excluir uma chave
No portal Azure, navegue até o recurso HSM Gerenciado.
No menu à esquerda, em Configurações, selecione Chaves.
Selecione a chave que você deseja excluir.
Selecione Excluir e confirme.
Use o az keyvault key delete comando para excluir uma chave de um HSM gerenciado. A exclusão reversível está sempre ativada. Portanto, uma chave excluída permanece no estado excluído e você pode recuperá-la até que o número de dias de retenção passe. Depois disso, a chave é limpa (excluída permanentemente) sem nenhuma recuperação possível.
az keyvault key delete --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key delete --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey
Use o Remove-AzKeyVaultKey cmdlet para excluir uma chave. A exclusão reversível está sempre ativada, portanto, uma chave excluída permanece recuperável até que o período de retenção expire.
Remove-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey
Listar chaves excluídas
No portal Azure, navegue até o recurso HSM Gerenciado.
No menu à esquerda, em Configurações, selecione Chaves.
Selecione Gerenciar chaves excluídas para exibir chaves no estado de exclusão temporária.
Use o comando az keyvault key list-deleted para listar todas as chaves que estão no estado excluído no seu HSM gerenciado.
az keyvault key list-deleted --hsm-name <hsm-name>
## OR
# use full URI
az keyvault key list-deleted --id https://<hsm-name>.managedhsm.azure.net/
Use o cmdlet Get-AzKeyVaultKey com o parâmetro -InRemovedState para listar chaves excluídas.
Get-AzKeyVaultKey -HsmName <hsm-name> -InRemovedState
Recuperar (restaurar) uma chave excluída
No portal Azure, navegue até o recurso HSM Gerenciado.
No menu à esquerda, em Configurações, selecione Chaves e, em seguida, selecione Gerenciar chaves excluídas.
Selecione a chave excluída que você deseja recuperar.
Selecione Recuperar.
Use o comando az keyvault key list-deleted para listar todas as chaves em estado de exclusão no seu HSM gerenciado. Para recuperar (desdelete) uma chave, use o --id parâmetro. Você deve anotar o valor recoveryId da chave excluída obtida pelo comando az keyvault key list-deleted.
az keyvault key recover --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key recover --id https://<hsm-name>.managedhsm.azure.net/deletedKeys/myrsakey
Use o Undo-AzKeyVaultKeyRemoval cmdlet para recuperar uma chave excluída.
Undo-AzKeyVaultKeyRemoval -HsmName <hsm-name> -Name myrsakey
Limpar (excluir permanentemente) uma chave
Observação
Se o HSM gerenciado tiver a proteção de limpeza habilitada, a operação de limpeza não será permitida. A chave é limpa automaticamente quando o período de retenção expira.
No portal Azure, navegue até o recurso HSM Gerenciado.
No menu à esquerda, em Configurações, selecione Chaves e, em seguida, selecione Gerenciar chaves excluídas.
Selecione a chave excluída que você deseja limpar.
Selecione Limpar e confirme.
Aviso
Esta operação exclui permanentemente sua chave.
Use o az keyvault key purge comando para limpar (excluir permanentemente) uma chave.
az keyvault key purge --hsm-name <hsm-name> --name myrsakey
## OR
# Note the key name (myaeskey) in the URI
az keyvault key purge --id https://<hsm-name>.managedhsm.azure.net/deletedKeys/myrsakey
Use o Remove-AzKeyVaultKey cmdlet com o -InRemovedState parâmetro para limpar uma chave excluída.
Remove-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -InRemovedState
Aviso
Esta operação exclui permanentemente sua chave.
Criar um backup de chave individual
No momento, o backup de chaves não está disponível no portal do Azure. Use o CLI do Azure ou Azure PowerShell.
Use az keyvault key backup para criar um backup de chave. O arquivo de backup é um blob criptografado ligado criptograficamente ao Domínio de Segurança do HSM de origem. Você só pode restaurá-lo em HSMs que compartilham o mesmo domínio de segurança. Leia mais sobre Domínios de Segurança.
az keyvault key backup --hsm-name <hsm-name> --name myrsakey --file myrsakey.backup
## OR
# Note the key name (myaeskey) in the URI
az keyvault key backup --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey --file myrsakey.backup
Use o Backup-AzKeyVaultKey cmdlet para criar um backup de chave. O arquivo de backup é um blob criptografado ligado criptograficamente ao Domínio de Segurança do HSM de origem.
Backup-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -OutputFile myrsakey.backup
Restaurar uma chave individual do backup
No portal Azure, navegue até o recurso HSM Gerenciado.
No menu à esquerda, em Configurações, selecione Chaves.
Selecione Gerar/Importar/Restaurar Backup e escolha Restaurar chave no backup.
Navegue até o arquivo de backup e selecione Restaurar.
Use az keyvault key restore para restaurar uma chave individual. O HSM de origem em que você criou o backup deve compartilhar o mesmo domínio de segurança que o HSM de destino em que você está restaurando a chave.
Observação
A operação de restauração falhará se houver uma chave com o mesmo nome no estado ativo ou excluído.
az keyvault key restore --hsm-name <hsm-name> --name myrsakey --file myrsakey.backup
## OR
# Note the key name (myaeskey) in the URI
az keyvault key restore --id https://<hsm-name>.managedhsm.azure.net/keys/myrsakey --file myrsakey.backup
Use o Restore-AzKeyVaultKey cmdlet para restaurar uma única chave. O HSM de origem em que você criou o backup deve compartilhar o mesmo domínio de segurança que o HSM de destino.
Observação
A operação de restauração falhará se houver uma chave com o mesmo nome no estado ativo ou excluído.
Restore-AzKeyVaultKey -HsmName <hsm-name> -InputFile myrsakey.backup
Importar uma chave de um arquivo
No momento, a importação de chaves não está disponível no portal do Azure. Use o CLI do Azure ou Azure PowerShell.
Use o az keyvault key import comando para importar uma chave (somente RSA e EC) de um arquivo. O arquivo de certificado deve ter uma chave privada e deve usar a codificação PEM (conforme definido nas RFCs 1421, 1422, 1423, 1424).
az keyvault key import --hsm-name <hsm-name> --name myrsakey --pem-file mycert.key --pem-password 'mypassword'
## OR
# Note the key name (<key-name>) in the URI
az keyvault key import --id https://<hsm-name>.managedhsm.azure.net/keys/<key-name> --pem-file mycert.key --password 'mypassword'
Use o Add-AzKeyVaultKey cmdlet com o -KeyFilePath parâmetro para importar uma chave de um arquivo PEM.
Add-AzKeyVaultKey -HsmName <hsm-name> -Name myrsakey -KeyFilePath ./mycert.key -KeyFilePassword (ConvertTo-SecureString -String 'mypassword' -AsPlainText -Force) -KeyType RSA-HSM
Para importar uma chave de um HSM on-premises para um Managed HSM, consulte Importar chaves protegidas por HSM para Managed HSM (BYOK).
Próximas etapas