2011/05/07

仮想デスクトップで、色々なUSBデバイス(device)を制御するために

ゼロクライアントのUSBデバイス制御は、おなじみのGPO(pcoip.adm)でおこなえる。
PCoIPUsb_Policyってやつが該当する模様。
#PCoIPVchan_Policyってやつも関係するんだけど、これは難しそうなので後回しぢゃ。

ココで、該当するUSBデバイスの、使用(許可/不許可)を指定できる。デフォルトは、pcoip.admをざっと読んだ限りでは、Allow all USB devicesとなっている。ただ、ややこしいことに、「HID」とか「Smart Card」とかは特別扱い(?)になっているらしいのだ。要約すると、ログイン前につながっていなきゃならないデバイスが、この特別扱いの対象となるようだ。たとえば、keyboard, mouse, smart card,は、Viewにログインする前から接続されている必要がある。だから特別扱いの対象となる。この特別扱いの対象となるデバイスは、特別扱いを受けるために「virtual channel」なるものを使う必要があるようだ。それが冒頭で後回しにしたPCoIPVchan_Policyってやつに関連する模様。

ソレらについての追加情報は、
http://kb.vmware.com/kb/1011600
を読んでほすぃ~


細かい指定方法はGPOをご覧いただくとして、大雑把には、以下の2とおり。
なお、下記IDたちは、Windows OSのデバイスマネージャのプロパティで調べることができる。以下画像は、Sony Felica Port/PaSoRi RC-S320の場合。

■互換性ID系
USB規格で定められたクラスIDとサブクラスIDとプロトコルIDを使って指定。別に全部使う必要はないらしい。指定したい部分を使えばいいみたい。
Felica RC-S320の場合、Class ID=FF, SubClass ID=00, Protocol ID=00

http://ja.wikipedia.org/wiki/Universal_Serial_Bus
によれば、Class ID=FFは「ベンダー定義」となっているので、「Smart Card」扱いでもなければ「HID」扱いでもない、ということなのだろう。



















■ハードウェアID系
ベンダIDとプロダクトIDを使って指定。
Felica RC-S320の場合、ベンダID=054C(きっとソニーが該当), プロダクトID=01BB(きっとRC-S320が該当)





















なお、ゼロクライアントではなく、View Client for Windowsとかであれば、
http://vdesktops.blogspot.com/2010/12/configuring-usb-device-filters-and.html
で、もにょもにょ設定することになるんだろう。