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. Confira Instalar o Azure PowerShell para começar. 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

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.

  1. Entre no portal do Azure.
  2. Navegue até o cofre de chaves
  3. Selecione na guia "Visão geral"
  4. Selecione o botão "Mover".
  5. Selecione "Mover para outra assinatura" nas opções de lista suspensa.
  6. Selecione o grupo de recursos para o qual você deseja mover o cofre de chaves.
  7. Reconheça o aviso sobre a movimentação de recursos.
  8. 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:

Para adicionar atribuições de função, confira:

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