, ,

Azure Key Vault – Erro ao restaurar um certificado

Avatar de Vinicius

Recentemente tive que fazer alguns experimentos relacionados a um Azure Application Gateway e utilizar certificados que estavam em um Azure Key Vault.

Em resumo, precisava configurar um Application Gateway em uma outra Subscription para realizar alguns testes de migração de uma aplicação do cliente.

Para realizar o teste mais próximo do ambiente existente, resolvi, também utilizar os certificados já existentes, que estavam no Key Vault e foi quando tive o problema ao restaurar o certificado no novo Key Vault.

Vou mostrar o passo a passo do que aconteceu

Adicionar um Listener no Application Gateway

Ao adicionar um Listener no Application Gateway, você pode escolher se quer fazer upload de um certificado ou escolher um diretamente do Key Vault

Foi então que notei, que o certificado não estava disponível no Key Vault da nova Subscription

Fazer backup e restaurá-lo no Key Vault destino

Pensei, vou fazer um backup do Key Vault e restaurá-lo no Key Vault da nova Subscription

Backup

Fui até o Key Vault em questão, procurei por Certificates, em seguida cliquei no primeiro certificado que precisava fazer backup

Então, selecionei Download Backup

Você será solicitado para não fechar aquela tela, e em seguida para baixar o arquivo pressionado no botão Download

Escolha um local para salvar o backup e pressione Save

Restaurar

Fui até o Key Vault na outra Subscription, novamente em Certificates e optei por Restore Backup

Naveguei até o local onde salvei o backup, selecione e cliquei em Open

Erro

Foi quando recebi o erro

An error occurred while restoring the certificate

Ao acessar o erro, tive uma mensagem mais clara do que aconteceu

This provided certificate backup file was from another subscription. Backups can only be restored into the same subscription.

Já havia feito algumas vezes este processo, mas pelo visto nunca entre Subscriptions

Então, o que aprendi aqui foi que a restauração do backup de um certificado para um Key Vault apenas pode ocorrer em outro Key Vault que estiver na mesma Subscription

Solução

Neste caso, existem duas soluções possíveis

Solução 1

Solicitar ao cliente o certificado PFX e realizar uma importação do certificado

Vá até seu Azure Key Vault, Certificates e em Generate/Import

Na tela de Create a certificate, escolha em Method of Certificate Creation a opção de Import

Então, forneça as informações do certificado como Certificate Name, faça o Upload do certificado e coloque a senha do arquivo PFX e pressione Salvar para completar o processo

Dando tudo certo, as informações do certificado serão mostradas, bem parecidas com o exemplo abaixo

Solução 2

Fazer o download do arquivo PFX a partir do certificado existente no Key Vault e realizar a importação do certificado

Vá até o Key Vault onde o certificado está atualmente, Certificates, escolha o certificado que deseja fazer o download e em seguida clique na opção abaixo da Current Version

Com o certificado aberto, clique em Download in PFX/PEM format e em seguida confirme o download e pressione Download

Escolha o local onde deseja salvar e pressione Save

Em seguida, vá até o Key Vault que está na outra Subscription e refaça o caminho da Solução 1 para importar o arquivo PFX, mas com uma informação importante

Quando você exporta o certificado (de um Key Vault), a senha fica em branco

https://learn.microsoft.com/pt-br/azure/key-vault/certificates/how-to-export-certificate?tabs=azure-cli#export-stored-certificates

Ou seja, ao importar o PFX vindo de uma exportação do Key Vault, basta deixar o campo Password em branco também

Referências:

Avatar de Vinicius

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *