Este artigo aborda duas funcionalidades de recuperação do Azure Key Vault: proteção contra eliminação suave e purga. Este documento fornece uma visão geral destas funcionalidades e mostra-lhe como gerir as funcionalidades através do portal Azure, CLI do Azure e Azure PowerShell.
Importante
Se um cofre de chaves não tiver a proteção de exclusão suave habilitada, excluir uma chave resultará na sua exclusão permanente. Os clientes são fortemente encorajados a ativar a aplicação de soft delete dos seus cofres via Azure Policy.
Visão geral das opções de recuperação
O Azure Key Vault oferece várias opções para garantir a disponibilidade e recuperação dos seus dados do Key Vault:
-
Redundância automática e failover: Key Vault replica automaticamente os dados entre regiões e gere o failover durante as interrupções - ver Azure Key Vault disponibilidade e redundância
-
Eliminação suave e proteção contra eliminação permanente (abordada neste artigo): impede a exclusão acidental ou maliciosa do cofre ou dos seus objetos no cofre
-
Backup e restauro manual: Para segredos individuais, chaves e certificados - veja Azure Key Vault backup
Este artigo se concentra em recursos de proteção de exclusão suave e limpeza que ajudam a proteger contra exclusão acidental ou maliciosa.
Pré-requisitos
Uma subscrição Azure - criar uma gratuitamente
Azure PowerShell.
CLI do Azure
Um Key Vault - podes criar um usando Azure portalCLI do Azure ou Azure PowerShell
O usuário precisa das seguintes permissões (no nível de assinatura) para executar operações em cofres excluídos por software:
| Permissão |
Descrição |
| Microsoft. KeyVault/localizações/cofres apagados/ler |
Exibir as propriedades de um cofre de chaves eliminado temporariamente |
| Microsoft.KeyVault/Localizações/DeletedVaults/Purge/Action |
Purgar um cofre de chaves eliminado em modo suave |
| Microsoft. KeyVault/localizações/operaçãoResultados/ler |
Para verificar o estado de purga do cofre |
|
Key Vault Colaborador |
Para recuperar cofre excluído por software |
O que são "soft-delete" e "purge protection"
A proteção contra exclusão suave e limpeza são dois recursos diferentes de recuperação do cofre de chaves.
Exclusão suave foi concebida para impedir a eliminação acidental do seu cofre de chaves e das chaves, segredos e certificados armazenados dentro do cofre de chaves. Pense em soft-delete como uma lixeira. Quando elimina um cofre de chaves ou um objeto de cofre de chaves, este permanece recuperável por um período de retenção configurável pelo utilizador ou pelo padrão de 90 dias. Os cofres de chaves no estado de exclusão suave também podem ser limpos (excluídos permanentemente), permitindo que você recrie cofres de chaves e objetos de cofre de chaves com o mesmo nome. Tanto a recuperação quanto a exclusão de cofres de chaves e objetos exigem permissões de política de acesso elevadas. Uma vez que a exclusão suave tenha sido ativada, ela não poderá ser desativada.
É importante notar que os nomes dos cofres de chaves são globalmente exclusivos, portanto, você não pode criar um cofre de chaves com o mesmo nome de um cofre de chaves no estado de exclusão suave. Da mesma forma, os nomes de chaves, segredos e certificados são exclusivos dentro de um cofre de chaves. Não é possível criar um segredo, chave ou certificado com o mesmo nome de outro no estado de exclusão suave.
A proteção contra limpeza foi projetada para impedir a exclusão do cofre de chaves, chaves, segredos e certificados por um insider mal-intencionado. Pense nisso como uma lixeira com um bloqueio baseado no tempo. Você pode recuperar itens a qualquer momento durante o período de retenção configurável. Você não poderá excluir ou limpar permanentemente um cofre de chaves até que o período de retenção termine. Uma vez decorrido o período de retenção, o objeto do cofre da chave ou do cofre da chave é limpo automaticamente.
Nota
A Proteção contra Limpeza foi projetada para que nenhuma função ou permissão de administrador possa substituir, desativar ou contornar a Proteção contra Limpeza. Quando a proteção contra purga está ativada, não pode ser desativada ou anulada por ninguém, incluindo a Microsoft. Isto significa que tem de recuperar um cofre de chaves eliminado ou aguardar que o período de retenção termine antes de reutilizar o nome do cofre de chaves.
Esses recursos são altamente recomendados para ambientes de produção.
Para mais informações sobre a eliminação suave, veja Azure Key Vault visão geral da eliminação suave
Verifique se a exclusão suave está habilitada em um cofre de chaves e habilite a exclusão suave
- Inicie sessão no portal Azure.
- Selecione o cofre das chaves.
- Selecione o painel "Propriedades".
- Verifique se o botão de opção ao lado de soft-delete está definido como "Enable Recovery".
- Se a exclusão suave não estiver habilitada no cofre de chaves, selecione o botão de opção para ativar a exclusão suave e selecione "Salvar".
Em Propriedades, Soft-delete está destacado, assim como o valor para o ativar.
Conceder acesso a uma entidade de serviço para apagar e recuperar segredos eliminados.
- Inicie sessão no portal Azure.
- Selecione o cofre das chaves.
- Selecione a folha "Política de acesso".
- Na tabela, localize a linha da entidade de segurança à qual você deseja conceder acesso (ou adicione uma nova entidade de segurança).
- Selecione a lista suspensa para chaves, certificados e segredos.
- Role até ao fundo do menu suspenso e selecione "Recuperar" e "Limpar"
- As entidades de segurança também precisam das funcionalidades "get" e "list" para executar a maioria das operações.
No painel de navegação esquerdo, as políticas do Access são realçadas. Nas políticas do Access, a lista suspensa Posições secretas é mostrada e quatro itens são selecionados: Obter, Listar, Recuperar e Limpar.
Listar, recuperar ou limpar um cofre de chaves excluído por software
- Inicie sessão no portal Azure.
- Selecione a barra de pesquisa na parte superior da página.
- Procure pelo serviço "Key Vault". Não selecione um cofre individual de chaves.
- Na parte superior do ecrã, selecione a opção "Gerir cofres eliminados"
- Um painel de contexto é aberto no lado direito da tela.
- Selecione a sua subscrição.
- Se o cofre de chaves tiver sido excluído suavemente, ele aparecerá no painel de contexto à direita.
- Se houver muitos cofres, poderá selecionar "Carregar mais" na parte inferior do painel de contexto ou utilizar a interface de linha de comandos ou o PowerShell para obter os resultados.
- Depois de encontrar o cofre que deseja recuperar ou limpar, marque a caixa de seleção ao lado dele.
- Selecione a opção Recuperar na parte inferior do painel de contexto se pretender recuperar o cofre de chaves.
- Selecione a opção de limpeza se quiser excluir permanentemente o cofre de chaves.
Nos cofres de chaves, a opção Gerir cofres eliminados é realçada.
Em Gerenciar cofres de chaves excluídos, o único cofre de chaves listado é realçado e selecionado, e o botão Recuperar é realçado.
Listar, recuperar ou apagar segredos, chaves e certificados eliminados temporariamente
- Inicie sessão no portal Azure.
- Selecione o cofre das chaves.
- Selecione o painel correspondente ao tipo de segredo que deseja gerir (chaves, segredos ou certificados).
- Na parte superior da tela, selecione "Gerenciar excluídos (chaves, segredos ou certificados)
- Um painel de contexto aparece no lado direito da tela.
- Se o seu segredo, chave ou certificado não aparecer na lista, ele não está no estado de exclusão suave.
- Selecione o segredo, a chave ou o certificado que deseja gerenciar.
- Selecione a opção para recuperar ou limpar na parte inferior do painel de contexto.
Em Chaves, a opção Gerir chaves eliminadas é destacada.
Key Vault (CLI)
Verificar se um cofre de chaves tem a exclusão reversível ativada
az keyvault show --subscription <subscription-id> -g <resource-group> -n <vault-name>
Ativar soft-delete no cofre de chaves
Todos os novos cofres de chaves têm a funcionalidade de exclusão temporária ativada por padrão. Se você tiver atualmente um cofre de chaves que não tenha a exclusão suave habilitada, use o seguinte comando para habilitar a exclusão suave.
az keyvault update --subscription <subscription-id> -g <resource-group> -n <vault-name> --enable-soft-delete true
Excluir cofre de chaves (recuperável se a exclusão suave estiver ativada)
az keyvault delete --subscription <subscription-id> -g <resource-group> -n <vault-name>
Listar todos os cofres de chaves excluídos por software
az keyvault list-deleted --subscription <subscription-id> --resource-type vault
Recupere o cofre de chaves apagado por software
az keyvault recover --subscription <subscription-id> -n <vault-name>
Purgar o cofre de chaves suavemente eliminado (AVISO! ESTA OPERAÇÃO ELIMINARÁ PERMANENTEMENTE O COFRE DE CHAVES)
az keyvault purge --subscription <subscription-id> -n <vault-name>
Ativar a proteção contra limpeza no cofre de chaves
az keyvault update --subscription <subscription-id> -g <resource-group> -n <vault-name> --enable-purge-protection true
Certificados (CLI)
Conceder acesso para limpar e recuperar certificados
az role assignment create --role "Key Vault Certificates Officer" --assignee <user-principal-name> --scope /subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.KeyVault/vaults/<vault-name>
Apagar certificado (passar para o estado de eliminação suave)
Nota
O az keyvault certificate delete comando foi preterido. Quando a eliminação suave está ativada no seu cofre de chaves (que agora é o padrão), este comando move o certificado para um estado de eliminação suave em vez de o apagar permanentemente. Depois podes usar az keyvault certificate recover para restaurá-lo, ou az keyvault certificate purge para apagá-lo permanentemente. Para mais informações, consulte visão geral da eliminação temporária do Azure Key Vault.
az keyvault certificate delete --subscription <subscription-id> --vault-name <vault-name> --name <certificate-name>
Listar certificados excluídos
az keyvault certificate list-deleted --subscription <subscription-id> --vault-name <vault-name>
Recuperar certificado excluído
az keyvault certificate recover --subscription <subscription-id> --vault-name <vault-name> --name <certificate-name>
Limpar certificado apagado temporariamente (AVISO! ESTA OPERAÇÃO ELIMINARÁ PERMANENTEMENTE O SEU CERTIFICADO)
az keyvault certificate purge --subscription <subscription-id> --vault-name <vault-name> --name <certificate-name>
Teclas (CLI)
Conceder acesso para limpar e recuperar chaves
az role assignment create --role "Key Vault Crypto Officer" --assignee <user-principal-name> --scope /subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.KeyVault/vaults/<vault-name>
Tecla Eliminar
az keyvault key delete --subscription <subscription-id> --vault-name <vault-name> --name <key-name>
Listar chaves excluídas
az keyvault key list-deleted --subscription <subscription-id> --vault-name <vault-name>
Recuperar chave excluída
az keyvault key recover --subscription <subscription-id> --vault-name <vault-name> --name <key-name>
Purge soft-deleted chave (AVISO! ESTA OPERAÇÃO ELIMINARÁ PERMANENTEMENTE A SUA CHAVE)
az keyvault key purge --subscription <subscription-id> --vault-name <vault-name> --name <key-name>
Segredos (CLI)
Conceder acesso para limpar e recuperar segredos
az role assignment create --role "Key Vault Secrets Officer" --assignee <user-principal-name> --scope /subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.KeyVault/vaults/<vault-name>
Apagar segredo (passar para o estado de eliminação suave)
Nota
O az keyvault secret delete comando foi preterido. Quando a eliminação suave está ativada no seu cofre de chaves (que agora é o padrão), este comando move o segredo para um estado de eliminação suave em vez de o apagar permanentemente. Depois podes usar az keyvault secret recover para restaurá-lo, ou az keyvault secret purge para apagá-lo permanentemente. Para mais informações, consulte visão geral da eliminação reversível do Azure Key Vault.
az keyvault secret delete --subscription <subscription-id> --vault-name <vault-name> --name <secret-name>
Listar segredos excluídos
az keyvault secret list-deleted --subscription <subscription-id> --vault-name <vault-name>
Recuperar segredo apagado
az keyvault secret recover --subscription <subscription-id> --vault-name <vault-name> --name <secret-name>
Purgar segredo eliminado temporariamente (AVISO! ESTA OPERAÇÃO ELIMINARÁ PERMANENTEMENTE O SEU SEGREDO)
az keyvault secret purge --subscription <subscription-id> --vault-name <vault-name> --name <secret-name>
Key Vault (PowerShell)
Verificar se um cofre de chaves tem a exclusão reversível ativada
Get-AzKeyVault -VaultName "<vault-name>"
Eliminar cofre de chaves
Remove-AzKeyVault -VaultName "<vault-name>"
Listar todos os cofres de chaves excluídos por software
Get-AzKeyVault -InRemovedState
Recupere o cofre de chaves apagado por software
Undo-AzKeyVaultRemoval -VaultName "<vault-name>" -ResourceGroupName "<resource-group>" -Location "<location>"
Purgar o cofre de chaves excluído temporariamente (AVISO! ESTA OPERAÇÃO ELIMINARÁ PERMANENTEMENTE O COFRE DE CHAVES)
Remove-AzKeyVault -VaultName "<vault-name>" -InRemovedState -Location "<location>"
Ativar a proteção contra limpeza no cofre de chaves
Update-AzKeyVault -VaultName "<vault-name>" -ResourceGroupName "<resource-group>" -EnablePurgeProtection
Certificados (PowerShell)
Conceder permissões para recuperar e limpar certificados
New-AzRoleAssignment -SignInName <user-principal-name> -RoleDefinitionName "Key Vault Certificates Officer" -Scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.KeyVault/vaults/<vault-name>"
Eliminar um Certificado
Remove-AzKeyVaultCertificate -VaultName "<vault-name>" -Name "<certificate-name>"
Listar todos os certificados excluídos em um cofre de chaves
Get-AzKeyVaultCertificate -VaultName "<vault-name>" -InRemovedState
Recuperar um certificado no estado excluído
Undo-AzKeyVaultCertificateRemoval -VaultName "<vault-name>" -Name "<certificate-name>"
Purgar um certificado excluído de forma temporária (AVISO! ESTA OPERAÇÃO ELIMINARÁ PERMANENTEMENTE O SEU CERTIFICADO)
Remove-AzKeyVaultcertificate -VaultName "<vault-name>" -Name "<certificate-name>" -InRemovedState
Chaves (PowerShell)
Conceder permissões para recuperar e limpar chaves
New-AzRoleAssignment -SignInName <user-principal-name> -RoleDefinitionName "Key Vault Crypto Officer" -Scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.KeyVault/vaults/<vault-name>"
Eliminar uma chave
Remove-AzKeyVaultKey -VaultName "<vault-name>" -Name "<key-name>"
Listar todas as chaves excluídas em um cofre de chaves
Get-AzKeyVaultKey -VaultName "<vault-name>" -InRemovedState
Para recuperar uma chave eliminada temporariamente
Undo-AzKeyVaultKeyRemoval -VaultName "<vault-name>" -Name "<key-name>"
Limpe uma chave apagada suavemente (AVISO! ESTA OPERAÇÃO ELIMINARÁ PERMANENTEMENTE A SUA CHAVE)
Remove-AzKeyVaultKey -VaultName "<vault-name>" -Name "<key-name>" -InRemovedState
Segredos (PowerShell)
Conceder permissões para recuperar e limpar segredos
New-AzRoleAssignment -SignInName <user-principal-name> -RoleDefinitionName "Key Vault Secrets Officer" -Scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.KeyVault/vaults/<vault-name>"
Excluir um segredo chamado SQLPassword
Remove-AzKeyVaultSecret -VaultName "<vault-name>" -Name "<secret-name>"
Listar todos os segredos excluídos em um cofre de chaves
Get-AzKeyVaultSecret -VaultName "<vault-name>" -InRemovedState
Recuperar um segredo no estado apagado
Undo-AzKeyVaultSecretRemoval -VaultName "<vault-name>" -Name "<secret-name>"
Limpar um segredo em estado eliminado (AVISO! ESTA OPERAÇÃO ELIMINARÁ PERMANENTEMENTE A SUA CHAVE)
Remove-AzKeyVaultSecret -VaultName "<vault-name>" -Name "<secret-name>" -InRemovedState
Próximos passos