使客户端设备能够访问远程桌面的方法和系统的制作方法_3

文档序号:9620849阅读:来源:国知局
协议限制)
[0061] ?以及直至256个信道的集合
[0062] 例如,一个流可严格地专用于一个功能。至少一个有效负载流(即,并不总是用于 代理内部通信的流)可在代理客户端202与代理服务102连接之前设立。活跃的代理会话 期间的流改变(例如,由管理服务发起)可立即从代理服务102推送到代理客户端202。一 旦最后的流(#1到#7)终止,整个会话就可被代理服务102终止。
[0063] 在以下方面中描述了基本范例:只要代理连接存在,代理客户端202就被允许通 过流#〇和信道#〇在任何时间向代理服务202发送最优化建议。然而,其不被允许在代理 服务102将配置改变推送回代理客户端202之前施加任何改变。代理服务102可发起的改 变可对应于下列消息中的任何一者:
[0064] ?打开流(例如,具有相关参数)
[0065] ?关闭单个信道或者整个流
[0066] ?终止会话
[0067] ?改变特定功能/流的最优化级别。
[0068] 代理客户端202可在代理服务流(流#0、信道#0)上发送下列消息中的一者:
[0069] ?通知连接已被客户端/用户打开
[0070] ?通知连接已被客户端/用户关闭
[0071] ?终止会话
[0072] ?对用于建立的流的最优化的建议
[0073] 最初,WAN 400后面的组件除了在管理设备100上运行的连接管理组件101以外可 对客户端设备200隐藏。管理设备可以是具有适当接口的任何适当计算设备。例如,可使 用标准服务器计算机。连接管理组件101给客户端设备200提供作为主要联系点的管理服 务,以请求用于访问正在虚拟主机301上的虚拟机引擎302内运行的远程桌面的连接。例 如,管理服务可向客户端设备提供可用远程桌面的列表。基于这种列表,用户可作出对要使 用的远程桌面的选择。客户端设备200可将相应的连接请求从代理客户端202发送到连接 管理组件101。代理客户端还可发送用户的凭据(授权数据),该凭据可向管理服务指示哪 个远程桌面可被用户访问。
[0074] 简短转到图3,其示出了连接管理组件101的更详细视图。管理服务可包括对访 问策略103的提供,访问策略103包括预定义的访问数据结构和用于检查用户的授权数据 是否符合针对虚拟机引擎302定义的访问规则的相应访问规则。在符合的情况下,数据处 理组件105可生成目的地数据请求以请求实现远程桌面的远程虚拟机引擎302的目的地数 据。此请求可被直接发送到相应虚拟主机301 (参见图1)本身或者被发送到中间组件(未 示出)。
[0075] 转回图1,主机场(farm) 300可运行一个或多个虚拟主机301。虚拟主机301可以 是诸如标准服务器计算机那样的适当计算设备。虚拟主机301和管理设备100可以是相同 的物理机器或者可以是分开的物理机器。在每个虚拟主机301上,一个或多个虚拟机引擎 302可运行,其中每个虚拟机引擎可实现远程桌面。
[0076] 简短转到图2,虚拟主机301提供了管理程序303,该管理程序303给多个虚拟机 引擎(VME1、VME2、VMEn)提供诸如处理器时间或存储器之类的计算资源。虚拟机引擎302 是封装的软件组件,在其内部可实现远程桌面。虚拟机引擎302给内部虚拟机(例如,正在 封装的软件组件内运行的远程桌面)提供虚拟设备,诸如鼠标、键盘或者视频,并且提供这 些虚拟设备与虚拟机引擎302在其上运行的虚拟主机301之间的接口。连接到这种接口以 用于远程访问虚拟机引擎302允许了对虚拟机的成功访问,而这与在虚拟机内运行的操作 系统无关。
[0077] 转回图1,虚拟主机301最终通过发送虚拟机引擎302的目的地数据,来响应管理 服务的请求。管理服务然后可向代理服务102发送会话请求以用于根据授权数据建立与虚 拟机引擎302的会话。这样的会话请求可包含虚拟机引擎302的目的地数据以及在代理客 户端202与适当会话标识符连接时将被允许的连接的类型和选项。例如如果策略允许显示 器连接和USB重定向但拒绝文件传送,则代理客户端202与代理服务102之间的打开的代 理连接仅可支持两种被允许的连接类型。
[0078] 通过接收会话请求,代理服务102准备好具有唯一会话标识符的到被请求目的地 的新的代理会话和所请求的连接策略。代理服务102现在准备好接受代理客户端202的请 求以在所提供的会话标识符正确的情况下建立代理连接并且在允许的时间内(例如,30秒 内)执行该建立。否则,可能由于安全理由而放弃代理会话。在准备好新的代理会话后,代 理服务102利用用于代理客户端202的连接数据来响应管理服务101。该响应可包括会话 标识符和用于通过诸如互联网那样的广域网到达代理服务的外部IP数据。
[0079] 管理服务101向代理客户端202发送代理连接数据。通过与代理服务102建立代 理连接,代理客户端202从对于此连接所允许的代理服务102接收连接策略。取决于所允 许的连接和选项,代理客户端202然后能够提供对于所请求的远程虚拟机引擎302的访问。 例如,UI客户端201然后能够直接与虚拟机引擎302通信并且使得用户能够与其交互。
[0080] 图3是根据本发明的实施例的连接管理组件的简化框图。示例示出了访问管理和 用户到虚拟机的映射可如何实现。管理服务101存储多个用户(Ul、U2、Un)的用户数据并还 可存储多个用户组的用户组数据,其中用户组(UG1)具有多个用户的子集(Ul、U2)并且与 多个远程虚拟机引擎(302、302a、302b)相关联。多个远程虚拟机被映射到用户组专用虚拟 局域网。多个用户组可按组层次布置,其中至少一个用户组是用户组(UG1)的父(parent) (未示出),并且多个远程虚拟机引擎(302、302a、302b)到用户组(UG1)内的多个用户的映 射可以以父用户组的层次级别发生。具有作为子的其他用户组的用户组可称为多层次超 组。这样的多层次超组也可包括用户作为子。用户组具有多个用户的子集并且与多个远程 虚拟机(302、302a、…)相关联。用户组内的所有虚拟机被映射到专用虚拟局域网。可允 许一用户组内的所有用户与同一用户组的虚拟机引擎(302)建立连接。用户组内的用户与 虚拟机之间的N到N的映射是可能的。特定用户组可允许其父用户组的用户获得对于该特 定用户组的虚拟机的访问。例如,这可用来使得实现为超组的软件出售商和服务供应商在 顾客实现为相应超组的子用户组时远程支持和管理其顾客的环境。然而,超组用户对子组 虚拟机的访问可取决于子用户组的允许。换句话说,软件出售商或者服务供应商对于其顾 客的远程虚拟机的访问只有在被顾客允许的情况下才是可能的。访问策略103可定义关于 哪些类型的连接被允许以及用户如何可与远程虚拟机通信的细节。
[0081] 访问策略103可存储下列访问规则中的任何一者:允许或者拒绝显示器连接(可 能部分地),允许或者拒绝键盘连接(可能利用密钥限制),允许或者拒绝鼠标连接,允许 或者拒绝文件传送,允许或者拒绝剪贴板传送(分别对于两个方向:从虚拟机以及到虚拟 机),允许或者拒绝USB重定向,定义USB重定向设备类别(诸如,存储、音频、…)的黑名 单和/或白名单,定义用于每个访问规则的访问时间,定义用于限制访问特定客户端机器 的客户端系统ID,以及定义用于限制客户端访问指定子网的网络黑名单/白名单(诸如公 司、供应商、城市或国家)。
[0082] 图4是图示本发明的一个实施例中的组件的交互的游线图1000。垂直的线表示计 算机系统的组件。这些组件之间的箭头表示组件之间的通信。具有两端的箭头表示双向通 信交换,具有一端的箭头表示单向通信交换。垂直的线所表示的组件是:代理客户端202、 连接管理组件101、代理服务102、虚拟主机301和虚拟机引擎302。客户端设备与管理设备 之间的通信始于代理客户端201向连接管理组件101发送连接请求1001。连接请求1001 指向建立客户端设备的代理客户端202与实现为远程虚拟机引擎302的远程桌面之间的连 接。如前面说明的,代理客户端202还可向连接管理组件发送与连接请求1001相关联的用 户凭据。连接管理组件可评价用户凭据(授权数据)以检查请求用户是否被允许访问连接 请求中所指示的虚拟机引擎302。
[0083] 如果授权数据符合连接管理组件101上可用且可运行的相应访问策略,则连接管 理组件101发送对于远程虚拟机引擎的目的地数据的请求1002、1003。远程虚拟机引擎在 提供用于远程虚拟机引擎的管理程序303的虚拟主机301上例示。管理程序和远程虚拟机 引擎受连接管理组件101控制。换句话说,连接管理组件可采纳关于远程虚拟机引擎提供 的所有计算资源到各个客户端设备的分配的所有决定。以下可以是有利的:连接管理
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1