Spostare le risorse di Azure in un nuovo gruppo di risorse o una nuova sottoscrizione

Questo articolo illustra come spostare le risorse di Azure in un'altra sottoscrizione o in un altro gruppo di risorse all'interno della stessa sottoscrizione. Per spostare le risorse, è possibile usare il portale di Azure, Azure PowerShell, l'interfaccia della riga di comando di Azure o l'API REST.

Durante l'operazione di spostamento il gruppo di origine e quello di destinazione sono bloccati. Le operazioni di scrittura ed eliminazione sono bloccate nei gruppi di risorse fino al completamento dello spostamento. Questo blocco indica che non è possibile aggiungere, aggiornare o eliminare le risorse dei gruppi di risorse, Questo non significa che le risorse siano bloccate. Se, ad esempio, si sposta un server logico di Azure SQL, i relativi database e le altre risorse dipendenti in un nuovo gruppo di risorse o in una nuova sottoscrizione, non verranno riscontrati tempi di inattività nelle applicazioni che usano i database che potranno comunque leggere e scrivere nei database. Il blocco può durare per un massimo di quattro ore, ma la maggior parte degli spostamenti viene completata in minor tempo.

se lo spostamento richiede la configurazione di nuove risorse dipendenti, si verificherà un'interruzione di tali servizi fino a quando non vengono riconfigurati.

Lo spostamento di una risorsa comporta solo il suo spostamento in un nuovo gruppo di risorse o una nuova sottoscrizione. Non modifica il percorso della risorsa.

ID risorsa modificato

Quando si sposta una risorsa, si modifica il relativo ID risorsa. Il formato standard per un ID risorsa è /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. Quando si sposta una risorsa in un nuovo gruppo di risorse o in una nuova sottoscrizione, si modificano uno o più valori in tale percorso.

Se si usa l'ID risorsa in una posizione qualsiasi, sarà necessario modificarne il valore. Se ad esempio nel portale è presente un dashboard personalizzato che fa riferimento a un ID risorsa, sarà necessario aggiornare tale valore. Cercare gli script o i modelli da aggiornare con il nuovo ID risorsa.

Elenco di controllo da seguire prima di spostare le risorse

Prima di spostare una risorsa, è necessario eseguire alcuni passi importanti. La verifica di queste condizioni consente di evitare errori.

  1. Le sottoscrizioni di origine e di destinazione devono essere attive. In caso di problemi durante l'abilitazione di un account precedentemente disabilitato, creare una richiesta di supporto tecnico di Azure. Selezionare Gestione delle sottoscrizioni per il tipo di problema.

  2. Le sottoscrizioni di origine e destinazione devono coesistere nello stesso tenant di Microsoft Entra. Per verificare che entrambe le sottoscrizioni contengano lo stesso ID tenant, usare Azure PowerShell o l'interfaccia della riga di comando di Azure.

    Per Azure PowerShell usare:

    (Get-AzSubscription -SubscriptionName <your-source-subscription>).TenantId
    (Get-AzSubscription -SubscriptionName <your-destination-subscription>).TenantId
    

    Per l'interfaccia della riga di comando di Azure usare:

    az account show --subscription <your-source-subscription> --query tenantId
    az account show --subscription <your-destination-subscription> --query tenantId
    

    Se gli ID tenant per le sottoscrizioni di origine e di destinazione non sono uguali, usare i metodi descritti di seguito per risolvere le differenze degli ID tenant:

  3. Se si sta tentando di spostare le risorse da o verso un partner Cloud Solution Provider (CSP), vedere Trasferire sottoscrizioni di Azure tra sottoscrittori e CSP.

  4. Le risorse da spostare devono supportare l'operazione di spostamento. Per un elenco delle risorse che supportano lo spostamento, vedere Supporto delle operazioni di spostamento per le risorse.

  5. Alcuni servizi presentano limitazioni o requisiti specifici durante lo spostamento delle risorse. Se si sta spostando uno dei servizi seguenti, vedere le indicazioni prima di procedere.

  6. Il provider di risorse della risorsa da spostare deve essere registrato nella sottoscrizione di destinazione, altrimenti un errore indica che la sottoscrizione non è registrata per un tipo di risorsa. Questo errore può verificarsi se si sposta una risorsa in una nuova sottoscrizione, ma la sottoscrizione non è mai stata usata con tale tipo di risorsa.

    In PowerShell, per ottenere lo stato della registrazione usare i comandi seguenti:

    Set-AzContext -Subscription <destination-subscription-name-or-id>
    Get-AzResourceProvider -ListAvailable | Select-Object ProviderNamespace, RegistrationState
    

    Per registrare un provider di risorse, usare:

    Register-AzResourceProvider -ProviderNamespace Microsoft.Batch
    

    Nell'interfaccia della riga di comando di Azure, per ottenere lo stato della registrazione usare i comandi seguenti:

    az account set -s <destination-subscription-name-or-id>
    az provider list --query "[].{Provider:namespace, Status:registrationState}" --out table
    

    Per registrare un provider di risorse, usare:

    az provider register --namespace Microsoft.Batch
    
  7. Prima di spostare le risorse, controllare le quote della sottoscrizione in cui si desidera spostare le risorse. Se lo spostamento di risorse causa il superamento dei limiti della sottoscrizione, è necessario verificare se è possibile richiedere un aumento della quota. Per un elenco dei limiti e su come richiedere un aumento, vedere Sottoscrizione di Azure e limiti, quote e vincoli dei servizi.

  8. L'account che sposta le risorse deve avere almeno le autorizzazioni seguenti:

    • Microsoft.Resources/subscriptions/resourceGroups/moveResources/action sul gruppo di risorse di origine.
    • Microsoft.Resources/subscriptions/resourceGroups/write sul gruppo di risorse di destinazione.
  9. Se si sposta una risorsa con un ruolo di Azure assegnato direttamente alla risorsa (o a una risorsa figlio), l'assegnazione di ruolo non viene spostata e viene isolata. Dopo lo spostamento, è necessario creare nuovamente l'assegnazione di ruolo. Alla fine, l'assegnazione di ruolo isolata viene rimossa automaticamente, ma è consigliabile rimuoverla prima dello spostamento.

    Per informazioni su come gestire le assegnazioni di ruolo, vedere Elencare le assegnazioni di ruolo di Azure e Assegnare ruoli di Azure.

  10. Per uno spostamento tra sottoscrizioni, la risorsa e le relative risorse dipendenti devono trovarsi nello stesso gruppo di risorse e devono essere spostate insieme. Ad esempio, nel caso di una macchina virtuale con dischi gestiti, la macchina virtuale e i dischi gestiti devono essere spostati insieme, unitamente ad altre risorse dipendenti.

    Se si sposta una risorsa in una nuova sottoscrizione, verificare se la risorsa include risorse dipendenti e se queste si trovano nello stesso gruppo di risorse. Se le risorse non si trovano nello stesso gruppo di risorse, verificare se possono essere combinate nello stesso gruppo di risorse. In tal caso, portare tutte queste risorse nello stesso gruppo di risorse usando un'operazione di spostamento tra gruppi di risorse.

    Per altre informazioni, vedere Scenario per lo spostamento da una sottoscrizione all'altra.

Scenario per lo spostamento da una sottoscrizione all'altra

Lo spostamento delle risorse da una sottoscrizione a un'altra è un processo in tre passaggi:

Diagram that shows the three-step process of moving resources across subscriptions.

A scopo illustrativo, è presente una sola risorsa dipendente.

  • Passaggio 1: se le risorse dipendenti vengono distribuite tra gruppi di risorse diversi, spostarle prima in un unico gruppo di risorse.
  • Passaggio 2: spostare la risorsa e le risorse dipendenti insieme dalla sottoscrizione di origine alla sottoscrizione di destinazione.
  • Passaggio 3: facoltativamente, ridistribuire le risorse dipendenti in gruppi di risorse diversi all'interno della sottoscrizione di destinazione.

Usare il portale

Per spostare le risorse, selezionare il gruppo di risorse che contiene tali risorse.

Selezionare le risorse da spostare. Per spostare tutte le risorse, selezionare la casella di controllo all'inizio dell'elenco. In alternativa, selezionare le risorse singolarmente.

Screenshot of the Azure portal showing the selection of resources to move.

Selezionare il pulsante Sposta.

Screenshot of the Azure portal displaying the Move button with three options.

Questo pulsante offre tre opzioni:

Selezionare se si desidera spostare le risorse in un nuovo gruppo di risorse o in una nuova sottoscrizione.

Il gruppo di risorse di origine viene impostato automaticamente. Specificare il gruppo di risorse di destinazione. Se si sta passando a una nuova sottoscrizione, specificare anche la sottoscrizione. Selezionare Avanti.

Screenshot of the Azure portal where the user specifies the destination resource group for the move operation.

Il portale verifica che sia possibile spostare le risorse. Attendere il completamento della convalida.

Screenshot of the Azure portal showing the validation process for the move operation.

Al termine della convalida, selezionare Avanti.

Confermare di dover aggiornare strumenti e script per queste risorse. Per iniziare a spostare le risorse, selezionare Sposta.

Screenshot of the Azure portal where the user acknowledges the need to update tools and scripts before starting the move operation.

Al completamento dello spostamento si riceverà la notifica del risultato.

Screenshot of the Azure portal displaying a notification with the results of the move operation.

Usare Azure PowerShell

Convalida

Per testare lo scenario di spostamento senza spostare effettivamente le risorse, usare il comando Invoke-AzResourceAction. Usare questo comando solo quando è necessario predeterminare i risultati.

$sourceName = "sourceRG"
$destinationName = "destinationRG"
$resourcesToMove = @("app1", "app2")

$sourceResourceGroup = Get-AzResourceGroup -Name $sourceName
$destinationResourceGroup = Get-AzResourceGroup -Name $destinationName

$resources = Get-AzResource -ResourceGroupName $sourceName | Where-Object { $_.Name -in $resourcesToMove }

Invoke-AzResourceAction -Action validateMoveResources `
   -ResourceId $sourceResourceGroup.ResourceId `
   -Parameters @{
      resources = $resources.ResourceId;  # Wrap in an @() array if providing a single resource ID string.
      targetResourceGroup = $destinationResourceGroup.ResourceId
   }

Se la convalida ha esito positivo, non viene visualizzato alcun output.

Se la convalida ha esito negativo, viene visualizzato un messaggio di errore che descrive perché le risorse non possono essere spostate.

Sposta

Per spostare le risorse esistenti in un gruppo di risorse o in una sottoscrizione diversa, usare il comando Move-AzResource. L'esempio seguente illustra come spostare diverse risorse in un nuovo gruppo di risorse.

$sourceName = "sourceRG"
$destinationName = "destinationRG"
$resourcesToMove = @("app1", "app2")

$resources = Get-AzResource -ResourceGroupName $sourceName | Where-Object { $_.Name -in $resourcesToMove }

Move-AzResource -DestinationResourceGroupName $destinationName -ResourceId $resources.ResourceId

Per eseguire lo spostamento in una nuova sottoscrizione, includere un valore per il parametro DestinationSubscriptionId.

Utilizzare l'interfaccia della riga di comando di Azure

Convalida

Per testare lo scenario di spostamento senza spostare effettivamente le risorse, usare il comando az resource invoke-action. Usare questo comando solo quando è necessario predeterminare i risultati. Per eseguire questa operazione, è necessario:

  • ID risorsa del gruppo di risorse di origine
  • ID risorsa del gruppo di risorse di destinazione
  • ID risorsa di ogni risorsa da spostare

Nel corpo della richiesta usare \" per far precedere le virgolette doppie da caratteri di escape.

az resource invoke-action --action validateMoveResources \
  --ids "/subscriptions/{subscription-id}/resourceGroups/{source-rg}" \
  --request-body "{  \"resources\": [\"/subscriptions/{subscription-id}/resourceGroups/{source-rg}/providers/{resource-provider}/{resource-type}/{resource-name}\", \"/subscriptions/{subscription-id}/resourceGroups/{source-rg}/providers/{resource-provider}/{resource-type}/{resource-name}\", \"/subscriptions/{subscription-id}/resourceGroups/{source-rg}/providers/{resource-provider}/{resource-type}/{resource-name}\"],\"targetResourceGroup\":\"/subscriptions/{subscription-id}/resourceGroups/{destination-rg}\" }" 

Se la convalida ha esito positivo, viene visualizzato quanto segue:

{} Finished .. 

Se la convalida ha esito negativo, viene visualizzato un messaggio di errore che descrive perché le risorse non possono essere spostate.

Sposta

Per spostare risorse esistenti in un altro gruppo di risorse o un'altra sottoscrizione, usare il comando az resource move. Nel parametro --ids inserire un elenco delimitato da spazi di ID di risorse da spostare.

L'esempio seguente illustra come spostare diverse risorse in un nuovo gruppo di risorse. Funziona quando si usa l'interfaccia della riga di comando di Azure in un terminale Bash.

webapp=$(az resource show -g OldRG -n ExampleSite --resource-type "Microsoft.Web/sites" --query id --output tsv)
plan=$(az resource show -g OldRG -n ExamplePlan --resource-type "Microsoft.Web/serverfarms" --query id --output tsv)
az resource move --destination-group newgroup --ids $webapp $plan

Nell'esempio seguente viene illustrato come eseguire gli stessi comandi in una console di PowerShell.

$webapp=$(az resource show -g OldRG -n ExampleSite --resource-type "Microsoft.Web/sites" --query id --output tsv)
$plan=$(az resource show -g OldRG -n ExamplePlan --resource-type "Microsoft.Web/serverfarms" --query id --output tsv)
az resource move --destination-group newgroup --ids $webapp $plan

Per spostare in una nuova sottoscrizione, inserire il parametro --destination-subscription-id.

Uso di Python

Convalida

Per testare lo scenario di spostamento senza spostare effettivamente le risorse, usare il metodo ResourceManagementClient.resources.begin_validate_move_resources. Usare questo metodo solo quando è necessario predeterminare i risultati.

import os
from azure.identity import AzureCliCredential
from azure.mgmt.resource import ResourceManagementClient

credential = AzureCliCredential()
subscription_id = os.environ["AZURE_SUBSCRIPTION_ID"]

resource_client = ResourceManagementClient(credential, subscription_id)

source_name = "sourceRG"
destination_name = "destinationRG"
resources_to_move = ["app1", "app2"]

destination_resource_group = resource_client.resource_groups.get(destination_name)

resources = [
    resource for resource in resource_client.resources.list_by_resource_group(source_name)
    if resource.name in resources_to_move
]

resource_ids = [resource.id for resource in resources]

validate_move_resources_result = resource_client.resources.begin_validate_move_resources(
    source_name,
    {
        "resources": resource_ids,
        "target_resource_group": destination_resource_group.id
    }
).result()

print("Validate move resources result: {}".format(validate_move_resources_result))

Se la convalida ha esito positivo, non viene visualizzato alcun output.

Se la convalida ha esito negativo, viene visualizzato un messaggio di errore che descrive perché le risorse non possono essere spostate.

Sposta

Per spostare le risorse esistenti in un altro gruppo di risorse o in un'altra sottoscrizione, usare il metodo ResourceManagementClient.resources.begin_move_resources. L'esempio seguente illustra come spostare diverse risorse in un nuovo gruppo di risorse.

import os
from azure.identity import AzureCliCredential
from azure.mgmt.resource import ResourceManagementClient

credential = AzureCliCredential()
subscription_id = os.environ["AZURE_SUBSCRIPTION_ID"]

resource_client = ResourceManagementClient(credential, subscription_id)

source_name = "sourceRG"
destination_name = "destinationRG"
resources_to_move = ["app1", "app2"]

destination_resource_group = resource_client.resource_groups.get(destination_name)

resources = [
    resource for resource in resource_client.resources.list_by_resource_group(source_name)
    if resource.name in resources_to_move
]

resource_ids = [resource.id for resource in resources]

resource_client.resources.begin_move_resources(
    source_name,
    {
        "resources": resource_ids,
        "target_resource_group": destination_resource_group.id
    }
)

Usare l'API REST

Convalida

L'operazione di convalida dello spostamento consente di testare lo scenario di spostamento senza realmente spostare le risorse. Usare questa operazione per verificare se lo spostamento avrà esito positivo. La convalida viene chiamata automaticamente quando si invia una richiesta di spostamento. Usare questa operazione solo quando è necessario predeterminare i risultati. Per eseguire questa operazione, è necessario:

  • Nome del gruppo di risorse di origine
  • ID risorsa del gruppo di risorse di destinazione
  • ID risorsa di ogni risorsa da spostare
  • Token di accesso per l'account

Inviare la richiesta seguente:

POST https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<source-group>/validateMoveResources?api-version=2019-05-10
Authorization: Bearer <access-token>
Content-type: application/json

Con un corpo della richiesta:

{
 "resources": ["<resource-id-1>", "<resource-id-2>"],
 "targetResourceGroup": "/subscriptions/<subscription-id>/resourceGroups/<target-group>"
}

Se la richiesta viene formattata correttamente, l'operazione restituisce:

Response Code: 202
cache-control: no-cache
pragma: no-cache
expires: -1
location: https://management.azure.com/subscriptions/<subscription-id>/operationresults/<operation-id>?api-version=2018-02-01
retry-after: 15
...

Il codice di stato 202 indica che la richiesta di convalida è stata accettata, ma non è stato ancora determinato se l'operazione di spostamento avrà esito positivo. Il valore location contiene un URL che si usa per controllare lo stato dell'operazione a esecuzione prolungata.

Per controllare lo stato, inviare la richiesta seguente:

GET <location-url>
Authorization: Bearer <access-token>

Mentre l'operazione è ancora in esecuzione, si continua a ricevere il codice di stato 202. Attendere il numero di secondi indicato nel valore retry-after prima di riprovare. Se l'operazione di spostamento ha esito positivo, viene visualizzato il codice di stato 204. Se la convalida dello spostamento ha esito negativo, viene visualizzato un messaggio di errore, ad esempio:

{"error":{"code":"ResourceMoveProviderValidationFailed","message":"<message>"...}}

Sposta

Per spostare le risorse esistenti in un altro gruppo di risorse o in un'altra sottoscrizione, usare l'operazione Sposta risorse.

POST https://management.azure.com/subscriptions/{source-subscription-id}/resourcegroups/{source-resource-group-name}/moveResources?api-version={api-version}

Nel corpo della richiesta specificare il gruppo di risorse di destinazione e le risorse da spostare.

{
 "resources": ["<resource-id-1>", "<resource-id-2>"],
 "targetResourceGroup": "/subscriptions/<subscription-id>/resourceGroups/<target-group>"
}

Domande frequenti

Domanda: L'operazione di spostamento delle risorse, che in genere richiede alcuni minuti, è in esecuzione da quasi un'ora. C'è qualche errore?

Lo spostamento di una risorsa è un'operazione complessa con diverse fasi. Può interessare più del solo provider di risorse della risorsa che si sta tentando di spostare. A causa delle dipendenze tra i provider di risorse, Azure Resource Manager prevede 4 ore per il completamento dell'operazione. Questo periodo di tempo offre ai provider di risorse la possibilità di eseguire il ripristino da problemi temporanei. Se la richiesta di spostamento rientra nel periodo di quattro ore, l'operazione continua a tentare di essere completata e potrebbe comunque avere esito positivo. I gruppi di risorse di origine e di destinazione vengono bloccati durante questo periodo di tempo per evitare problemi di coerenza.

Domanda: Perché il gruppo di risorse resta bloccato per quattro ore durante lo spostamento delle risorse?

Per completare una richiesta di spostamento è consentito un massimo di quattro ore. Per evitare modifiche alle risorse in fase di spostamento, il gruppo di risorse di origine e quello di destinazione vengono bloccati durante lo spostamento delle risorse.

La richiesta di spostamento prevede due fasi. Nella prima fase la risorsa viene spostata. Nella seconda fase vengono inviate notifiche ad altri provider di risorse dipendenti dalla risorsa spostata. Quando un provider di risorse ha esito negativo in una delle due fasi, il gruppo di risorse può restare bloccato per tutte e quattro le ore. Durante il tempo consentito, Resource Manager riprova il passaggio non riuscito.

Se non è possibile spostare una risorsa entro quattro ore, Resource Manager sblocca entrambi i gruppi di risorse. Le risorse spostate correttamente si trovano nel gruppo di risorse di destinazione. Le risorse che non è stato possibile spostare restano nel gruppo di risorse di origine.

Domanda: Quali sono le implicazioni del blocco del gruppo di risorse di origine e di destinazione durante lo spostamento delle risorse?

Il blocco impedisce di eliminare un gruppo di risorse, di creare una nuova risorsa in uno dei due gruppi di risorse o di eliminare una delle risorse coinvolte nello spostamento.

L'immagine seguente mostra un messaggio di errore dal portale di Azure quando un utente tenta di eliminare un gruppo di risorse che fa parte di uno spostamento in corso.

Screenshot of the Azure portal showing an error message when trying to delete a resource group involved in an ongoing move operation.

Domanda: Cosa significa il codice errore "MissingMoveDependentResources"?

Quando si sposta una risorsa, le relative risorse dipendenti devono esistere nel gruppo di risorse o nella sottoscrizione di destinazione oppure devono essere incluse nella richiesta di spostamento. Il codice errore MissingMoveDependentResources viene visualizzato quando una risorsa dipendente non soddisfa questo requisito. Il messaggio di errore contiene dettagli sulla risorsa dipendente che deve essere inclusa nella richiesta di spostamento.

Ad esempio, lo spostamento di una macchina virtuale potrebbe richiedere lo spostamento di sette tipi di risorse con tre diversi provider di risorse. Questi tipi e provider di risorse sono:

  • Microsoft.Compute

    • virtualMachines
    • disks
  • Microsoft.Network

    • networkInterfaces
    • publicIPAddresses
    • networkSecurityGroups
    • virtualNetworks
  • Microsoft.Storage

    • storageAccounts

Un altro esempio comune prevede lo spostamento di una rete virtuale. Potrebbe essere necessario spostare diverse altre risorse associate alla rete virtuale. La richiesta di spostamento potrebbe riguardare indirizzi IP pubblici, tabelle di route, gateway di rete virtuale, gruppi di sicurezza di rete e altro. In generale, un gateway di rete virtuale deve sempre risiedere nello stesso gruppo di risorse della rete virtuale e non possono essere spostati separatamente.

Domanda: Cosa significa il codice errore "RequestDisallowedByPolicy"?

Resource Manager convalida la richiesta prima di tentare lo spostamento. Questa convalida include il controllo dei criteri definiti sulle risorse coinvolte nello spostamento. Ad esempio, se si sta tentando di spostare un insieme di credenziali delle chiavi, ma l'organizzazione ha un criterio per negare la creazione di un insieme di credenziali delle chiavi nel gruppo di risorse di destinazione, la convalida ha esito negativo e lo spostamento viene bloccato. Il codice errore restituito è RequestDisallowedByPolicy.

Per altre informazioni sui criteri, vedere Informazioni su Criteri di Azure.

Domanda: Perché non è possibile spostare alcune risorse in Azure?

Attualmente, non tutte le risorse in Azure supportano le operazioni di spostamento. Per un elenco delle risorse che supportano le operazioni di spostamento, vedere Supporto delle operazioni di spostamento per le risorse.

Domanda: Quante risorse è possibile spostare in un'unica operazione?

Quando possibile, suddividere spostamenti di grandi dimensioni in operazioni di spostamento separate. Resource Manager restituisce immediatamente un errore quando sono presenti più di 800 risorse in un'unica operazione. Anche lo spostamento di meno di 800 risorse può non riuscire a causa di un timeout.

Domanda: Qual è il significato dell'errore che indica che una risorsa non è nello stato completato?

Quando viene visualizzato un messaggio di errore che indica che una risorsa non può essere spostata perché non si trova in uno stato completato, potrebbe essere effettivamente una risorsa dipendente che blocca lo spostamento. In genere, il codice errore è MoveCannotProceedWithResourcesNotInSucceededState.

Se il gruppo di risorse di origine o di destinazione contiene una rete virtuale, gli stati di tutte le risorse dipendenti per la rete virtuale vengono controllati durante lo spostamento. Il controllo include tali risorse direttamente e indirettamente dipendenti dalla rete virtuale. Se una di queste risorse si trova in uno stato di errore, lo spostamento viene bloccato. Ad esempio, se si verifica un errore in una macchina virtuale che usa la rete virtuale, lo spostamento viene bloccato. Lo spostamento viene bloccato anche quando la macchina virtuale non è una delle risorse da spostare e non si trova in uno dei gruppi di risorse per lo spostamento.

Quando si riceve questo errore, si hanno due opzioni. Spostare le risorse in un gruppo di risorse che non dispone di una rete virtuale oppure contattare il supporto tecnico.

Passaggi successivi

Per un elenco delle risorse che supportano lo spostamento, vedere Supporto delle operazioni di spostamento per le risorse.