We have 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 we were 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.
We 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. We are 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:
Get-BrokerEntitlementPolicyRule
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.
-
Reubin Huckle
Reubin is a seasoned consultant specializing in Microsoft, VMware, Public Cloud, and Citrix infrastructure platforms, with a focus on digital workspace technologies and interests in scripting and web coding.
Dear Reubin; I have implemented this, but now the problem is with the first/original session. when a session is launched from another client, 1st session should get log off automatically. looking forward for the response.
Hi Bilal, I believe you are confused. The expected outcome of this “how to” is that two users using two different endpoints using the same account (eg. a service account) can launch a desktop without having the session stolen from the first user who launches.
If you are looking for the session to roam with a single user on different client endpoints, That is just normal default Citrix behaviour. I sugest reading this article for further context.
https://docs.citrix.com/en-us/citrix-virtual-apps-desktops/manage-deployment/sessions.html#session-roaming