Blogs | InSpark

Azure Virtual Desktop bij de klant: veilig en snel uitgerold

Geschreven door Jelmer Vorstenburg | Jul 17, 2024 12:54:30 PM

Toen we voor het eerst hoorden van Azure Virtual Desktop (AVD) konden we als echte techneuten uiteraard niet wachten om er mee aan de slag te gaan. Wat kan het, hoe kunnen we het inzetten en wat zouden we er mee kunnen bereiken waren de vragen die volgden. Juist op dat moment waren we bezig met een project waarin de moderne werkplek de huidige werkplek moest vervangen. Onder modern verstaan wij “Azure Active Directy joined” en “Intune managed”. Echter werd het al snel duidelijk dat we niet alle applicaties op korte termijn op deze moderne werkplek konden laten landen. Denk aan applicaties die een domein afhankelijkheid hebben of nog niet overweg kunnen met moderne authenticatie. Daarnaast moet de oplossing gebruikt kunnen worden door externe medewerkers. Deze medewerkers worden niet voorzien van de nieuwe werkplek, maar hebben wel een bepaalde mate van toegankelijkheid nodig. Azure Virtual Desktop (AVD) leek de ideale oplossing. In dit blog neem ik je mee!

De uitdaging

Tijdens dit project liepen we tegen een aantal uitdagingen aan wat betreft AVD. En niet alleen omdat de oplossing nog maar net was vrijgegeven door Microsoft (deze was namelijk general available op 30 september 2019). De opdracht was augustus begonnen en dus was de oplossing nog redelijk nieuw voor ons.Vanuit de opdracht moest er met een aantal requirements in ieder geval rekening gehouden worden:

  • De oplossing moest ten eerste beschikbaar zijn voor interne en externe gebruikers (gebruikers zonder een managed werkplek).
  • Daarnaast moest de oplossing beschikken over standaard Windows functionaliteiten.
  • Als laatste moest de oplossing beheersbaar, secure by design en globally availabe zijn.

Na een korte test periode zijn we de uitdaging aangegaan!

Hoe hebben we dat gedaan?

De basis

Nadat we besloten hadden om Azure Virtual Desktop als oplossing te implementeren en de requirements waren opgehaald, konden we starten. Maar waar begin je? Vanuit het project bestond er al een Azure Infrastructure as a Service (IaaS) omgeving waar we AVD vrij makkelijk op konden laten aansluiten, dat was zo geregeld. Daarnaast besloten we een Azure Virtual Machine (VM) op te spinnen, die we konden gebruiken voor het preparen van het image. Dit image zouden we laten gebruiken om de eerste hostpool mee te creëren. Overigens kun je hier meer lezen over hoe je een VM inclusief FSLogix kunt preparen voor gebruik in AVD.

De Azure IaaS omgeving was opgebouwd in de West-Europese regio. Voor het gemak en voor de eerste testen besloten we de eerste hostpool ook in deze regio te plaatsen. Voor de eerste test gebruikers besloten we een volledige desktop beschikbaar te stellen en één remote applicatie. Op dat moment was het niet mogelijk een gebruiker van én een desktop én een applicatie te voorzien binnen dezelfde hostpool, dit zouden we op een later moment oplossen door een tweede hostpool uit te rollen.

Meer, meer, meer!

De basis staat en het testen was afgerond, hoe nu verder? Inmiddels was het duidelijk geworden dat we een uitbreiding moesten doen naar de South East Asia region en dat we naast de desktop ook meerdere remote apps beschikbaar moesten stellen. Inmiddels liepen we ook tegen een aantal performance en stability issues aan, mede door het verkeerd toepassen van Windows Updates en Upgrade(s). Ook hier moesten we een oplossing voor zien te vinden.

Multi Regio

De uitbreiding naar de South East Asia region klinkt misschien als een makkelijke opgave, maar dat was niet helemaal het geval. Denk aan uitbreiding van Azure resource groups, storage accounts en uiteraard network connectivity. Toen deze vereisten waren geconfigureerd, was het optuigen van de nieuwe hostpool in deze regio snel gerealiseerd. Dit zou moeten leiden tot een betere latency vanuit de lokale APAC regio’s wanneer men verbinding maakt met deze hostpool. Helaas, mede vanwege het ontbreken van een directe verbinding tussen AVD en het centrale datacenter, was de latency winst niet zo groot als we hadden gehoopt. Om deze reden is later besloten deze hostpool weer uit te schakelen, maar nog niet te verwijderen. Mogelijk dat er in de toekomst alsnog voor gekozen wordt deze host pool in productie te nemen.

FSLogix Containers

Externe desktop en remote applicatie omgevingen zijn voor veel bedrijven een cruciaal en groeiend onderdeel van hun IT-strategie. FSLogix tooling verbetert de gebruikerservaring en vereenvoudigt het beheer van deze omgevingen.

FSLogix is geschikt voor virtuele omgevingen in zowel publieke (Microsoft Azure) als private clouds. FSLogix wordt ook gebruikt om gebruikers profielen te creëren en te onderhouden wanneer er een verbinding naar een externe computer wordt gemaakt.

De FSLogix oplossing bestaat uit een aantal elementen:

  • Profile Container
  • Office Container
  • Application Masking
  • Java Version Control

Voor deze opdracht volstond het gebruik van profile containers. Tijdens en na de POC hebben we met een enkele file share gewerkt als host voor de FSLogix containers. Om eventueel meer redundancy in te bouwen hebben we hier een DFS share van gemaakt, zodat we altijd gebruik kunnen maken van meerdere netwerk locaties mocht dit nodig zijn. Daarnaast hebben we Azure File Sync ingezet zodat we altijd een recente back-up hebben van de containers in een Azure Storage Account. Deze kunnen terug gesynct worden op elk moment, wanneer dit vereist is.

Windows Upgrades

Voor de eerste AVD hostpool hebben we gebruik gemaakt van Windows 10 1809 (Multi-Session). Om de oplossing stabieler en meer up-to-date te krijgen hebben we geprobeerd gebruik te maken van een inplace upgrade van het Operating System. In eerste instantie leek dit goed te gaan. Gebruikers konden weer netjes aanmelden; zowel via de desktop als via de remote app. Echter zijn we later tegen issues aangelopen, en op een gegeven moment werden er op sommige hosts geen nieuwe sessies meer geaccepteerd. Toen hebben we besloten een nieuw image te maken op basis van Windows 10 1909 en hier de nieuwe hostpools mee te configureren. Het grote voordeel van een custom image is dat je het image volledig kunt aanpassen naar wens. Dit zorgt ervoor dat je direct aan de slag kan met AVD wanneer de host pool gedeployed is. Eventueel kan het image bewaard worden voor een volgende deployment, er hoeft dan niet elke keer een nieuwe image gemaakt te worden.

Cloud Security Center

Om performance, stability en availability te monitoren zijn alle AVD hosts ook opgenomen in het InSpark Could Security Center. In ons managed SOC wordt de hele oplossing 24×7 in detail gemonitord en kan er snel geschakeld worden wanneer er bijvoorbeeld iets mis zou zijn met een host. Op deze manier kan er proactief gereageerd worden op een mogelijke storing. Een storing komt altijd ongelegen maar de herstel werkzaamheden blijven beperkt. Omdat de oplossing in productie is en er ±1000 gebruikers gebruik van maken, is deze monitoring zeker van toegevoegde waarde.

Remote Desktop vs. Remote Application

Tijdens de POC fase werkten de gebruikers vooral met de remote desktop. Echter werd al snel duidelijk dat de remote application een stuk gebruiksvriendelijker, net zo snel, functioneel en veilig was. Later hebben we door de verschillende hostpools heen aparte app groups aangemaakt voor elke remote application. Zo was het makkelijker losse applicaties toe te wijzen aan gebruikers en dit hield het ook beheersbaar. Omdat de meeste clients ook werden uitgerust met de nieuwe “Remote Desktop”, konden de remote applications via het start menu opgestart worden. Hier hebben we vele positieve reacties op gehad vanuit gebruikers perspectief.

Hoe hebben we de veiligheid van AVD ingeregeld?

Multi Factor authentication (MFA), Windows Updates, gescheiden netwerken, aangesloten op het Cloud Security Center en Role Based access control waren de security eisen waaraan we moesten voldoen bij het implementeren van de AVD oplossing. Wanneer je dit snel zegt lijkt het misschien niet veel, toch vergt het wat tijd om bij deze termen de juiste oplossing te vinden en ervoor te zorgen dat de gebruikers hier geen hinder van ondervinden.

Identity

Vanuit de moderne werkplek opdracht werd er organisatie breed gebruik gemaakt van Conditional Access en Azure Identity Protection om zo de identities binnen Azure AD te beschermen. Conditional Access om de gebruikers op een gecontroleerde en veilige manier toegang te verschaffen tot zakelijke data en Azure AD Identity Protection zorgt voor MFA registratie wanneer gebruikers zich voor de eerste keer authentiseren bij Azure Active Directory. Een nieuwe Conditional Access rule i.c.m. Azure AD Identity Protection zorgt voor MFA registratie en authenticatie wanneer gebruikers inloggen op de AVD oplossing, dit geldt voor zowel interne als externe gebruikers.

Windows Operating System

Daarnaast hebben we alle AVD hosts geïntegreerd in het Azure Security Center (ASC). Dit zorgt er natuurlijk al voor dat we een stevige basis hadden wanneer het gaat om de veiligheid van het Windows Operating System en wat betreft de status van eventuele gemiste Windows patches. Als laatste hebben we ervoor gezorgd dat de AVD hosts ook nog zijn ge-onboard in Microsoft Defender ATP (Microsoft’s volledige security oplossing voor endpoints) voor de nodige extra beveiliging van het Windows OS en bescherming van de gebruikers.

Azure IaaS

De security van de identity en het Windows Operating System zijn zo gewaarborgd, wat dan nog rest is de onderliggende infrastructuur van AVD. We hebben te maken met subnets, vnet, meerdere regio’s, toegang tot internet en domain connectiviteit. Dit hebben we opgelost door elke hostpool zijn eigen subnet te geven elk in hun eigen Network Security Group. Door de hostpools achter een Azure Firewall te plaatsen konden we ook zelf bepalen welke mate van connectivity we zouden toelaten (zoals ook te zien is in de architectuur tekening onder het “Apac Regio” kopje). Dit bij elkaar maakte onze oplossing secure genoeg en klaar voor productie.

Conclusie

Het was even inkomen met wat opstartprobleempjes, maar het was absoluut gaaf om aan dit project mee te werken. Al zo snel ±1000 gebruikers actief op Azure Virtual Desktop, wereldwijd en veilig, dat was een leuke uitdaging! Dat kun je wel aan ons overlaten. Heb jij nou vragen over onze stappen of invulling binnen het project? Of ben je benieuwd wat wij voor jouw organisatie kunnen betekenen? Neem dan contact op bovenaan dit blog. Ik ga graag met je in gesprek over de mogelijkheden.