Como migrar um Azure Key Vault para outra assinatura
Observação
Recomendamos que você use o módulo Az PowerShell do Azure para interagir com o Azure. Para começar, consulte Instalar o Azure PowerShell. Para saber como migrar para o módulo Az PowerShell, confira Migrar o Azure PowerShell do AzureRM para o Az.
Visão geral
Importante
Migrar um cofre de chaves para outra assinatura causará uma alteração significativa no seu ambiente. Verifique se você entendeu o impacto dessa alteração e siga as orientações neste artigo cuidadosamente antes de decidir migrar o cofre de chaves para uma nova assinatura. Se você estiver usando o MSI (identidades de serviço gerenciado), leia as instruções após a migração no final do documento.
O Azure Key Vault é automaticamente vinculado à ID de locatário padrão do Microsoft Entra ID para a assinatura na qual ele é criado. Encontre a ID de locatário associada à sua assinatura seguindo este guia. Todas as entradas de política de acesso também são vinculadas a essa ID de locatário. Se você migrar a assinatura do Azure do locatário A para o locatário B, os cofres de chaves existentes ficarão inacessíveis para as entidades de serviço (usuários e aplicativos) no locatário B. Para corrigir esse problema, você precisa:
Observação
Se o Key Vault for criado através do Azure Lighthouse, ele será vinculado ao gerenciamento da ID do locatário. O Azure Lighthouse possui suporte apenas para o modelo de permissão de política de acesso do cofre. Para obter mais informações sobre locatários no Azure Lighthouse, consulte Locatários, usuários e funções no Azure Lighthouse.
- Alterar a ID do locatário associada a todos os cofres de chaves existentes na assinatura para o locatário B.
- Remover todas as entradas de política de acesso existentes.
- Adicionar novas entradas de política de acesso associadas ao locatário B.
Para obter mais informações sobre o Azure Key Vault e o Microsoft Entra ID, confira
Limitações
Importante
Os cofres de chaves usados para criptografia de disco não podem ser migrados Se você estiver usando um cofre de chaves com criptografia de disco para uma VM, ele não poderá ser migrado para um grupo de recursos ou uma assinatura diferente enquanto a criptografia de disco estiver habilitada. Você deve desabilitar a criptografia de disco antes de migrar o cofre de chaves para um novo grupo de recursos ou assinatura.
Algumas entidades de serviço (usuários e aplicativos) estão associadas a um locatário específico. Caso migre o cofre de chaves para uma assinatura em outro locatário, talvez não consiga restaurar o acesso a uma entidade de serviço específica. Verifique se todas as entidades de serviço essenciais existem no locatário ao qual você está migrando o cofre de chaves.
Pré-requisitos
- Acesso em nível de colaborador ou superior na assinatura atual em que o cofre de chaves existe. Você pode atribuir uma função usando o Portal do Azure, a CLI do Azure ou o PowerShell.
- Acesso no nível do Colaborador ou superior à assinatura em que você deseja mover seu cofre de chaves. Você pode atribuir uma função usando o Portal do Azure, a CLI do Azure ou o PowerShell.
- Um grupo de recursos na nova assinatura. Você pode criar um usando o Portal do Azure, o PowerShell ou a CLI do Azure.
Você pode verificar as funções existentes usando o Portal do Azure , o PowerShell, a CLI do Azure ou a API REST.
Migre um cofre de chaves para uma nova assinatura.
- Entre no portal do Azure.
- Navegue até o cofre de chaves
- Selecione na guia "Visão geral"
- Selecione o botão "Mover".
- Selecione "Mover para outra assinatura" nas opções de lista suspensa.
- Selecione o grupo de recursos para o qual você deseja mover o cofre de chaves.
- Reconheça o aviso sobre a movimentação de recursos.
- Selecione "OK"
Etapas adicionais quando a assinatura está em um novo locatário
Se você migrou a assinatura contendo o cofre de chaves para um novo locatário, atualize manualmente a ID do locatário e remova as políticas de acesso e as atribuições de função antigas. Estes são os tutoriais disponíveis para essas etapas no PowerShell e na CLI do Azure: Se você estiver usando o PowerShell, talvez seja necessário executar o comando Clear-AzContext para ver os recursos que estão fora do escopo selecionado atualmente.
Atualizar a ID de locatário em um cofre de chaves
Select-AzSubscription -SubscriptionId <your-subscriptionId> # Select your Azure Subscription
$vaultResourceId = (Get-AzKeyVault -VaultName myvault).ResourceId # Get your key vault's Resource ID
$vault = Get-AzResource -ResourceId $vaultResourceId -ExpandProperties # Get the properties for your key vault
$vault.Properties.TenantId = (Get-AzContext).Tenant.TenantId # Change the Tenant that your key vault resides in
$vault.Properties.AccessPolicies = @() # Access policies can be updated with real
# applications/users/rights so that it does not need to be # done after this whole activity. Here we are not setting
# any access policies.
Set-AzResource -ResourceId $vaultResourceId -Properties $vault.Properties # Modifies the key vault's properties.
Clear-AzContext #Clear the context from PowerShell
Connect-AzAccount #Log in again to confirm you have the correct tenant id
az account set -s <your-subscriptionId> # Select your Azure Subscription
$tenantId=$(az account show --query tenantId) # Get your tenantId
az keyvault update -n myvault --remove Properties.accessPolicies # Remove the access policies
az keyvault update -n myvault --set Properties.tenantId=$tenantId # Update the key vault tenantId
Atualizar as políticas de acesso e as atribuições de função
Observação
Se o Key Vault estiver usando o modelo de permissão RBAC do Azure. Você também precisará remover as atribuições de função do cofre de chaves. Você pode remover as atribuições de função usando o Portal do Azure, a CLI do Azure ou o PowerShell.
Agora que o cofre está associado à ID de locatário correta e as antigas entradas da política de acesso foram removidas, defina as novas entradas da política de acesso ou atribuições de função.
Para atribuir políticas, confira:
- Atribuir uma política de acesso usando o portal
- Atribuir uma política de acesso usando a CLI do Azure
- Atribuir uma política de acesso usando o PowerShell
Para adicionar atribuições de função, confira:
- Atribuir funções do Azure usando o portal do Azure
- Atribuir funções do Azure usando a CLI do Azure
- Atribuir funções do Azure usando o PowerShell
Atualizar identidades gerenciadas
Se você estiver transferindo toda a assinatura e usando uma identidade gerenciada para recursos do Azure, também precisará atualizá-la para o novo locatário do Microsoft Entra. Para obter mais informações sobre identidades gerenciadas, Visão geral de identidades gerenciada.
Se você estiver usando a identidade gerenciada, também precisará atualizar a identidade porque a identidade antiga não estará mais no locatário correto do Microsoft Entra. Confira os documentos a seguir que irão ajudá-lo a resolver esse problema.
Próximas etapas
- Saiba mais sobre chaves, segredos e certificados
- Para obter informações conceituais, incluindo como interpretar os logs do Key Vault, veja Registro em log do Key Vault
- Guia do Desenvolvedor do Cofre de Chaves
- Recursos de segurança do Azure Key Vault
- Configurar redes virtuais e firewalls do Azure Key Vault