How to Enable USB Redirection in XenDesktop 3.0

16 03 2009

Upon recently executing a POC for XenDesktop 3.0 which involved a USB-based 3DConnexion Spaceball device and a CAD application I realized how configuring this functionality isn’t quite a straightforward process.  While enhanced support for USB devices in included with the 3.0 version of XenDesktop, information needed to complete the configuration is dispersed across many different locations. 

At a base level a Citrix policy must be configured and applied to the XenDesktop environment but there are some additional steps that may be required, depending on the device, which are more manual in nature.  Listed below is a step-by-step guide for enabling USB redirection as well as a list of resources referenced to pull this information together.

As mentioned above, a policy must be configured at a minimum to enable USB redirection.  This should allow for functionality of more common devices such as mass storage devices and printers.

1.       Create a policy within the Presentation Server Console and enable the following setting:

Client Devices\Resources\USB\USB – select Allow mapping of Client USB devices

The Presentation Server console, while counter intuitive in name for a XenDesktop environment, is typically located on the Desktop Delivery Controller.  Also, be sure that the policy is applied to the environment via one of the available filters by right-clicking on the policy in the console.

2.       Upon logging into the desktop session be sure to click the USB button on the desktop toolbar and select the device which is to be redirected into the session.  This can be automated to a certain degree, so as to not require enablement during each session launch, by clicking USB Preferences and selecting to either Connect all USB devices at startup or as they are inserted.

XenDesktop Preferences

 

If after enabling and applying a policy the device does still not function from within a desktop session then follow the steps below to either allow a blacklisted device or add a non-natively supported peripheral.  CTX119861, link included below, outlines the current list of tested devices.

1.       First it is necessary to determine the class code for the USB device in question.  This is covered in greater detail by CTX119722 as well as starting on page 25 of the Citrix Desktop Receiver Admin Guide.

2.       From within the workstation instance hosting the Desktop Agent add the following registry key if it does not exist (If using Provisioning Server be sure that the machine is booted in Private mode).  You can export the key listed in step 4 to create this key:

HKLM\SOFTWARE\Policies\Citrix\PortICA\GenericUSB

3.       Add the following value:

Type=String Name=“DeviceRules”

4.       Copy the contents of HKLM\SOFTWARE\Citrix\PortICA\GenericUSB\DeviceRules and add the value data to the DeviceRules value you created or browsed to in the previous step.

5.       Add the value data identified using the information in Step 1 for the device being enabled.  If the device is blacklisted by default then it may only be necessary to change the corresponding setting from DENY to ALLOW.

6.       From the machine hosting the Desktop Receiver or ICA client add the following registry key if it does not exist.  You can export the key accessed in step 8 to create this key:

HKLM\SOFTWARE\Policies\Citrix\PortICA\GenericUSB

7.       Add the following value:

Type=String Name=“DeviceRules”

8.       Copy the contents of HKLM\SOFTWARE\Citrix\PortICA\GenericUSB\DeviceRules and add the value data to the DeviceRules value you created or browsed to in the previous step.

9.       Add the value data identified using the information in Step 1 for the device being enabled.  If the device is blacklisted by default then it may only be necessary to change the corresponding setting from DENY to ALLOW.

10.   To facilitate this functionality for many end user devices without modifying the registry on each individual machine an ADM template is available from the following directory on the XenDesktop installation media:

dvd root\os\lang\Support\Configuration\icaclient_usb.adm

11.   Login and access the hosted desktop to test functionality.

http://support.citrix.com/article/CTX119722 – Creating USB Policy Rules

http://support.citrix.com/article/CTX119861 – XenDesktop 3.x USB Citrix Tested Device List

http://support.citrix.com/article/CTX118856 – Citrix XenDesktop 3.0 Administrators Guide

http://support.citrix.com/article/CTX118895 – Citrix Desktop Receiver 11.1 Administrators Guide

Advertisements

Actions

Information

4 responses

1 12 2009
Daniel

Hi, Thanks for this article! It’s very useful.
Which Desktop Client/Connector do you have installed on your System?

I have access to my Desktops, but i miss the toolbar with the usb symbol to control the Decives, which i can see on your Screenshot. Can you give me an advise?

Thanks
Daniel

1 12 2009
matthensley

Hi Daniel,

Thanks for taking time to read my blog and I appreciate the feedback. The client I was referring to in my article is the Citrix Desktop Receiver. However, the Online Plug-in, Version 11.2, is the new client which supersedes the Desktop Receiver and will give you the functionality your looking for. It can be located at the following link:

http://www.citrix.com/English/ss/downloads/details.asp?downloadId=1858087&productId=163057

26 02 2010
Stephen

You do not need to do step 4 ” Copy the contents of …” as the policies device rule is in addition to the non-policies registry key. So the policies key should only contain overrides or modifications to the default rules.

For deny rules, you only need to applied to one end. The idea is that either the client or the server(VDA) may not want to redirect the device, and has an independent veto. Normally you will want to put the deny rule on the VDA, but the benefit of doing it at both sides is that it prevents the device appearing in the USB drop down list of the desktop viewer.

In XD4 the default DeviceRules were relaxed a little on the VDA, so that it is easier to redirect special mice, keyboards and tablets. So with XD4 you may find that you only need to configure the device rules on the client. We obviously need to restrict which keyboard/mice devices get redirected from a client to prevent the user being unable to control the local machine – and generally most keyboards/mice are best redirected through ICA.

26 02 2010
matthensley

Hi Stephen,

Thanks for the info. I haven’t updated this since XenDesktop 4 came out so your post is much appreciated.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s




%d bloggers like this: