In this blog article I will describe how you can automate assigning VMware AppVolumes to AD user groups by using PowerShell via Ivanti Automation. To accomplish this task I am using the API of App Volumes.
The Powershell function I am using I found online, and is created by by my former colleague Thomas Brown. I slightly altered the script to meet my needs to accomplish the task at hand.
VMware AppVolumes has proven to be a very powerful product to deliver application to both VMware Horizon as well as Citrix Virtual Apps & Desktops.
The relative parts of my setup are:
- VMware AppVolumes 2.18.014U
- Ivanti Automation 2020.1
If you like to know more about creating an AppStacks please read: More on AppStacks
PowerShell
Lets take a look at the PowerShell code we are using:
In the code snippet above we load the function from the PowerShell module created by Thomas and some extra code to handle the certificates that I use in my lab environment.
In the code snippet above we define the credentials and server information to connect to the AppVolume Manager. Because we are using Ivanti Automation Module I’ve replaced this info by Variables.
Next up de construct the logon body and string and we logon to the AppVolume Manager. To assign the AD Group to the AppStack we need to have the distinguished name.
The last step is to actually assign the AD group to the AppStack.
Ivanti Automation
Ivanti Automation is used in this use case to execute the Powershell script. Because Automation can fill the PowerShell parameters it is easy to make a Module/Runbook reusable. In this example I already know the AppStack ID. In a larger environment you can first run a script that collects all the AppStack Id’s.
When we schedule this Runbook we have to define the group name, and the AppStack ID.
VMware AppVolumes
VMware App Volumes is a real-time application delivery system that enterprises can use to dynamically deliver and manage applications. Applications are packaged and delivered by attaching a standard VMDK or VHD file to a virtual machine. You can centrally manage the applications with the App Volumes Manager, a Web-based interface that is integrated with Active Directory (AD) and vSphere. Administrators can assign, update, or remove applications to be delivered at the next user login without the need to modify the desktops or disrupt users while they are working. For more info on AppVolumes please check App Volumes Product Page
In the last part of this blog we are going to look at the AppVolumes manager to assign the desired AD group.
In the above screenshot you can see that this AppStack does not have any assignments, and has one application installed (Mozilla Thiunderbird). We are going to assign an AD Group to this AppStack.
I provide Ivanti Automation with the correct info.
As you can see the AD group AppVol_Mozilla is now assigned to the AppStack.