Smartcard Reader Umleitung - Konfiguration in Citrix Virtual App and Desktop

Hier finden Sie eine kurze Schritt-für-Schritt-Anleitung, wie Sie einen Smartcard-Reader (Chipkartenleser) in einer Citrix Virtual App and Desktop Session durchschleifen können, bzw. die Smartcard-Umleitung konfigurieren.

Die unten beschriebenen Konfigurationsschritte können analog auf die weiteren USB-Geräte übertragen werden. Die Screenshots stammen von Windows 2019 Server und es wird ein Gemalto IDBridge CT30  (Class 1) eingesetzt.

Konfigurationsschritte:

Die vollständige Konfiguration besteht aus fünf folgenden Schritten:

  1. Driver installieren
  2. Middleware (SmartCard Reader Software) installieren 
  3. Citrix Richtlinien erstellen und die Umleitung der USB-Geräten erlauben
  4. Windows Smart Card Dienst muss aktiviert sein
  5. Registry auf dem Windows-Client anpassen.

Konfiguration

1. Der erste Schritt ist je nach Art des Chipkartenlesers optional. Der Kartenleser-Treiber muss sowohl auf dem Windows-Client (End User Device mit dem installierten Receiver for Windows), als auch auf dem XenDesktop installiert sein.

Wenn Sie nur die Chipkartenleser von nur einem bestimmten Anbieter zulassen wollen, werden Sie noch folgende Informationen (VID – Vendor-ID, PID – Product ID) benötigen (Punkt 3.2):  VID=08E PID=3437

SmartCard Driver Prorerties

2. Es wird auch eine sogenannte Middleware auf den XenDesktop benötigt und abhängig davon wie der Client genutzt wird, muss auch die Middleware auf dem Windows-Client installiert sein. Eine Middleware ist eine Softwarekomponente zwischen der Smartcard (oder deren Treiber) und der Applikation die die kryptographische Information der Smardcard nutzt.

3. Erstellen Sie in Citrix Studio eine neue Richtlinie, die erstens eine Umleitung von USB-Geräten eines End-Gerätes in die Citrix Session ermöglicht, und zweitens die Anzahl der USB-Geräte begrenzt.

3.1. Client-USB-Geräteumleitung aktivieren

ICA > USB Devices > Client USB device redirection

200 Client USB device redirection

3.2. Regeln für die Client-USB-Geräteumleitung aktivieren und die folgende Befehlskette eintragen:  Allow: Class=0b # Smart Cards

ICA > USB Devices > Client USB device redirection rules

201 Client USB device redirection

3.3. Optional können Sie die Anzahl der zugelassenen Kartenleser auf eine bestimmte Baureihe begrenzen. Sie können z.B. dafür sorgen, dass nur die Gemalto IDBridge CT30 Geräte in der Session durchschleift werden. Dafür sollen Sie den Eintrag Allow: VID=08E PID=3437 # Gemalto IDBridge CT30 statt Allow: Class=0b # Smart Cards eingeben.

3.4. (Optional) Eine weitere sinnvolle Einstellung können Sie per Citrix Richtlinie vornehmen:  Regeln für die Client Geräteoptimierung (Client USB device optimization rules)

3.5. Ergebnisse überprüfen:
Wenn die konfigurierten Einstellungen noch nicht aktiviert sind, bleibt die Device-Schaltfläche des Desktop Toolbars ausgeblendet:

03 CTX SmartCard

Nach Aktivierung der Richtlinien erscheint eine weitere Registerkarte Devices:

Citrix Desktop Toolbar Devices

Wie man sieht, ist der am Client angeschlossenen Kartenleser bereits sichtbar und wird als umgeleitet angezeigt:

CTX Workspace Preferences Devices

4. Überprüfen Sie auf beiden Systemen (Client und XenApp Server), ob der Smartcard-Dienst aktiviert ist:

Windows SmartCard Service

Auf dem Citrix Virtual App and Desktop soll auch der Citrix Smart Card Dienst aktiv sein:

 Citrix SmartCard Service

5. Der letzte Schritt wird in vielen Umgebungen ignoriert, obwohl dieser eine gewisse „Konfigurationsfreiheit“ bietet. Aus diesem Grund können Sie diesen Punkt als optional betrachten, es funktioniert auch ohne.

5.1. Starten Sie den Registry Editor und navigieren Sie je nach Systemversion zu einem den folgenden Registry-Zweigen:

  • 32Bit: HKLM\Software\Citrix\ICA Client\GenericUSB\DeviceRules
  • 64Bit: HKLM\Software\WOW6432Node\Citrix\ICA Client\GenericUSB\DeviceRules

und öffnen Sie den Registry-Schlüssel DeviceRules 

Registry GenericUSB DeviceRules

5.2. Wählen Sie den Eintrag DENY: class=0b # Smartcard

Device Rules Value Deny

und ersetzen Sie DENY durch ALLOW (oder kommentieren Sie den Eintrag mit dem # - Symbol aus)

302 Device Rules ALLOW

So sehen die Standard Einstellungen in HKLM\Software\WOW6432Node\Citrix\ICA Client\GenericUSB\DeviceRules\DeviceRules aus:

# Syntax is an ordered list of case insensitive rules where # is line comment
# and each rule is (ALLOW | DENY) : ( match )*
# and each match is (class|subclass|prot|vid|pid|rel) = hex-number
# Maximum hex value for class/subclass/prot is FF, and for vid/pid/rel is FFFF
DENY: vid=17e9 # All DisplayLink USB displays
DENY: class=02 # Communications and CDC-Control
DENY: class=09 # Hub devices
DENY:vid=045e pid=079A # Microsoft Surface Pro 1 Touch Cover
DENY:vid=045e pid=079c # Microsoft Surface Pro 1 Type Cover
DENY:vid=045e pid=07dc # Microsoft Surface Pro 3 Type Cover
DENY:vid=045e pid=07e4 # Microsoft Surface Pro 3 Type Cover with fingerprint reader
DENY:vid=03eb pid=8209 # Surface Pro Atmel maXTouch Digitizer
ALLOW:vid=056a pid=0315 class=03 # Wacom Intuos tablet
ALLOW:vid=056a pid=0314 class=03 # Wacom Intuos tablet
ALLOW:vid=056a pid=00fb class=03 # Wacom DTU tablet
DENY: class=03 subclass=01 prot=01 # HID Boot keyboards
DENY: class=03 subclass=01 prot=02 # HID Boot mice
DENY: class=0a # CDC-Data
DENY: class=0b # Smartcard
DENY: class=e0 # Wireless controller
DENY: class=ef subclass=04 # Miscellaneous network devices
ALLOW: # Otherwise allow everything else

5.4. Es existiert auch eine weitere Möglichkeit die Einstellungen zu konfigurieren. Dafür können Sie dem Citrix Receiver (Workspace App) dazugehörigen ADMX-Vorlagen (receiver.admx) verwenden. Die nötigen Einstellungen finden Sie in dem folgenden Abschnitt:

Computerkonfiguration > Administrative Vorlage > Citrix Komponenten > Citrix Receiver > Remoting von Clientgeräten > Generisches USB-Remoting

Generisches USB Remoting

5.5. Verifizierung der Konfiguration.
Wenn Sie eine Citrix Session erneut starten, sehen Sie die sichtbaren Unterschiede im Desktop Toolbar / Devices.

Wie Sie jetzt erkennen können, kam nach der Registry-Anpassung eine neue Schaltfläche im Bereich Virtual Channel hinzu: "Switch to generic". Wenn Sie die Option "Switch to generic" anklicken, wird der Kartenleser unter der Liste der lokalen Geräten des XenDesktop sichtbar. 

303 Device Rules Optimize

Die Option "Switch to optimized" anklicken, wird der Kartenleser wieder auf dem lokalen Client erscheinen. 

303 Device Rules Generic

 

Nützliche Links:

 

Wir nutzen Cookies auf unserer Website. Einige von ihnen sind essenziell für den Betrieb der Seite, während andere uns helfen, diese Website und die Nutzererfahrung zu verbessern (Tracking Cookies). Sie können selbst entscheiden, ob Sie die Cookies zulassen möchten. Bitte beachten Sie, dass bei einer Ablehnung womöglich nicht mehr alle Funktionalitäten der Seite zur Verfügung stehen.