MSIX paketlerini MSIX uygulama eklemeden uygulama eklemeye geçirme
Uygulama ekleme, MSIX uygulama eklemesi üzerinden yönetim ve kullanıcı deneyimlerini geliştirir. MSIX uygulama ekleme özelliğini kullanıyorsanız, BIR PowerShell betiği kullanarak MSIX paketlerinizi uygulama eklemeye geçirebilirsiniz.
Geçiş betiği aşağıdaki eylemleri gerçekleştirebilir:
Yeni bir uygulama ekleme paketi nesnesi oluşturur ve gerekirse özgün MSIX paket nesnesini silebilir.
Konak havuzu ve MSIX paketiyle ilişkili uygulama gruplarından izinleri kopyalayın.
Konak havuzunun ve MSIX paketinin konumunu ve kaynak grubunu kopyalayın.
Günlük geçişi etkinliği.
Önkoşullar
Geçiş betiğini kullanmak için şunları yapmanız gerekir:
BIR doğrulama ortamı olarak yapılandırılan ve MSIX uygulaması ekli en az bir MSIX paketi eklenmiş bir konak havuzu.
Konak havuzunda Masaüstü Sanallaştırma Katkıda Bulunanı Azure rol tabanlı erişim denetimi (RBAC) rolü atanmış bir Azure hesabı.
PowerShell ile yerel bir cihaz. Az PowerShell ve Microsoft Graph PowerShell SDK'sının en son sürümlerinin yüklü olduğundan emin olun. Özellikle, aşağıdaki modüller gereklidir:
- Az.DesktopVirtualization
- Az.Accounts
- Az.Resources
- Microsoft.Graph.Authentication
Parametreler
Geçiş betiğiyle kullanabileceğiniz parametreler şunlardır:
Parametre | Açıklama |
---|---|
MsixPackage |
Uygulama ekleme nesnesine geçirilen MSIX paket nesnesi. Bu değer işlem hattı aracılığıyla geçirilebilir. |
PermissionSource |
Yeni uygulama ekleme nesnesi için izinlerin alınacağı yer. Varsayılan olarak hiçbir izin verilmez. Seçenekler şunlardır:
|
HostPoolsForNewPackage |
Yeni uygulama ekleme nesnesini ilişkilendirmek için konak havuzlarının kaynak kimlikleri. Varsayılan olarak konak havuzu yoktur. Konak havuzları, ilişkilendirildikleri uygulama ekleme paketleriyle aynı konumda olmalıdır. |
TargetResourceGroupName |
Yeni uygulama ekleme nesnesini depolamak için kaynak grubu. Varsayılan olarak MSIX paketinin ilişkili olduğu konak havuzu kaynak grubuna ayarlanır. |
Location |
Içinde yeni uygulama ekleme nesnesi oluşturulacak Azure bölgesi. Varsayılan olarak, MSIX paketinin ilişkili olduğu konak havuzunun konumudur. Uygulama ekleme paketlerinin ilişkilendirildikleri konak havuzuyla aynı konumda olması gerekir. |
DeleteOrigin |
Geçiş sonrasında kaynak MSIX paketini silin. |
IsActive |
Yeni uygulama ekleme nesnesini etkinleştirir. |
DeactivateOrigin |
Geçiş sonrasında kaynak MSIX paket nesnesini devre dışı bırakır. |
PassThru |
Yeni uygulama ekleme nesnesini geçirir.
Passthru oluşturulan paketin nesnesini döndürür. Bu değeri incelemek veya başka bir PowerShell komutuna geçirmek istiyorsanız kullanın. |
LogInJSON |
Günlük dosyasına JSON Biçiminde yazın. |
LogFilePath |
Günlük dosyasının yolu, gibi bir geçici klasörde varsayılan MsixMigration[Timestamp].log olarak C:\Users\%USERNAME%\AppData\Local\Temp\MsixMigration<DATETIME>.log kullanılır. Betik çalıştırıldığında günlüğe kaydetme yolu konsola yazılır. |
Geçiş betiğini indirme ve çalıştırma
MSIX paketlerini MSIX uygulama eklemeden uygulama eklemeye geçirme burada açık açıktır.
Önemli
Aşağıdaki örneklerde kendi değerlerinizi değiştirmeniz <placeholder>
gerekir.
Yerel cihazınızda bir PowerShell istemi açın.
Aşağıdaki komutları çalıştırarak PowerShell betiğini
Migrate-MsixPackagesToAppAttach.ps1
indirin ve engelini kaldırın:$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
Aşağıdaki komutları çalıştırarak gerekli modülleri içeri aktarın:
Import-Module Az.DesktopVirtualization Import-Module Az.Accounts Import-Module Az.Resources Import-Module Microsoft.Graph.Authentication
Aşağıdaki komutu çalıştırıp Azure hesabınızda oturum açma istemlerini izleyerek Azure'a bağlanın:
Connect-AzAccount
Aşağıdaki komutu çalıştırarak Microsoft Graph'a bağlanın:
Connect-MgGraph -Scopes "Group.Read.All"
Aşağıdaki alt bölümler, geçiş betiğinin nasıl kullanılacağına ilişkin bazı örnekler içerir. Tüm kullanılabilir parametreler için parametreler bölümüne ve her parametrenin açıklamasına bakın.
İpucu
Geçiş betiğine herhangi bir parametre geçirmezseniz, aşağıdaki varsayılan davranışa sahiptir:
- Yeni uygulama ekleme paketine izin verilmez.
- Yeni uygulama ekleme paketi herhangi bir konak havuzuyla ilişkili değildir ve etkin değildir.
- Yeni uygulama ekleme paketi, konak havuzuyla aynı kaynak grubunda ve konumda oluşturulur.
- Özgün MSIX paketi hala etkin, devre dışı bırakılmaz veya silinmez.
- Günlük bilgileri varsayılan dosya yoluna yazılır.
Konak havuzuna ve uygulama grubuna eklenen belirli bir MSIX paketini geçirme
Aşağıda, MSIX uygulamasından uygulama eklemeye konak havuzuna eklenen belirli bir MSIX paketini geçirme örneği verilmiştir. Bu örnek:
- MSIX paketini konak havuzuyla aynı kaynak grubuna ve konuma geçirir.
- Uygulamadaki MSIX paketini remoteapp uygulama grubu kaynağıyla aynı konak havuzuna ve aynı kullanıcılara atar.
- MSIX uygulamasındaki mevcut MSIX paket yapılandırmasını konak havuzunda etkin bırakır. MSIX paketini hemen devre dışı bırakmak istiyorsanız parametresini
-DeactivateOrigin
kullanın. - Uygulama ekleme etkin olmayan yeni MSIX paket yapılandırmasını ayarlar. MSIX paketini hemen etkinleştirmek istiyorsanız parametresini
-IsActive
kullanın. - Günlük bilgilerini varsayılan dosya yoluna ve biçimine yazar.
Aynı PowerShell isteminden aşağıdaki komutları çalıştırarak konak havuzuna eklenen MSIX paketlerinin listesini alın:
$parameters = @{ HostPoolName = '<HostPoolName>' ResourceGroupName = '<ResourceGroupName>' } Get-AzWvdMsixPackage @parameters | Select-Object DisplayName, Name
Çıktı aşağıdaki örneğe benzer:
DisplayName Name ----------- ---- MyApp hp01/MyApp_1.0.0.0_neutral__abcdef123ghij
Geçirmek istediğiniz MSIX paketini bulun ve önceki çıktıdaki
Name
parametresindeki değeri kullanın:$parameters = @{ HostPoolName = '<HostPoolName>' ResourceGroupName = '<ResourceGroupName>' } $msixPackage = Get-AzWvdMsixPackage @parameters | ? Name -Match '<MSIXPackageName>' $hostPoolId = (Get-AzWvdHostPool @parameters).Id
Aşağıdaki komutları çalıştırarak MSIX paketini geçirin:
$parameters = @{ PermissionSource = 'RAG' HostPoolsForNewPackage = $hostPoolId PassThru = $true } $msixPackage | .\Migrate-MsixPackagesToAppAttach.ps1 @parameters
Konak havuzuna eklenen tüm MSIX paketlerini geçirme
Bir konak havuzuna eklenen tüm MSIX paketlerini MSIX uygulamasından uygulama eklemeye geçirmeye yönelik bir örnek aşağıda verilmiştir. Bu örnek:
- MSIX paketlerini aynı kaynak grubuna ve konuma geçirir.
- Yeni uygulama ekleme paketlerini aynı konak havuzuna ekler.
- Tüm uygulama ekleme paketlerini etkin olarak ayarlar.
- Tüm MSIX paketlerini devre dışı olarak ayarlar.
- İlişkili masaüstü uygulama grubundan izinleri kopyalar.
- Günlük bilgilerini JSON biçiminde bir özel dosya yoluna
C:\MsixToAppAttach.log
yazar.
Aynı PowerShell isteminden, bir konak havuzuna eklenen tüm MSIX paketlerini alın ve aşağıdaki komutları çalıştırarak bunları bir değişkende depolayın:
$parameters = @{ HostPoolName = '<HostPoolName>' ResourceGroupName = '<ResourceGroupName>' } $msixPackages = Get-AzWvdMsixPackage @parameters $hostPoolId = (Get-AzWvdHostPool @parameters).Id
Aşağıdaki komutları çalıştırarak MSIX paketini geçirin:
$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