Spostamento di Azure Key Vault in un'altra sottoscrizione

Nota

È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.

Panoramica

Importante

Lo spostamento di un insieme di credenziali delle chiavi in un'altra sottoscrizione darà luogo a una modifica che causa un'interruzione nell'ambiente. Assicurarsi di comprendere l'impatto di questa modifica e seguire attentamente le indicazioni riportate in questo articolo prima di decidere di spostare l'insieme di credenziali delle chiavi in una nuova sottoscrizione. Se si usano identità del servizio gestito (MSI, Managed Service Identity) leggere le istruzioni post-spostamento alla fine del documento.

Azure Key Vault viene automaticamente associato all'ID tenant predefinito di Microsoft Entra ID per la sottoscrizione in cui viene creato. È possibile trovare l'ID tenant associato alla sottoscrizione seguendo questa guida. All'ID tenant vengono associate anche tutte le voci dei criteri di accesso e le assegnazioni dei ruoli. Se si sposta la sottoscrizione di Azure dal tenant A al tenant B, gli insiemi di credenziali delle chiavi esistenti non saranno accessibili dalle entità servizio, ovvero utenti e applicazioni, nel tenant B. Per risolvere questo problema è necessario:

Nota

Se Key Vault viene creato tramite Azure Lighthouse, viene invece associato all'ID tenant di gestione. Azure Lighthouse è supportato solo dal modello di autorizzazione dei criteri di accesso dell'insieme di credenziali. Per altre informazioni sui tenant in Azure Lighthouse, vedere Tenant, utenti e ruoli in Azure Lighthouse.

  • Modificare l'ID tenant associato a tutti gli insiemi di credenziali delle chiavi esistenti nella sottoscrizione impostandolo sul tenant B.
  • Rimuovere tutte le voci dei criteri di accesso esistenti.
  • Aggiungere nuove voci dei criteri di accesso associate al tenant B.

Per altre informazioni su Azure Key Vault e Microsoft Entra ID, vedere

Limiti

Importante

Gli insiemi di credenziali delle chiavi usati per la crittografia del disco non possono essere spostati Se si usa l'insieme di credenziali delle chiavi con la crittografia del disco per una macchina virtuale, l'insieme di credenziali delle chiavi non può essere spostato in un gruppo di risorse diverso o in una sottoscrizione mentre è abilitata la crittografia del disco. È necessario disabilitare la crittografia del disco prima di spostare l'insieme di credenziali delle chiavi in un nuovo gruppo di risorse o in una nuova sottoscrizione.

Alcune entità servizio (utenti e applicazioni) sono associate a un tenant specifico. Se si sposta l'insieme di credenziali delle chiavi in una sottoscrizione in un altro tenant, è possibile che non sia possibile ripristinare l'accesso a un'entità servizio specifica. Verificare che tutte le entità servizio essenziali esistano nel tenant in cui si sposta l'insieme di credenziali delle chiavi.

Prerequisiti

È possibile controllare i ruoli esistenti usando il portale di Azure, PowerShell, l'interfaccia della riga di comando di Azure o l'API REST.

Spostamento di un insieme di credenziali delle chiavi in una nuova sottoscrizione

  1. Accedere al portale di Azure.
  2. Passare all'insieme di credenziali delle chiavi
  3. Selezionare la scheda "Panoramica"
  4. Selezionare il pulsante "Sposta"
  5. Selezionare "Spostare in un'altra sottoscrizione" nelle opzioni dell'elenco a discesa
  6. Selezionare il gruppo di risorse in cui spostare l'insieme di credenziali delle chiavi
  7. Confermare l'avviso relativo allo spostamento delle risorse
  8. Fare clic su "OK".

Passaggi aggiuntivi quando la sottoscrizione si trova in un nuovo tenant

Se la sottoscrizione contenente l'insieme di credenziali delle chiavi è stata spostata in un nuovo tenant, è necessario aggiornare manualmente l'ID tenant e rimuovere i criteri di accesso e le assegnazioni di ruolo precedenti. Ecco le esercitazioni per questi passaggi in PowerShell e nell'interfaccia della riga di comando di Azure. Se si usa PowerShell, potrebbe essere necessario eseguire il comando Clear-AzContext per consentire la visualizzazione delle risorse al di fuori dell'ambito selezionato corrente.

Aggiornare l'ID tenant in un insieme di credenziali delle chiavi

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

Aggiornare i criteri di accesso e le assegnazioni di ruolo

Nota

Se Key Vault usa il modello di autorizzazione controllo degli accessi in base al ruolo di Azure. È anche necessario rimuovere le assegnazioni di ruolo dell'insieme di credenziali delle chiavi. È possibile rimuovere le assegnazioni di ruolo usando il portale di Azure, l'interfaccia della riga di comando di Azure o PowerShell.

Ora che l'insieme di credenziali è associato all'ID tenant corretto e le voci dei criteri di accesso o le assegnazioni di ruolo precedenti sono state rimosse, impostare le nuove voci dei criteri di accesso o le nuove assegnazioni di ruolo.

Per l'assegnazione dei criteri, vedere:

Per l'aggiunta di assegnazioni di ruolo, vedere:

Aggiornare le identità gestite

Se si deve trasferire una sottoscrizione intera e si usa un'identità gestita per le risorse di Azure, sarà necessario aggiornarla con il nuovo tenant di Microsoft Entra. Per altre informazioni sulle identità gestite, vedere Panoramica delle identità gestite.

Se si usa un'identità gestita, sarà anche necessario aggiornare l'identità perché quella precedente non risiederà più nel tenant di Microsoft Entra corretto. Per informazioni su come risolvere il problema, vedere i documenti seguenti.

Passaggi successivi