A wrap-up of the new Azure RemoteApp features

Last couple of months Microsoft released some new features for the Azure RemoteApp service. This blog will go over these features and compare it with the “first” version of the RemoteApp service. Of course there is no such thing like version releases in a cloud world but in my opinion Microsoft have now added the functionalities which I would have expected in an earlier stage. A great example is the VNET integration option without the need of a VPN. The last updates in this case will not just bring extra functionalities but will also make your life a lot easier when configuring and maintaining RemoteApp collections.

Now let’s go over the new features which have been added:

VNET Integration
This was on the top of my list since they ever first released RemoteApp. As you might have read in one my earlier blogs, a VPN connection was one of the requirements to setup a Hybrid Collection for RemoteApp. This normally would bring the extra requirement to setup a dynamic gateway since you do not want to lose the flexibility to setup multiple VPN connections with other networks. Apart from the extra costs, this setup was just a lot of configuration work for just realizing connectivity.

RemoteApp now integrates with your existing Virtual Network. During the configuration you are being offered the option to link an existing Virtual Network:


And this option enables you to select one of your Virtual Networks in the subscription and fill in the Subnet details:


And that is it! Your RemoteApp instances are now provisioned in your existing Virtual Network.

Prepared RDSH Image
Another, time saving, new feature is the available Prepared RDSH image in Virtual Machine Library. For creating an RDSH image for RemoteApp, you normally had to go through several steps to prepare your default Windows Server 2012 R2 installation. Now you simply select the RDSH image:


Now you only have to take care of the installation of the software and running Sysprep on the machine using the PowerShell script on the desktop:


Now wait until the machine is in stopped state and create an image within Azure using the Capture option:


When the capture is completed, your image will be available in the Virtual Machine Library and you are ready to go!

Images from your existing VM Library
Now that we have created an image and stored it in the Virtual Machine Library, we are now able to select it using RemoteApp wizard:


Again, this saves us a lot of time instead of uploading or transferring the prepared image to the RemoteApp storage. So this is a really great new feature.

Not every single option is configurable in the Azure portal which is why we should take a look at the PowerShell cmdlets available for RemoteApp. I will address the most important cmdlets here:

Create a new RemoteApp Collection
New-AzureRemoteAppCollection -Collectionname testcollection -ImageName “Office 365 ProPlus (Subscription required)” -Plan Basic -Location “West US” -Description “Office 365 Collection.”

Add an User to a RemoteApp Collection
Add-AzureRemoteAppUser -Collectionname RAppO365Col1 -Type MicrosoftAccount -UserUpn someone@domain.com

Track the operational status of the RemoteApp instance
Get-AzureRemoteAppOperationResult -TrackingId xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Redirect your local drives to the RemoteApp instance
Set-AzureRemoteAppCollection -CollectionName <collection name> -CustomRdpProperty “drivestoredirect:s:*”

Especially this last cmdlet is an option which is not visible in the Azure portal and it is disabled by default. You can find more PowerShell cmdlets on the MSDN website.

Conditional access & MFA

RemoteApp relies on Azure AD as the Identity Provider. This means we are able to make use of the extra functionalities which Azure AD has to offer. Important features in this case are the Conditional access capabilities and the Multi-Factor Authentication option.
You can simply enable this on your Azure AD Premium tenant for your RemoteApp users and these policies will be applied.

A bunch of updates which is a huge improvement for the Azure RemoteApp service. Stay tuned for more blogs!