CN111782319A - 在云桌面挂载USBKey实现共享访问的***及方法 - Google Patents

在云桌面挂载USBKey实现共享访问的***及方法 Download PDF

Info

Publication number
CN111782319A
CN111782319A CN202010547147.8A CN202010547147A CN111782319A CN 111782319 A CN111782319 A CN 111782319A CN 202010547147 A CN202010547147 A CN 202010547147A CN 111782319 A CN111782319 A CN 111782319A
Authority
CN
China
Prior art keywords
instruction
module
usbkey
virtual
cloud desktop
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010547147.8A
Other languages
English (en)
Other versions
CN111782319B (zh
Inventor
徐军
李巍
赵生捷
李凡
朱迪
马勇
陈刚
李博嘉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guizhou Haiyou Science And Technology Co ltd
Guizhou Broadcasting & Tv Information Network Co ltd
Original Assignee
Guizhou Haiyou Science And Technology Co ltd
Guizhou Broadcasting & Tv Information Network Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guizhou Haiyou Science And Technology Co ltd, Guizhou Broadcasting & Tv Information Network Co ltd filed Critical Guizhou Haiyou Science And Technology Co ltd
Priority to CN202010547147.8A priority Critical patent/CN111782319B/zh
Publication of CN111782319A publication Critical patent/CN111782319A/zh
Application granted granted Critical
Publication of CN111782319B publication Critical patent/CN111782319B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了在云桌面挂载USBKey实现共享访问的***,包括多个终端计算机单元和一个云服务器,终端计算机单元与USBKey设备连接;终端计算机单元包括终端计算机以部署在终端计算机上的指令发送模块、指令接收模块和智能卡管理模块;云服务器由物理主机、Hypervisor层、云桌面层组成;云桌面层中包含至少一个云桌面虚拟单元;Hypervisor层中包含至少一个虚拟机管理单元,所述虚拟机管理单元与所述云桌面虚拟单元一一对应连接;本发明还公开了在云桌面挂载USBKey实现共享访问的方法,本发明解决了现有技术中在云桌面环境下同一USBKey设备无法被终端机和云桌面虚拟机共享访问的问题。

Description

在云桌面挂载USBKey实现共享访问的***及方法
技术领域
本发明属于计算机技术领域,具体涉及一种在云桌面虚拟机中挂载USBKey实现共享访问的***,本发明还涉及一种在云桌面虚拟机中挂载USBKey实现共享访问的方法。
背景技术
目前基于QEMU-KVM的云桌面虚拟机使用USBKey设备时,是将该USBKey设备通过USB重定向技术映射至云桌面虚拟机内的一个虚拟USB设备。当云桌面虚拟机内的应用程序访问该USB设备时,访问指令被重定向至终端实际的物理设备上。
QEMU-KVM下的USB重定向技术是基于前后端(backend)驱动机制的USB虚拟化,通过修改QEMU的Hypervisor层提供给虚拟机的硬件抽象层,使得虚拟机与Hypervisor共同工作,实现USB设备的虚拟化重定向。
使用该USB重定向技术的USB设备,当被重定向至云桌面虚拟机后,在终端上将无法被其它应用程序程序访问,仅能被云桌面虚拟机的应用程序使用。
在基于QEMU-KVM的云桌面虚拟机需要使用USBKey时,一般是通过USBKey重定向技术在云桌面虚拟机内创建一个虚拟USB设备,当终端连接云桌面虚拟机时,可通过自动或手动方式将终端的USBKey设备采用USB重定向技术映射至云桌面虚拟机。
Hypervisor收到重定向请求时,在虚拟化硬件抽象层上***一个虚拟USBKey设备,虚拟机内的操作***将其当作一个物理设备进行发现与驱动。
云桌面虚拟机的应用程序访问该设备时,将所有USB指令传递至Hypervisor硬件抽象层,通过Hypervisor的组装后发送至终端应用,终端应用执行该指令,并将执行结果反馈给Hypervisor,再通过硬件抽象层传递给虚拟机内操作***,最终给予云桌面虚拟机内应用程序响应。
使用该USB重定向技术时,USBKey设备被重定向至云桌面虚拟机内,无法满足同一USBKey设备被终端和云桌面同时使用的应用场景。比如:某安全要求较高的应用环境下,终端机需要通过USBKey设备登录才可进入使用,同时云桌面内操作***或应用也必须通过USBKey设备登录;并且在使用USBKey登录过程中,USBKey设备不可拔出,否则将会被弹出终端、云桌面。
发明内容
本发明的目的是提供一种在云桌面虚拟机中挂载USBKey实现共享访问的***,解决了现有技术中存在的云桌面环境下同一USBKey设备无法被终端机和云桌面虚拟机共享访问的问题。
本发明的另一目的是提供一种在云桌面虚拟机中挂载USBKey实现共享访问的方法。
本发明所采用的第一技术方案是,在云桌面虚拟机中挂载USBKey实现共享访问的***,包括多个终端计算机单元和一个云服务器,终端计算机单元与USBKey设备连接;
所述终端计算机单元包括至少一个终端计算机,还包括指令发送模块、指令接收模块和智能卡管理模块;
所述云服务器由物理主机、Hypervisor层、云桌面层组成;
所述云桌面层中包含至少一个云桌面虚拟单元,云桌面虚拟单元用于根据USBKey设备中的智能卡生成相应的虚拟智能卡vCard;
所述Hypervisor层中包含至少一个虚拟机管理单元,所述虚拟机管理单元与所述云桌面虚拟单元一一对应连接;虚拟机管理单元用于对所述云桌面虚拟单元中USB指令进行解析、转换和发送;
所述终端计算机单元通过基于TCP的协议的方式连接到Hypervisor层中的虚拟机管理单元;所述终端计算机单元与所述虚拟机管理单元一一对应连接;
所述物理主机用于提供硬件资源。
本发明第一技术方案的特点还在于,
云桌面虚拟单元包括云桌面虚拟机VM及部署在云桌面虚拟机VM上的虚拟USBKey设备。虚拟USBKey设备用于截取来自于云桌面虚拟机操作***对虚拟智能卡的USB指令并发送至USB指令模块;将来自终端计算机单元的USB指令发送至虚拟USBKey设备。
终端计算机单元包括有终端计算机及部署在终端计算机上的智能卡管理模块、指令发送模块和指令接收模块。智能卡管理模块用于监控USBKey设备中智能卡的***事件、拔出事件;根据智能卡指令进行的智能卡数据读写,并将智能卡的***事件、拔出事件以及读写结果按传输协议要求封装成智能卡指令发送到指令发送模块;指令发送模块将来自智能卡管理模块的智能卡指令发送至虚拟机管理单元中的数据接收模块;指令接收模块接收来自虚拟机管理单元中数据发送模块的智能卡指令,并发送到智能卡管理模块。
虚拟机管理单元包括有虚拟机管理器VMM及部署在虚拟机管理器VMM上的USB指令模块、智能卡指令模块、数据发送模块和数据接收模块。
USB指令模块用于将USB指令发送至智能卡指令模块,发送来自智能卡指令模块的UBS指令至虚拟USBKey设备;智能卡指令模块用于将USB指令转换为智能卡指令并发送至数据发送模块,将智能卡指令转换为USB指令并发送至USB指令模块;数据发送模块用于发送来自智能卡指令模块的智能卡指令至终端计算机单元中的指令接收模块;数据接收模块用于发送来自终端计算机单元中指令发送模块发送的智能卡指令到智能卡指令模块。
所述读写结果包括智能卡管理模块执行来自虚拟机管理单元的智能卡指令得到的读写结果;还包括用户在终端计算机单元对智能卡进行操作的读写结果,即终端计算机写入的数据将被包含在下次来自虚拟机管理单元的智能卡读指令的返回结果中。
本发明所采用的第二技术方案是,一种在云桌面虚拟机中挂载USBKey实现共享访问的方法,基于前述在云桌面虚拟机中挂载USBKey实现共享访问的***,具体按照以下步骤实施:
步骤1、虚拟机管理单元启动对应的云桌面虚拟单元后,云桌面虚拟单元生成一个虚拟USBKey设备;
步骤2、智能卡管理模块启动并开始监测本地USBKey设备中智能卡的***与拔出事件;
步骤3、若智能卡管理模块监测到USBKey设备中有智能卡***事件,则智能卡管理模块读取该智能卡信息,将事件内容、智能卡信息封装为智能卡指令通过指令发送模块发送到虚拟机管理单元中的数据接收模块,数据接收模块将智能卡指令发送给智能卡指令模块;
步骤4、智能卡指令模块将智能卡指令转换为USB指令发送给USB指令模块,USB指令模块将USB指令发送至虚拟USBKey设备中,虚拟USBKey设备调用云桌面虚拟单元中的USBKey驱动在虚拟USBKey设备中生成对应虚拟智能卡vCard;
步骤5、云桌面虚拟单元内的应用程序访问虚拟USBKey设备内的虚拟智能卡vCard,调用云桌面虚拟单元操作***的USBKey驱动生成USB指令,虚拟USBKey设备截取USB指令并传输至USB指令模块;
步骤6、USB指令模块将USB指令发送给智能卡指令模块,智能卡指令模块根据智能卡访问协议,将USB指令转换为智能卡指令并经过数据发送模块发送到指令接收模块;
步骤7、指令接收模块将智能卡指令发送给智能卡管理模块,智能卡管理模块在USBKey设备中对应的智能卡上执行智能卡指令,并将执行结果封装成智能卡指令通过指令发送模块发送至虚拟机管理单元中的数据接收模块;
步骤8、数据接收模块将智能卡指令发送至智能卡指令模块,智能卡指令模块将所述智能卡指令转换为USB指令,并通过USB指令模块发送至云桌面虚拟单元中的虚拟USBKey设备;
步骤9、虚拟USBKey设备将USB指令反馈至云桌面虚拟单元操作***的USBKey驱动,该驱动将最终结果数据反馈至应用程序,至此,实现了USBkey设备在终端计算机单元、云桌面虚拟单元的共享访问。
本发明第二技术方案的特点还在于,
步骤1中虚拟USBKey设备内仅有虚拟智能卡插槽,插槽中未***虚拟智能卡;所述步骤3中智能卡信息包括智能卡名称和智能卡ATR。
步骤7中执行结果包含指令执行状态和指令输出数据,指令执行状态即成功或者失败,指令输出数据为N字节二进制数据,智能卡管理模块对该输出数据无须解析,直接原样传输,该数据由***驱动自行解析。
还包括如下步骤:
若智能卡管理模块监测到USBKey设备的拔出事件,将事件内容、智能卡名称封装为智能卡指令通过指令发送模块发送到虚拟机管理单元中的数据接收模块,数据接收模块将智能卡指令发送给智能卡指令模块;
智能卡指令模块将智能卡指令转换为USB指令发送给USB指令模块,USB指令模块将USB指令发送至虚拟USBKey设备中,虚拟USBKey设备调用云桌面虚拟单元中的USBKey驱动在虚拟USBKey设备中移除对应虚拟智能卡vCard。
本发明的有益效果是,在原有USB设备重定向技术基础之上,虚拟一个特定的USBKey设备及其内部的虚拟智能卡(Smartcard),实现该USBKey设备访问指令与智能卡协议访问指令的相互转换。在Hypervisor层中,将转换后得到的智能卡协议访问指令传输至终端,终端执行指令后,反馈至Hypervisor,Hypervisor再转换为实际的USBKey设备访问指令,最终端实现USBKey设备的共享访问。通过上述方式,本发明能够实现USBKey设备在终端以及云桌面虚拟机内的共享访问。
附图说明
图1是本发明一种在云桌面虚拟机中挂载USBKey实现共享访问的***的结构示意图;
图2是一种在云桌面虚拟机中挂载USBKey实现共享访问的***的局部放大图。
具体实施方式
下面结合附图1和具体实施方式对本发明进行详细说明。
本发明一种在云桌面虚拟机中挂载USBKey实现共享访问的***,包括多个终端计算机单元和一个云服务器,终端计算机单元与USBKey设备连接;
终端计算机单元包括至少一个终端计算机,还包括指令发送模块、指令接收模块和智能卡管理模块;
云服务器由物理主机、Hypervisor层、云桌面层组成;
云桌面层中包含至少一个云桌面虚拟单元,云桌面虚拟单元用于根据USBKey设备中的智能卡生成相应的虚拟智能卡vCard;
Hypervisor层中包含至少一个虚拟机管理单元,所述虚拟机管理单元与所述云桌面虚拟单元一一对应连接;虚拟机管理单元用于对所述云桌面虚拟单元中USB指令进行解析、转换和发送;
终端计算机单元通过基于TCP协议的方式连接到Hypervisor层中的虚拟机管理单元;所述终端计算机单元与所述虚拟机管理单元一一对应连接;
物理主机用于提供硬件资源。
其中,云桌面虚拟单元包括云桌面虚拟机VM及部署在云桌面虚拟机VM上的虚拟USBKey设备。虚拟USBKey设备用于截取来自于云桌面虚拟机操作***对虚拟智能卡的USB指令并发送至USB指令模块;将来自终端计算机单元的USB指令发送至虚拟智能卡vCard。
所述终端计算机单元包括有终端计算机及部署在终端计算机上的:
智能卡管理模块用于监控智能卡设备的***事件、拔出事件,根据智能卡指令进行的智能卡数据读写,并将智能卡的***事件、拔出事件以及读写结果按传输协议要求封装成智能卡指令发送到指令发送模块;
指令发送模块将来自智能卡管理模块的智能卡指令发送至虚拟机管理单元中的数据接收模块;
指令接收模块接收来自虚拟机管理单元中数据发送模块的智能卡指令,并发送到智能卡管理模块。
所述虚拟机管理单元包括有虚拟机管理器VMM及部署在虚拟机管理器VMM上的USB指令模块、智能卡指令模块、数据发送模块和数据接收模块:
USB指令模块用于将USB指令发送至智能卡指令模块,发送来自智能卡指令模块的UBS指令至虚拟USBKey设备;
智能卡指令模块用于将USB指令转换为智能卡指令并发送至数据发送模块,将智能卡指令转换为USB指令并发送至USB指令模块;
数据发送模块用于发送来自智能卡指令模块的智能卡指令至终端计算机单元中的指令接收模块;
数据接收模块用于发送来自终端计算机单元中指令发送模块发送的智能卡指令到智能卡指令模块。
所述读写结果包括智能卡管理模块执行来自虚拟机管理单元的智能卡指令得到的读写结果;还包括用户在终端计算机单元对智能卡进行操作的读写结果,即终端计算机写入的数据将被包含在下次来自虚拟机管理单元的智能卡读指令的返回结果中。
本发明一种在云桌面虚拟机中挂载USBKey实现共享访问的方法,基于在云桌面虚拟机中挂载USBKey实现共享访问的***,具体按照以下步骤实施:
步骤1、虚拟机管理单元启动对应的云桌面虚拟单元后,云桌面虚拟单元生成一个虚拟USBKey设备;
步骤2、智能卡管理模块启动并开始监测本地USBKey设备中智能卡的***与拔出事件;
步骤3、若智能卡管理模块监测到USBKey设备中有智能卡***事件,则智能卡管理模块读取该智能卡信息,将事件内容、智能卡信息封装为智能卡指令通过指令发送模块发送到虚拟机管理单元中的数据接收模块,数据接收模块将智能卡指令发送给智能卡指令模块;
步骤4、智能卡指令模块将智能卡指令转换为USB指令发送给USB指令模块,USB指令模块将USB指令发送至虚拟USBKey设备中,虚拟USBKey设备调用云桌面虚拟单元中的USBKey驱动在虚拟USBKey设备中生成对应虚拟智能卡vCard;
步骤5、云桌面虚拟单元内的应用程序访问虚拟USBKey设备内的虚拟智能卡vCard,调用云桌面虚拟单元操作***的USBKey驱动生成USB指令,虚拟USBKey设备截取USB指令并传输至USB指令模块;
步骤6、USB指令模块将USB指令发送给智能卡指令模块,智能卡指令模块根据智能卡访问协议,将USB指令转换为智能卡指令并经过数据发送模块发送到指令接收模块;
步骤7、指令接收模块将智能卡指令发送给智能卡管理模块,智能卡管理模块在USBKey设备中对应的智能卡上执行智能卡指令,并将执行结果封装成智能卡指令通过指令发送模块发送至虚拟机管理单元中的数据接收模块;
步骤8、数据接收模块将智能卡指令发送至智能卡指令模块,智能卡指令模块将所述智能卡指令转换为USB指令,并通过USB指令模块发送至云桌面虚拟单元中的虚拟USBKey设备;
步骤9、虚拟USBKey设备将USB指令反馈至云桌面虚拟单元操作***的USBKey驱动,该驱动将最终结果数据反馈至应用程序,至此,实现了USBkey设备在终端计算机单元、云桌面虚拟单元的共享访问。
其中,步骤1中虚拟USBKey设备内仅有虚拟智能卡插槽,插槽中未***虚拟智能卡;所述步骤3中智能卡信息包括智能卡名称和智能卡ATR。步骤7中执行结果包含指令执行状态和指令输出数据,指令执行状态即成功或者失败,指令输出数据为N字节二进制数据,智能卡管理模块对该输出数据无须解析,直接原样传输,该数据由***驱动自行解析。
本发明中,若智能卡管理模块监测到USBKey设备的拔出事件,将事件内容、智能卡名称封装为智能卡指令通过指令发送模块发送到虚拟机管理单元中的数据接收模块,数据接收模块将智能卡指令发送给智能卡指令模块;智能卡指令模块将智能卡指令转换为USB指令发送给USB指令模块,USB指令模块将USB指令发送至虚拟USBKey设备中,虚拟USBKey设备调用云桌面虚拟单元中的USBKey驱动在虚拟USBKey设备中移除对应虚拟智能卡vCard;
以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (9)

1.在云桌面虚拟机中挂载USBKey实现共享访问的***,其特征在于,包括多个终端计算机单元和一个云服务器,终端计算机单元与USBKey设备连接;
所述终端计算机单元包括至少一个终端计算机,以及部署在终端计算机上的指令发送模块、指令接收模块和智能卡管理模块;
所述云服务器由物理主机、Hypervisor层、云桌面层组成;
所述云桌面层中包含至少一个云桌面虚拟单元,云桌面虚拟单元用于根据USBKey设备中的智能卡生成相应的虚拟智能卡vCard;
所述Hypervisor层中包含至少一个虚拟机管理单元,所述虚拟机管理单元与所述云桌面虚拟单元一一对应连接;所述虚拟机管理单元用于对所述云桌面虚拟单元中USB指令进行解析、转换和发送;
所述终端计算机单元通过基于TCP的协议的方式连接到Hypervisor层中的虚拟机管理单元;所述终端计算机单元与所述虚拟机管理单元一一对应连接。
2.根据权利要求1所述的在云桌面虚拟机中挂载USBKey实现共享访问的***,其特征在于,所述云桌面虚拟单元包括云桌面虚拟机VM及部署在云桌面虚拟机VM上的虚拟USBKey设备;
所述虚拟USBKey设备用于截取来自于云桌面虚拟机操作***对虚拟智能卡的USB指令并发送至USB指令模块;将来自终端计算机单元的USB指令发送至虚拟智能卡vCard。
3.根据权利要求1所述的在云桌面虚拟机中挂载USBKey实现共享访问的***,其特征在于,所述智能卡管理模块用于监控智能卡设备的***事件、拔出事件,根据智能卡指令进行的智能卡数据读写,并将智能卡的***事件、拔出事件以及读写结果按传输协议要求封装成智能卡指令发送到所述指令发送模块;
所述指令发送模块将来自所述智能卡管理模块的智能卡指令发送至所述虚拟机管理单元中的数据接收模块;
所述指令接收模块接收来自所述虚拟机管理单元中数据发送模块的智能卡指令,并发送到所述智能卡管理模块。
4.根据权利要求1所述的在云桌面虚拟机中挂载USBKey实现共享访问的***,其特征在于,所述虚拟机管理单元包括有虚拟机管理器VMM及部署在虚拟机管理器VMM上的USB指令模块、智能卡指令模块、数据发送模块和数据接收模块;
所述USB指令模块用于将USB指令发送至智能卡指令模块,发送来自智能卡指令模块的UBS指令至虚拟USBKey设备;
所述智能卡指令模块用于将USB指令转换为智能卡指令并发送至数据发送模块,将智能卡指令转换为USB指令并发送至USB指令模块;
所述数据发送模块用于发送来自智能卡指令模块的智能卡指令至终端计算机单元中的指令接收模块;
所述数据接收模块用于发送来自终端计算机单元中指令发送模块发送的智能卡指令到智能卡指令模块。
5.根据权利要求3所述的在云桌面虚拟机中挂载USBKey实现共享访问的***,其特征在于,所述读写结果包括智能卡管理模块执行来自虚拟机管理单元的智能卡指令得到的读写结果;还包括用户在终端计算机单元对智能卡进行操作的读写结果,所述终端计算机写入的数据将被包含在下次来自虚拟机管理单元的智能卡读指令的返回结果中。
6.一种在云桌面虚拟机中挂载USBKey实现共享访问的方法,基于权利要求1-5所述的在云桌面虚拟机中挂载USBKey实现共享访问的***,其特征在于,具体按照以下步骤实施:
步骤1、虚拟机管理单元启动对应的云桌面虚拟单元后,云桌面虚拟单元生成一个虚拟USBKey设备;
步骤2、智能卡管理模块启动并开始监测本地USBKey设备中智能卡的***与拔出事件;
步骤3、若智能卡管理模块监测到USBKey设备中有智能卡***事件,则智能卡管理模块读取该智能卡信息,将事件内容、智能卡信息封装为智能卡指令通过指令发送模块发送到虚拟机管理单元中的数据接收模块,数据接收模块将智能卡指令发送给智能卡指令模块;
步骤4、智能卡指令模块将智能卡指令转换为USB指令发送给USB指令模块,USB指令模块将USB指令发送至虚拟USBKey设备中,虚拟USBKey设备调用云桌面虚拟单元中的USBKey驱动在虚拟USBKey设备中生成对应虚拟智能卡vCard;
步骤5、云桌面虚拟单元内的应用程序访问虚拟USBKey设备内的虚拟智能卡vCard,调用云桌面虚拟单元操作***的USBKey驱动生成USB指令,虚拟USBKey设备截取USB指令并传输至USB指令模块;
步骤6、USB指令模块将USB指令发送给智能卡指令模块,智能卡指令模块根据智能卡访问协议,将USB指令转换为智能卡指令并发送至终端计算机中的指令接收模块;
步骤7、指令接收模块将智能卡指令发送给智能卡管理模块,智能卡管理模块在对应的USBKey设备上执行智能卡指令,并将执行结果封装成智能卡指令通过指令发送模块发送至虚拟机管理单元中的数据接收模块;
步骤8、数据接收模块将智能卡指令发送至智能卡指令模块,智能卡指令模块将所述智能卡指令转换为USB指令,并通过USB指令模块发送至云桌面虚拟单元中的虚拟USBKey设备;
步骤9、虚拟USBKey设备将USB指令反馈至云桌面虚拟单元操作***的USBKey驱动,该驱动将最终结果数据反馈至应用程序,至此,实现了USBkey设备在终端计算机单元、云桌面虚拟单元的共享访问。
7.根据权利要求6所述的一种在云桌面虚拟机中挂载USBKey实现共享访问的方法,其特征在于,所述步骤1中虚拟USBKey设备内仅有虚拟智能卡插槽,插槽中未***虚拟智能卡;所述步骤3中智能卡信息包括智能卡名称和智能卡ATR。
8.根据权利要求6所述的一种在云桌面虚拟机中挂载USBKey实现共享访问的方法,其特征在于,所述步骤7中执行结果包含指令执行状态和指令输出数据,所述指令执行状态为成功或者失败,所述指令输出数据为N字节二进制数据,所述智能卡管理模块不对所述输出数据进行解析,直接原样传输,所述输出数据由***驱动自行解析。
9.根据权利要求6所述的一种在云桌面虚拟机中挂载USBKey实现共享访问的方法,其特征在于,还包括如下步骤:
若智能卡管理模块监测到USBKey设备的拔出事件,将事件内容、智能卡名称封装为智能卡指令通过指令发送模块发送到虚拟机管理单元中的数据接收模块,数据接收模块将智能卡指令发送给智能卡指令模块;
智能卡指令模块将智能卡指令转换为USB指令发送给USB指令模块;
USB指令模块将包含拔出事件的USB指令发送至虚拟USBKey设备中;
虚拟USBKey设备调用云桌面虚拟单元中的USBKey驱动在虚拟USBKey设备中移除对应虚拟智能卡vCard。
CN202010547147.8A 2020-06-16 2020-06-16 在云桌面挂载USBKey实现共享访问的***及方法 Active CN111782319B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010547147.8A CN111782319B (zh) 2020-06-16 2020-06-16 在云桌面挂载USBKey实现共享访问的***及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010547147.8A CN111782319B (zh) 2020-06-16 2020-06-16 在云桌面挂载USBKey实现共享访问的***及方法

Publications (2)

Publication Number Publication Date
CN111782319A true CN111782319A (zh) 2020-10-16
CN111782319B CN111782319B (zh) 2024-03-22

Family

ID=72756633

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010547147.8A Active CN111782319B (zh) 2020-06-16 2020-06-16 在云桌面挂载USBKey实现共享访问的***及方法

Country Status (1)

Country Link
CN (1) CN111782319B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112486607A (zh) * 2020-11-20 2021-03-12 湖南麒麟信安科技股份有限公司 一种基于软硬件结合的虚拟桌面授权许可方法
CN113242322A (zh) * 2021-07-12 2021-08-10 广东睿江云计算股份有限公司 一种移动存储设备的映射方法及其***
CN113254129A (zh) * 2021-05-13 2021-08-13 贵州海誉科技股份有限公司 一种云桌面gpu直通虚拟化重定向管理***及方法
CN116955236A (zh) * 2023-09-20 2023-10-27 元内核(北京)科技有限公司 一种基于虚拟化的usb设备共享方法及***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103888530A (zh) * 2014-03-18 2014-06-25 成都盛思睿信息技术有限公司 基于云桌面的实验教学***
CN103888432A (zh) * 2012-12-21 2014-06-25 上海格尔软件股份有限公司 一种在虚拟化环境中共享安全设备的方法
CN104252375A (zh) * 2013-06-25 2014-12-31 国际商业机器公司 用于位于不同主机的多个虚拟机共享USB Key的方法和***
KR101662801B1 (ko) * 2015-12-18 2016-10-06 (주)한위드정보기술 가상화 서비스 제공을 위한 디바이스 리다이렉션 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103888432A (zh) * 2012-12-21 2014-06-25 上海格尔软件股份有限公司 一种在虚拟化环境中共享安全设备的方法
CN104252375A (zh) * 2013-06-25 2014-12-31 国际商业机器公司 用于位于不同主机的多个虚拟机共享USB Key的方法和***
CN103888530A (zh) * 2014-03-18 2014-06-25 成都盛思睿信息技术有限公司 基于云桌面的实验教学***
KR101662801B1 (ko) * 2015-12-18 2016-10-06 (주)한위드정보기술 가상화 서비스 제공을 위한 디바이스 리다이렉션 시스템

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112486607A (zh) * 2020-11-20 2021-03-12 湖南麒麟信安科技股份有限公司 一种基于软硬件结合的虚拟桌面授权许可方法
CN112486607B (zh) * 2020-11-20 2022-04-29 湖南麒麟信安科技股份有限公司 一种基于软硬件结合的虚拟桌面授权许可方法
CN113254129A (zh) * 2021-05-13 2021-08-13 贵州海誉科技股份有限公司 一种云桌面gpu直通虚拟化重定向管理***及方法
CN113254129B (zh) * 2021-05-13 2022-11-29 贵州海誉科技股份有限公司 一种云桌面gpu直通虚拟化重定向管理***及方法
CN113242322A (zh) * 2021-07-12 2021-08-10 广东睿江云计算股份有限公司 一种移动存储设备的映射方法及其***
CN113242322B (zh) * 2021-07-12 2021-10-08 广东睿江云计算股份有限公司 一种移动存储设备的映射方法及其***
CN116955236A (zh) * 2023-09-20 2023-10-27 元内核(北京)科技有限公司 一种基于虚拟化的usb设备共享方法及***
CN116955236B (zh) * 2023-09-20 2023-12-12 元内核(北京)科技有限公司 一种基于虚拟化的usb设备共享方法及***

Also Published As

Publication number Publication date
CN111782319B (zh) 2024-03-22

Similar Documents

Publication Publication Date Title
CN111782319B (zh) 在云桌面挂载USBKey实现共享访问的***及方法
US7739693B2 (en) Generic application program interface for native drivers
US20180357085A1 (en) Method and apparatus for running android application on windows system
CN112486609B (zh) 一种基于云桌面的虚拟显卡实现方法和装置
US9003394B2 (en) Program determining apparatus and program determining method
CN112764946B (zh) 跨进程数据传输方法、装置、电子设备和存储介质
CN111679911B (zh) 云环境中gpu卡的管理方法、装置、设备及介质
CN102404633B (zh) 一种监控装置、智能电视***及电视机
CN110968395B (zh) 一种在模拟器中处理渲染指令的方法及移动终端
US10810024B2 (en) Redirection method and apparatus, and system
CN112882709A (zh) 基于容器引擎***的渲染方法、装置、设备以及存储介质
US20230214243A1 (en) One-machine multi-control method, apparatus, system and electronic device
CN114691286A (zh) 服务器***、虚拟机创建方法及装置
CN112256389A (zh) 云桌面终端usb重定向方法
CN112231004A (zh) 云桌面终端usb重定向***
CN111443994A (zh) 一种模拟智能卡驱动程序、信息交互***及其工作方法
CN113596181B (zh) 一种数据重定向方法、终端、服务器及存储介质
CN115237481A (zh) 驱动外接设备的方法、装置、设备及存储介质
CN111611307B (zh) 报表导出方法及装置
CN114579334A (zh) 一种通信方法、装置、电子设备及存储介质
CN113626087A (zh) 一种主机与bmc间的数据通信的方法、***及装置
CN108235822B (zh) 虚拟sim卡的实现方法及装置、存储介质、电子设备
CN112231409A (zh) 数据库同步的初始化装载方法、装置、设备和存储介质
CN112527192B (zh) 数据获取方法、装置及服务设备
KR101361838B1 (ko) 서버 가상화 기반 가상 데스크탑 프로토콜 가속방법 및 이를 수행하는 가상화 서버

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant