Condividi tramite


Eseguire la migrazione di pacchetti MSIX da MSIX App Attach a App Attach

Il collegamento app migliora le esperienze amministrative e utente tramite MSIX App Attach. Se si usa MSIX App Attach, è possibile eseguire la migrazione dei pacchetti MSIX al collegamento di app usando uno script di PowerShell.

Lo script di migrazione può eseguire le azioni seguenti:

  • Crea un nuovo oggetto pacchetto di collegamento dell'app e può eliminare l'oggetto pacchetto MSIX originale, se necessario.

  • Copiare le autorizzazioni dai gruppi di applicazioni associati al pool di host e al pacchetto MSIX.

  • Copiare il percorso e il gruppo di risorse del pool di host e del pacchetto MSIX.

  • Attività di migrazione dei log.

Prerequisiti

Per usare lo script di migrazione, è necessario:

Parametri

Ecco i parametri che è possibile usare con lo script di migrazione:

Parametro Descrizione
MsixPackage Oggetto pacchetto MSIX di cui eseguire la migrazione a un oggetto attach dell'app. Questo valore può essere passato tramite pipeline.
PermissionSource Da dove ottenere le autorizzazioni per il nuovo oggetto attach dell'app. L'impostazione predefinita non ha autorizzazioni concesse. Le opzioni sono:
  • DAG: gruppo di applicazioni desktop associato al pool di host e al pacchetto MSIX
  • RAG: uno o più gruppi di applicazioni RemoteApp associati al pool di host e al pacchetto MSIX
Entrambe le opzioni concedono l'autorizzazione a tutti gli utenti e ai gruppi con qualsiasi autorizzazione con ambito specifico per il gruppo di applicazioni.
HostPoolsForNewPackage ID risorsa dei pool di host a cui associare un nuovo oggetto attach dell'app. Il valore predefinito non è alcun pool di host. I pool di host devono trovarsi nella stessa posizione dei pacchetti di collegamento dell'app a cui sono associati.
TargetResourceGroupName Gruppo di risorse per archiviare il nuovo oggetto attach dell'app. L'impostazione predefinita è il gruppo di risorse del pool di host a cui è associato il pacchetto MSIX.
Location Area di Azure in cui creare un nuovo oggetto collegamento app. L'impostazione predefinita è la posizione del pool di host a cui è associato il pacchetto MSIX. I pacchetti di collegamento dell'app devono trovarsi nella stessa posizione del pool di host a cui sono associati.
DeleteOrigin Eliminare il pacchetto MSIX di origine dopo la migrazione.
IsActive Abilita il nuovo oggetto attach dell'app.
DeactivateOrigin Disabilita l'oggetto pacchetto MSIX di origine dopo la migrazione.
PassThru Passa il nuovo oggetto attach dell'app. Passthru restituisce l'oggetto per il pacchetto creato. Usare questo valore se si vuole esaminarlo o passarlo a un altro comando di PowerShell.
LogInJSON Scrivere nel file di log in formato JSON.
LogFilePath Percorso del file di log, per impostazione predefinita MsixMigration[Timestamp].log in una cartella temporanea, ad esempio C:\Users\%USERNAME%\AppData\Local\Temp\MsixMigration<DATETIME>.log. Il percorso per la registrazione viene scritto nella console quando viene eseguito lo script.

Scaricare ed eseguire lo script di migrazione

Ecco come eseguire la migrazione di pacchetti MSIX da MSIX App Attach a App Attach.

Importante

Negli esempi seguenti è necessario modificare i <placeholder> valori personalizzati.

  1. Aprire un prompt di PowerShell nel dispositivo locale.

  2. Scaricare lo script Migrate-MsixPackagesToAppAttach.ps1 di PowerShell e sbloccarlo eseguendo i comandi seguenti:

    $url = "https://raw.githubusercontent.com/Azure/RDS-Templates/master/msix-app-attach/MigrationScript/Migrate-MsixPackagesToAppAttach.ps1"
    $filename = $url.Split('/')[-1]
    
    Invoke-WebRequest -Uri $url -OutFile $filename | Unblock-File
    
  3. Importare i moduli necessari eseguendo i comandi seguenti:

    Import-Module Az.DesktopVirtualization
    Import-Module Az.Accounts
    Import-Module Az.Resources
    Import-Module Microsoft.Graph.Authentication
    
  4. Connettersi ad Azure eseguendo il comando seguente e seguendo le istruzioni per accedere all'account Azure:

    Connect-AzAccount
    
  5. Connettersi a Microsoft Graph eseguendo il comando seguente:

    Connect-MgGraph -Scopes "Group.Read.All"
    

Le sottosezioni seguenti contengono alcuni esempi di come usare lo script di migrazione. Fare riferimento alla sezione parametri per tutti i parametri disponibili e una descrizione di ogni parametro.

Suggerimento

Se non si passano parametri allo script di migrazione, il comportamento predefinito è il seguente:

  • Nessuna autorizzazione viene concessa al nuovo pacchetto di collegamento dell'app.
  • Il nuovo pacchetto di collegamento dell'app non è associato ad alcun pool di host ed è inattivo.
  • Il nuovo pacchetto di collegamento dell'app viene creato nello stesso gruppo di risorse e nella stessa posizione del pool di host.
  • Il pacchetto MSIX originale è ancora attivo non è disabilitato o eliminato.
  • Le informazioni di log sono scritte nel percorso del file predefinito.

Eseguire la migrazione di un pacchetto MSIX specifico aggiunto a un pool di host e a un gruppo di applicazioni

Ecco un esempio per eseguire la migrazione di un pacchetto MSIX specifico aggiunto a un pool di host da MSIX App Attach a App Attach. Questo esempio:

  • Esegue la migrazione del pacchetto MSIX allo stesso gruppo di risorse e alla stessa posizione del pool di host.
  • Assegna il pacchetto MSIX nel collegamento dell'app allo stesso pool di host e agli stessi utenti dell'origine del gruppo di applicazioni RemoteApp.
  • Lascia attiva la configurazione del pacchetto MSIX esistente nel collegamento dell'app MSIX nel pool di host. Se si vuole disabilitare immediatamente il pacchetto MSIX, usare il -DeactivateOrigin parametro .
  • Imposta la nuova configurazione del pacchetto MSIX inattiva nel collegamento dell'app. Se si vuole abilitare immediatamente il pacchetto MSIX, usare il -IsActive parametro .
  • Scrive le informazioni di log nel percorso e nel formato di file predefiniti.
  1. Dallo stesso prompt di PowerShell ottenere un elenco di pacchetti MSIX aggiunti a un pool di host eseguendo i comandi seguenti:

    $parameters = @{
        HostPoolName = '<HostPoolName>'
        ResourceGroupName = '<ResourceGroupName>'
    }
    
    Get-AzWvdMsixPackage @parameters | Select-Object DisplayName, Name
    

    L'output è simile all'esempio seguente:

    DisplayName Name
    ----------- ----
    MyApp       hp01/MyApp_1.0.0.0_neutral__abcdef123ghij
    
  2. Trovare il pacchetto MSIX di cui si vuole eseguire la migrazione e usare il valore del Name parametro nell'output precedente:

    $parameters = @{
        HostPoolName = '<HostPoolName>'
        ResourceGroupName = '<ResourceGroupName>'
    }
    
    $msixPackage = Get-AzWvdMsixPackage @parameters | ? Name -Match '<MSIXPackageName>'
    $hostPoolId = (Get-AzWvdHostPool @parameters).Id
    
  3. Eseguire la migrazione del pacchetto MSIX eseguendo i comandi seguenti:

    $parameters = @{
        PermissionSource = 'RAG'
        HostPoolsForNewPackage = $hostPoolId
        PassThru = $true
    }
    
    $msixPackage | .\Migrate-MsixPackagesToAppAttach.ps1 @parameters
    

Eseguire la migrazione di tutti i pacchetti MSIX aggiunti a un pool di host

Ecco un esempio per eseguire la migrazione di tutti i pacchetti MSIX aggiunti a un pool di host dal collegamento dell'app MSIX al collegamento dell'app. Questo esempio:

  • Esegue la migrazione dei pacchetti MSIX allo stesso gruppo di risorse e allo stesso percorso.
  • Aggiunge i nuovi pacchetti di collegamento dell'app allo stesso pool di host.
  • Imposta tutti i pacchetti di associazione dell'app su attivo.
  • Imposta tutti i pacchetti MSIX su inattivi.
  • Copia le autorizzazioni dal gruppo di applicazioni desktop associato.
  • Scrive le informazioni di log in un percorso C:\MsixToAppAttach.log di file personalizzato in formato JSON.
  1. Dallo stesso prompt di PowerShell ottenere tutti i pacchetti MSIX aggiunti a un pool di host e archiviarli in una variabile eseguendo i comandi seguenti:

    $parameters = @{
        HostPoolName = '<HostPoolName>'
        ResourceGroupName = '<ResourceGroupName>'
    }
    
    $msixPackages = Get-AzWvdMsixPackage @parameters
    $hostPoolId = (Get-AzWvdHostPool @parameters).Id   
    
  2. Eseguire la migrazione del pacchetto MSIX eseguendo i comandi seguenti:

    $logFilePath = "C:\Temp\MsixToAppAttach.log"
    
    $parameters = @{
        IsActive = $true
        DeactivateOrigin = $true
        PermissionSource = 'DAG'
        HostPoolsForNewPackage = $hostPoolId
        PassThru = $true
        LogInJSON = $true
        LogFilePath = $LogFilePath
    }
    
    $msixPackages | .\Migrate-MsixPackagesToAppAttach.ps1 @parameters