Microsoft niespodziewanie wydał nową wersję Teams, opracowaną w nowej architekturze jako pakiet appx. W początkowej wersji planowano, że klasyczna aplikacja Teams zostanie wyłączona pod koniec czerwca. Na szczęście, Microsoft zmienił zdanie i wydłużył ten termin do końca października.
Organizacje wykorzystujące VMware Horizon do udostępniania aplikacji z serwerów RDSH napotkały wyzwanie związane z udostępnianiem nowej wersji Teams poprzez Horizon. Sam również starałem się znaleźć rozwiązanie tego problemu, poświęcając wiele czasu na jego analizę.
Pierwszym krokiem było zidentyfikowanie ścieżki uruchamiania nowej wersji Teams, ponieważ Horizon nie wykrywał jej na liście zainstalowanych aplikacji. Uznałem, że podanie bezpośredniej ścieżki może pozwolić na uruchomienie aplikacji i logowanie. W związku z tym utworzyłem ręcznie nową aplikację w panelu administracyjnym, zgodnie poniższymi zrzutem:
Następnie przeszedłem do uruchomienia aplikacji z poziomu Vmware Horizon:
Niestety, nie można było zalogować się do nowej wersji Teams. Przeanalizowałem potencjalne przyczyny tego problemu i okazało się, że w trybie aplikacji brakuje dostępu do biblioteki Microsoft.AAD.BrokerPlugin. Ta biblioteka jest kluczowa, ponieważ umożliwia aplikacjom korzystanie z usługi AAD do uwierzytelniania i logowania użytkowników. BrokerPlugin pełni rolę pośrednika, integrując funkcje AAD z aplikacjami. Mimo że identyfikacja tego problemu była krokiem naprzód, nie rozwiązała całkowicie problemu z logowaniem.
Dalsza analiza wykazała, że VMware Horizon korzysta ze specjalnego autorskiego shella w Windows Server, który ogranicza dostęp do niektórych funkcji systemowych. Ma to na celu minimalizowanie obciążenia maszyny przez wyświetlanie niepotrzebnych okien i ładowanie zbędnych bibliotek.
Shell Launcher to funkcja w Windows, która pozwala na uruchamianie niestandardowej aplikacji zamiast domyślnego interfejsu użytkownika (explorer.exe) po zalogowaniu. Dzięki Shell Launcher, administratorzy IT mogą skonfigurować system tak, aby po zalogowaniu uruchamiał wybraną aplikację, omijając domyślny pulpit Windows. Funkcja ta jest szczególnie przydatna w urządzeniach o specjalnym przeznaczeniu, takich jak kioski informacyjne, terminale POS czy inne systemy wbudowane, gdzie użytkownik ma dostęp tylko do jednej specyficznej aplikacji. VMware opracował własny Launcher dla opublikowanych aplikacji, nazwany vmware-view-unity-shell.
Zgodnie z opisem w artykule KB https://kb.omnissa.com/s/article/94642 , istnieje możliwość testowego wyłączenia tego shella. Po wyłączeniu okazało się, że logowanie do nowej wersji Teams oraz normalne korzystanie z aplikacji przez Horizon stało się możliwe. Jednakże, to rozwiązanie nie było odpowiednie do wdrożenia produkcyjnego.
Zebrałem wszystkie informacje, analizy oraz wyniki testów i przekazałem je do VMware. Problem został zidentyfikowany i rozwiązany poprzez dodanie pluginu AAD do vmware-view-unity-shell. Miałem swój udział w opracowaniu tej poprawki, która została udostępniona w agencie w wersji 2312.1, którego można pobrać: https://customerconnect.omnissa.com/downloads/details?downloadGroup=HZN-2312.1-ENT&productId=1504&rPId=118195
Dodanie nowych Teams do golden image
Microsoft opublikował dokumentację https://learn.microsoft.com/en-us/microsoftteams/new-teams-vdi-requirements-deploy dotyczącą instalacji nowych teams, wstępne wymagania zdefiniowane zostały w tabeli.
Pierwszym krokiem jest włączenie sideloading w systemie:
Windows Server 2022, ustawienia -> update & security -> for developers -> przełączyć opcje Install apps from any source, including loose files.
Windows Server 2019, ustawienia -> update & security -> for developers -> zaznaczyć opcję Sideload app
Po instalacji należy przywrócić stan domyślny.
Kolejnym elementem jest zainstalowanie pakietu Microsoft.VCLibs.x64.14.00.Desktop.appx, który można pobrać z adresu https://aka.ms/Microsoft.VCLibs.x64.14.00.Desktop.appx , po pobraniu zainstalować poleceniem powershell
Add-AppxPackage -Path ‘C:\temp\Microsoft.VCLibs.x64.14.00.Desktop.appx’
Niezbędnym elementem zgodnie z wymaganiami jest instalacja pakietu MS Edge WebView2, można pobrać z tej strony https://go.microsoft.com/fwlink/p/?LinkId=2124703
Instalacja jest prosta wystarczy uruchomić pobrany plik i zaczekać chwilę.
Po instalacji pakietu WebView2 należy pobrać paczkę nowych Temas, można to zrobić z linka https://go.microsoft.com/fwlink/?linkid=2196106&clcid=0x415&culture=pl-pl&country=pl
Dodanie pakietu appx realizowane jest za pomocą polecenia:
Dism /Online /Add-ProvisionedAppxPackage /PackagePath:<MSIX package path> /SkipLicense
Po poprawnej instalacji nowe Teams są widoczne w menu start
Następnie należy zamknąć obraz i wykonać snapshot zgodnie z procedurą organizacji. Jeśli farma już istnieje w Horizon należy podmienić obraz na nowy, jeśli ma być to nowa farma należy stworzyć ją od początku.
Po podmianie obrazu, w kreatorze dodawania aplikacje będzie już widoczny wpis Microsoft Teams (work or school), należy udostępnić tą aplikację użytkownikom.
Teraz aplikacja uruchamia się poprawnie, optymalizacja Teams również działa, poniżej efekt poprawki dokonanej przez Vmware (skróciłem do minimum ten filmik):
Jeśli masz jakieś pytania lub wątpliwości to odezwij się do mnie na moje social media lub napisz komentarz.