Udostępnij za pośrednictwem


Migrowanie pakietów MSIX z dołączania aplikacji MSIX do dołączania aplikacji

Dołączanie aplikacji usprawnia środowisko administracyjne i użytkownika za pośrednictwem dołączania aplikacji MSIX. Jeśli używasz dołączania aplikacji MSIX, możesz migrować pakiety MSIX do dołączania aplikacji przy użyciu skryptu programu PowerShell.

Skrypt migracji może wykonywać następujące czynności:

  • Tworzy nowy obiekt pakietu dołączania aplikacji i może w razie potrzeby usunąć oryginalny obiekt pakietu MSIX.

  • Kopiowanie uprawnień z grup aplikacji skojarzonych z pulą hostów i pakietem MSIX.

  • Skopiuj lokalizację i grupę zasobów puli hostów i pakietu MSIX.

  • Działanie migracji dzienników.

Wymagania wstępne

Aby użyć skryptu migracji, potrzebne są następujące elementy:

  • Pula hostów skonfigurowana jako środowisko weryfikacji z co najmniej jednym pakietem MSIX dodanym z dołączaniem aplikacji MSIX.

  • Konto platformy Azure z rolą Kontroli dostępu na podstawie ról na platformie Azure (RBAC) współautora wirtualizacji pulpitu przypisanej do puli hostów.

  • Urządzenie lokalne z programem PowerShell. Upewnij się, że masz zainstalowane najnowsze wersje modułu Az programu PowerShell i zestawu Microsoft Graph PowerShell SDK . W szczególności wymagane są następujące moduły:

    • Az.DesktopVirtualization
    • Az.Accounts
    • Az.Resources
    • Microsoft.Graph.Authentication

Parametry

Poniżej przedstawiono parametry, których można użyć ze skryptem migracji:

Parametr Opis
MsixPackage Obiekt pakietu MSIX do migracji do obiektu dołączania aplikacji. Tę wartość można przekazać za pośrednictwem potoku.
PermissionSource Gdzie uzyskać uprawnienia dla nowego obiektu dołączania aplikacji. Domyślnie nie udzielono żadnych uprawnień. Dostępne opcje:
  • DAG: grupa aplikacji klasycznych skojarzona z pulą hostów i pakietem MSIX
  • RAG: co najmniej jedna grupa aplikacji RemoteApp skojarzona z pulą hostów i pakietem MSIX
Obie opcje przyznają uprawnienie wszystkim użytkownikom i grupom z dowolnymi uprawnieniami określonymi w zakresie grupy aplikacji.
HostPoolsForNewPackage Identyfikatory zasobów pul hostów do skojarzenia nowego obiektu dołączania aplikacji z. Domyślnie nie ma pul hostów. Pule hostów muszą znajdować się w tej samej lokalizacji, z którą są skojarzone pakiety dołączania aplikacji.
TargetResourceGroupName Grupa zasobów do przechowywania nowego obiektu dołączania aplikacji. Domyślnie grupa zasobów puli hostów skojarzona z pakietem MSIX.
Location Region platformy Azure umożliwiający utworzenie nowego obiektu dołączania aplikacji. Domyślnie określa lokalizację puli hostów, z którą jest skojarzony pakiet MSIX. Pakiety dołączania aplikacji muszą znajdować się w tej samej lokalizacji co skojarzona z nią pula hostów.
DeleteOrigin Usuń źródłowy pakiet MSIX po migracji.
IsActive Włącza nowy obiekt dołączania aplikacji.
DeactivateOrigin Wyłącza źródłowy obiekt pakietu MSIX po migracji.
PassThru Przekazuje nowy obiekt dołączania aplikacji za pośrednictwem. Passthru Zwraca obiekt dla utworzonego pakietu. Użyj tej wartości, jeśli chcesz ją sprawdzić lub przekazać do innego polecenia programu PowerShell.
LogInJSON Zapisz w pliku dziennika w formacie JSON.
LogFilePath Ścieżka pliku dziennika domyślnie ma wartość MsixMigration[Timestamp].log domyślną w folderze tymczasowym, takim jak C:\Users\%USERNAME%\AppData\Local\Temp\MsixMigration<DATETIME>.log. Ścieżka rejestrowania jest zapisywana w konsoli po uruchomieniu skryptu.

Pobieranie i uruchamianie skryptu migracji

Poniżej przedstawiono sposób migrowania pakietów MSIX z dołączania aplikacji MSIX do dołączania aplikacji.

Ważne

W poniższych przykładach należy zmienić <placeholder> własne wartości.

  1. Otwórz monit programu PowerShell na urządzeniu lokalnym.

  2. Pobierz skrypt Migrate-MsixPackagesToAppAttach.ps1 programu PowerShell i odblokuj go, uruchamiając następujące polecenia:

    $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. Zaimportuj wymagane moduły, uruchamiając następujące polecenia:

    Import-Module Az.DesktopVirtualization
    Import-Module Az.Accounts
    Import-Module Az.Resources
    Import-Module Microsoft.Graph.Authentication
    
  4. Połącz się z platformą Azure, uruchamiając następujące polecenie i postępując zgodnie z monitami, aby zalogować się do konta platformy Azure:

    Connect-AzAccount
    
  5. Połącz się z programem Microsoft Graph, uruchamiając następujące polecenie:

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

Poniższe podsekcje zawierają kilka przykładów użycia skryptu migracji. Zapoznaj się z sekcją parametrów , aby zapoznać się ze wszystkimi dostępnymi parametrami i opisem każdego parametru.

Napiwek

Jeśli nie przekażesz żadnych parametrów do skryptu migracji, ma ono następujące domyślne zachowanie:

  • Do nowego pakietu dołączania aplikacji nie są przyznawane żadne uprawnienia.
  • Nowy pakiet dołączania aplikacji nie jest skojarzony z żadnymi pulami hostów i jest nieaktywny.
  • Nowy pakiet dołączania aplikacji jest tworzony w tej samej grupie zasobów i lokalizacji co pula hostów.
  • Oryginalny pakiet MSIX jest nadal aktywny, nie jest wyłączany ani usuwany.
  • Informacje dziennika są zapisywane w domyślnej ścieżce pliku.

Migrowanie określonego pakietu MSIX dodanego do puli hostów i grupy aplikacji

Oto przykład migracji określonego pakietu MSIX dodanego do puli hostów z dołączania aplikacji MSIX do dołączania aplikacji. Ten przykład:

  • Migruje pakiet MSIX do tej samej grupy zasobów i lokalizacji co pula hostów.
  • Przypisuje pakiet MSIX w aplikacji do tej samej puli hostów i tych samych użytkowników co źródło grupy aplikacji RemoteApp.
  • Pozostawia istniejącą konfigurację pakietu MSIX w dołączeniu aplikacji MSIX aktywne w puli hostów. Jeśli chcesz natychmiast wyłączyć pakiet MSIX, użyj parametru -DeactivateOrigin .
  • Ustawia nową konfigurację pakietu MSIX w dołączaniu nieaktywnej aplikacji. Jeśli chcesz natychmiast włączyć pakiet MSIX, użyj parametru -IsActive .
  • Zapisuje informacje dziennika w domyślnej ścieżce i formacie pliku.
  1. W tym samym wierszu polecenia programu PowerShell pobierz listę pakietów MSIX dodanych do puli hostów, uruchamiając następujące polecenia:

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

    Dane wyjściowe są podobne do poniższego przykładu:

    DisplayName Name
    ----------- ----
    MyApp       hp01/MyApp_1.0.0.0_neutral__abcdef123ghij
    
  2. Znajdź pakiet MSIX, który chcesz zmigrować, i użyj wartości z parametru Name w poprzednich danych wyjściowych:

    $parameters = @{
        HostPoolName = '<HostPoolName>'
        ResourceGroupName = '<ResourceGroupName>'
    }
    
    $msixPackage = Get-AzWvdMsixPackage @parameters | ? Name -Match '<MSIXPackageName>'
    $hostPoolId = (Get-AzWvdHostPool @parameters).Id
    
  3. Przeprowadź migrację pakietu MSIX, uruchamiając następujące polecenia:

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

Migrowanie wszystkich pakietów MSIX dodanych do puli hostów

Oto przykład migracji wszystkich pakietów MSIX dodanych do puli hostów z dołączania aplikacji MSIX do dołączania aplikacji. Ten przykład:

  • Migruje pakiety MSIX do tej samej grupy zasobów i lokalizacji.
  • Dodaje nowe pakiety dołączania aplikacji do tej samej puli hostów.
  • Ustawia wszystkie pakiety dołączania aplikacji do aktywnej.
  • Ustawia wszystkie pakiety MSIX na nieaktywne.
  • Kopiuje uprawnienia ze skojarzonej grupy aplikacji klasycznych.
  • Zapisuje informacje dziennika w niestandardowej ścieżce pliku w C:\MsixToAppAttach.log formacie JSON.
  1. W tym samym wierszu polecenia programu PowerShell pobierz wszystkie pakiety MSIX dodane do puli hostów i zapisz je w zmiennej, uruchamiając następujące polecenia:

    $parameters = @{
        HostPoolName = '<HostPoolName>'
        ResourceGroupName = '<ResourceGroupName>'
    }
    
    $msixPackages = Get-AzWvdMsixPackage @parameters
    $hostPoolId = (Get-AzWvdHostPool @parameters).Id   
    
  2. Przeprowadź migrację pakietu MSIX, uruchamiając następujące polecenia:

    $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