Importar chaves protegidas por HSM para o Key Vault (BYOK)

Para obter maior garantia ao usar o Cofre de Chaves do Azure, você pode importar ou gerar uma chave em um módulo de segurança de hardware (HSM); a chave nunca sairá do limite do HSM. Esse cenário geralmente é chamado de traga sua própria chave (BYOK). O Key Vault usa HSMs validados pelo FIPS 140 para proteger suas chaves.

Use as informações neste artigo para ajudá-lo a planejar, gerar e transferir suas próprias chaves protegidas por HSM para usar com o Azure Key Vault.

Nota

Esta funcionalidade não está disponível para o Microsoft Azure operado pela 21Vianet.

Esse método de importação está disponível apenas para HSMs suportados.

Para obter mais informações e para obter um tutorial para começar a usar o Cofre da Chave (incluindo como criar um cofre de chaves para chaves protegidas por HSM), consulte O que é o Cofre de Chaves do Azure?.

Descrição geral

Aqui está uma visão geral do processo. As etapas específicas a serem concluídas são descritas mais adiante no artigo.

  • No Cofre de Chaves, gere uma chave (conhecida como Chave de Troca de Chaves (KEK)). O KEK deve ser uma chave RSA-HSM que tenha apenas a operação de import chave. Apenas o Key Vault Premium e o Managed HSM suportam chaves RSA-HSM.
  • Faça o download da chave pública KEK como um arquivo .pem.
  • Transfira a chave pública KEK para um computador offline conectado a um HSM local.
  • No computador offline, use a ferramenta BYOK fornecida pelo fornecedor do HSM para criar um arquivo BYOK.
  • A chave de destino é criptografada com um KEK, que permanece criptografado até ser transferido para o HSM do Cofre de Chaves. Somente a versão criptografada da sua chave sai do HSM local.
  • Um KEK gerado dentro de um HSM do Cofre de Chaves não é exportável. Os HSMs impõem a regra de que não existe uma versão clara de um KEK fora de um HSM do Cofre de Chaves.
  • O KEK deve estar no mesmo cofre de chaves onde a chave de destino será importada.
  • Quando o arquivo BYOK é carregado no Cofre da Chave, um HSM do Cofre da Chave usa a chave privada KEK para descriptografar o material da chave de destino e importá-lo como uma chave HSM. Essa operação acontece inteiramente dentro de um HSM do Cofre de Chaves. A chave de destino sempre permanece no limite de proteção do HSM.

Pré-requisitos

A tabela a seguir lista os pré-requisitos para usar o BYOK no Cofre da Chave do Azure:

Necessidade Mais informações
Uma subscrição do Azure Para criar um cofre de chaves no Cofre de Chaves do Azure, você precisa de uma assinatura do Azure. Inscreva-se para uma avaliação gratuita.
Um Key Vault Premium ou HSM gerenciado para importar chaves protegidas por HSM Para obter mais informações sobre as camadas de serviço e os recursos no Azure Key Vault, consulte Key Vault Pricing.
Um HSM da lista de HSMs suportados e uma ferramenta BYOK e instruções fornecidas pelo seu fornecedor de HSM Você deve ter permissões para um HSM e conhecimento básico de como usar seu HSM. Consulte HSMs suportados.
Azure CLI versão 2.1.0 ou posterior Consulte Instalar a CLI do Azure.

HSMs suportados

Nome do fornecedor Tipo de fornecedor Modelos HSM suportados Mais informações
Criptomática ISV (Sistema de Gestão de Chaves Empresariais) Várias marcas e modelos de HSM, incluindo
  • nCifra
  • Thales
  • Utimaco
Consulte o site Cryptomathic para obter detalhes
Confiar Fabricante,
HSM como serviço
  • Família nShield de HSMs
  • nShield como serviço
nCipher nova ferramenta BYOK e documentação
Fortanix Fabricante,
HSM como serviço
  • Serviço de gerenciamento de chaves de autodefesa (SDKMS)
  • Equinix SmartKey
Exportando chaves SDKMS para provedores de nuvem para BYOK - Azure Key Vault
IBM Fabricante IBM 476x, CryptoExpress IBM Fundação de Gerenciamento de Chaves Empresariais
Maravilhoso Fabricante Todos os HSMs LiquidSecurity com
  • Firmware versão 2.0.4 ou posterior
  • Firmware versão 3.2 ou superior
Ferramenta Marvell BYOK e documentação
nCifra Fabricante,
HSM como serviço
  • Família nShield de HSMs
  • nShield como serviço
nCipher nova ferramenta BYOK e documentação
Securosys SA Fabricante,
HSM como serviço
Família Primus HSM, Securosys Clouds HSM Ferramenta e documentação Primus BYOK
StorMagic ISV (Sistema de Gestão de Chaves Empresariais) Várias marcas e modelos de HSM, incluindo
  • Utimaco
  • Thales
  • nCifra
Consulte o site StorMagic para obter detalhes
SvKMS e Azure Key Vault BYOK
Thales Fabricante
  • Família Luna HSM 7 com firmware versão 7.3 ou superior
Ferramenta Luna BYOK e documentação
Utimaco Fabricante,
HSM como serviço
u.trust Âncora, CryptoServer Ferramenta Utimaco BYOK e guia de integração

Tipos de chave suportados

Nome da chave Tipo de chave Tamanho/curva da chave Origem Description
Chave de troca de chaves (KEK) RSA 2.048 bits
3.072 bits
4.096 bits
Azure Key Vault HSM Um par de chaves RSA apoiado por HSM gerado no Azure Key Vault
Chave de destino
RSA 2.048 bits
3.072 bits
4.096 bits
HSM do fornecedor A chave a ser transferida para o HSM do Azure Key Vault
EC P-256
P-384
P-521
HSM do fornecedor A chave a ser transferida para o HSM do Azure Key Vault

Gere e transfira sua chave para o Key Vault Premium HSM ou Managed HSM

Para gerar e transferir sua chave para um Key Vault Premium ou HSM gerenciado:

Gerar um KEK

Um KEK é uma chave RSA gerada em um Key Vault Premium ou HSM gerenciado. O KEK é usado para criptografar a chave que você deseja importar (a chave de destino ).

O KEK deve ser:

  • Uma chave RSA-HSM (2.048 bits; 3.072 bits; ou 4.096 bits)
  • Gerado no mesmo cofre de chaves para onde pretende importar a chave de destino
  • Criado com operações de chave permitidas definidas como import

Nota

O KEK deve ter 'import' como a única operação de chave permitida. A «importação» exclui-se mutuamente com todas as outras operações essenciais.

Use o comando az keyvault key create para criar um KEK com operações de chave definidas como import. Registre o identificador de chave (kid) retornado do comando a seguir. (Você usará o kid valor na Etapa 3.)

az keyvault key create --kty RSA-HSM --size 4096 --name KEKforBYOK --ops import --vault-name ContosoKeyVaultHSM

Para HSM gerenciado:

az keyvault key create --kty RSA-HSM --size 4096 --name KEKforBYOK --ops import --hsm-name ContosoKeyVaultHSM

Faça o download da chave pública KEK

Use az keyvault key download para baixar a chave pública KEK para um arquivo .pem. A chave de destino importada é criptografada usando a chave pública KEK.

az keyvault key download --name KEKforBYOK --vault-name ContosoKeyVaultHSM --file KEKforBYOK.publickey.pem

Para HSM gerenciado:

az keyvault key download --name KEKforBYOK --hsm-name ContosoKeyVaultHSM --file KEKforBYOK.publickey.pem

Transfira o ficheiro KEKforBYOK.publickey.pem para o seu computador offline. Você precisará desse arquivo na próxima etapa.

Gere e prepare a sua chave para transferência

Consulte a documentação do fornecedor do HSM para baixar e instalar a ferramenta BYOK. Siga as instruções do fornecedor do HSM para gerar uma chave de destino e, em seguida, crie um pacote de transferência de chaves (um arquivo BYOK). A ferramenta BYOK usará o kid arquivo da Etapa 1 e o arquivo KEKforBYOK.publickey.pem que você baixou na Etapa 2 para gerar uma chave de destino criptografada em um arquivo BYOK.

Transfira o ficheiro BYOK para o computador ligado.

Nota

Não há suporte para a importação de chaves RSA de 1.024 bits. A importação de chave de curva elíptica com curva P-256K é suportada.

Problema conhecido: a importação de uma chave de destino RSA 4K de HSMs Luna só é suportada com o firmware 7.4.0 ou mais recente.

Transfira sua chave para o Azure Key Vault

Para concluir a importação de chaves, transfira o pacote de transferência de chaves (um arquivo BYOK) do computador desconectado para o computador conectado à Internet. Use o comando az keyvault key import para carregar o arquivo BYOK no HSM do Key Vault.

Para importar uma chave RSA, use o seguinte comando. O parâmetro --kty é opcional e assume como padrão 'RSA-HSM'.

az keyvault key import --vault-name ContosoKeyVaultHSM --name ContosoFirstHSMkey --byok-file KeyTransferPackage-ContosoFirstHSMkey.byok

Para HSM gerenciado

az keyvault key import --hsm-name ContosoKeyVaultHSM --name ContosoFirstHSMkey --byok-file KeyTransferPackage-ContosoFirstHSMkey.byok

Para importar uma chave EC, você deve especificar o tipo de chave e o nome da curva.

az keyvault key import --vault-name ContosoKeyVaultHSM --name ContosoFirstHSMkey --kty EC-HSM --curve-name "P-256" --byok-file KeyTransferPackage-ContosoFirstHSMkey.byok

Para HSM gerenciado

az keyvault key import --hsm-name ContosoKeyVaultHSM --name ContosoFirstHSMkey --byok-file --kty EC-HSM --curve-name "P-256" KeyTransferPackage-ContosoFirstHSMkey.byok

Se o carregamento for bem-sucedido, a CLI do Azure exibirá as propriedades da chave importada.

Próximos passos

Agora você pode usar essa chave protegida por HSM no cofre de chaves. Para obter mais informações, consulte esta comparação de preços e recursos.