I’ve seen a lot of discussions online regarding the topic of launching two or more of the same Citrix resource (app, pooled VDI, HSD, etc.) on different machines using a single user account with no definitive answer. Today I was requested to implement this feature for a 1903 CR environment and it had taken a little bit of trial and error to get this to work.
Previously in XenApp 6.5, enabling such functionality was relatively straightforward. This feature was later removed in XenApp/XenDesktop 7.0 and was reintroduced later in a re-designed manner as an experimental setting that must be executed from PowerShell and then made production supported in 7.6 and beyond.
Confusing to the uninitiated, we may think that simply disabling workspace control in StoreFront would allow multiple instances of a resource to be launched by the same user account on different computers. However, although this prevents a session from roaming when logging in, the moment the second user launches the app that already is in use, it roams the session from the other user’s computer. There is a second reconnection parameter that was introduced in FMA to accomplish this goal as a broker policy rule.
I had found some old Citrix documentation from 7.6 that provided the string below as a reference. The SameEndpoint option within the SessionReconnection setting will allow multiple concurrent sessions with the same user account. By default, this is set to Always.
Set-BrokerEntitlementPolicyRule <Delivery Group Name> -SessionReconnection SameEndpointOnly
However, when running this command using the Delivery Group name I received the following error.
It turns out, newer versions of Citrix Virtual Desktops does not allow you to scope this option to Delivery Groups. I’m not sure exactly which version this change had taken place but this was tested in 7.15LTSR, 1903 and 1906.
In order to apply this setting, you will need to set the scope to the published desktop name. The easiest way to retrieve the names is to run the command:
Using the name of the published desktop you can now enable the SameEndPointOnly setting.
Set-BrokerEntitlementPolicyRule <Desktop Name> -SessionReconnection SameEndpointOnly
Once completed, you can now launch multiple sessions of an instance using the same user account.