本申请涉及虚拟化技术领域,尤其涉及一种访问控制方法及装置。
背景技术:
在桌面虚拟化方案中,用户通过终端设备上的虚拟桌面基础架构(virtualdesktopinfrastructure,vdi)客户端与vdi服务器中创建的虚拟机(virtualmachine)建立连接,进而实现对vm提供的虚拟桌面的访问。
目前,在访问虚拟桌面的访问流程中,认证服务器通常使用用户名和密码这一单一因素区分用户访问虚拟桌面的访问权限,容易导致用户访问虚拟桌面的访问安全性较低。
技术实现要素:
为克服相关技术中存在的问题,本申请提供了一种访问控制方法及装置。
根据本申请实施例的第一方面,提供一种访问控制方法,所述方法应用于第一认证服务器,所述方法包括:
接收第一网关设备发送的认证请求,所述认证请求为所述第一网关设备在接收到用户通过终端设备上的vdi客户端发送的访问虚拟桌面的第一访问请求时生成的,所述认证请求中包括有所述第一访问请求中携带的所述用户的用户信息、所述终端设备的设备类型和所述vdi客户端的互联网协议(internetprotocol,ip)地址,所述ip地址为所述第一认证服务器或者所述第一网关设备根据所述vdi客户端的接入方式分配的;
在根据所述用户信息确定出所述用户的第一接入权限为允许所述用户接入所述第一网关设备时,生成所述第一接入权限对应的第一访问控制策略并发送给所述第一网关设备;
在接收到vdi控制器发送的查询所述用户对应的虚拟桌面的访问权限的查询请求时,生成携带有根据所述用户信息对应的用户组、所述设备类型和所述ip地址确定出的所述第一访问权限的查询响应,并发送给所述vdi控制器,以使所述vdi控制器在接收到所述查询响应且所述第一访问权限为允许所述用户访问虚拟桌面时,根据所述用户组、所述设备类型和所述ip地址,确定所述用户可访问的虚拟桌面,并通过所述第一网关设备向所述vdi客户端发送携带有确定出的虚拟桌面的标识信息的第一访问响应,由所述用户根据所述标识信息选择对应的待访问的虚拟桌面,并通过所述vdi客户端访问选择出的虚拟桌面,其中,所述查询请求为所述vdi控制器在接收到所述第一网关设备发送的所述第一访问请求时生成的,所述第一访问请求为所述第一网关设备在接收到所述第一访问控制策略时转发给所述vdi控制器的。
根据本申请实施例的第二方面,提供访问控制装置,所述装置应用于第一认证服务器,所述装置包括:
接收模块,用于接收第一网关设备发送的认证请求,所述认证请求为所述第一网关设备在接收到用户通过终端设备上的虚拟桌面基础架构vdi客户端发送的访问虚拟桌面的第一访问请求时生成的,所述认证请求中包括有所述第一访问请求中携带的所述用户的用户信息、所述终端设备的设备类型和所述vdi客户端的ip地址,所述ip地址为所述第一认证服务器或者所述第一网关设备根据所述vdi客户端的接入方式分配的;
生成模块,用于在根据所述用户信息确定出所述用户的第一接入权限为允许所述用户接入所述第一网关设备时,生成所述第一接入权限对应的第一访问控制策略并发送给所述第一网关设备;
访问控制模块,用于在接收到vdi控制器发送的查询所述用户对应的虚拟桌面的访问权限的查询请求时,生成携带有根据所述用户信息对应的用户组、所述设备类型和所述ip地址确定出的所述第一访问权限的查询响应,并发送给所述vdi控制器,以使所述vdi控制器在接收到所述查询响应且所述第一访问权限为允许所述用户访问虚拟桌面时,根据所述用户组、所述设备类型和所述ip地址,确定所述用户可访问的虚拟桌面,并通过所述第一网关设备向所述vdi客户端发送携带有确定出的虚拟桌面的标识信息的第一访问响应,由所述用户根据所述标识信息选择对应的待访问的虚拟桌面,并通过所述vdi客户端访问选择出的虚拟桌面,其中,所述查询请求为所述vdi控制器在接收到所述第一网关设备发送的所述第一访问请求时生成的,所述第一访问请求为所述第一网关设备在接收到所述第一访问控制策略时转发给所述vdi控制器的。
本申请的实施例提供的技术方案可以包括以下有益效果:
在本申请实施例中,认证服务器不再仅依据用户名和用户密码区分用户访问虚拟桌面的访问权限,在确定用户访问虚拟桌面的访问权限时,还进一步结合了用户信息对应的用户组、vdi客户端的ip地址(此ip地址为基于vdi客户端的接入方式分配的)和vdi客户端所属终端设备的设备类型这些因素,以实现基于不同的用户组、不同接入方式下分配的ip地址以及不同的设备类型决策出更加细致化的用户访问虚拟桌面的访问权限,在一定程度上提高了用户访问虚拟桌面的访问安全性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本申请的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种访问控制方法的流程示意图;
图2为本申请实施例提供的访问控制系统的结构示意图;
图3为本申请实施例提供的一种访问控制装置的结构示意图;
图4为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
接下来对本申请实施例进行详细说明。
本申请实施例提供了一种访问控制方法,如图1所示,该方法应用于第一认证服务器,该方法可以包括如下步骤:
s11、接收第一网关设备发送的认证请求。
在本步骤中,该认证请求为第一网关设备在接收到用户通过终端设备上的vdi客户端发送的访问虚拟桌面的第一访问请求时生成的;并且,该认证请求中包括有第一访问请求中携带的用户的用户信息(例如,包括用户名、密码等)、终端设备的设备类型和vdi客户端的ip地址,此ip地址为第一认证服务器或者第一网关设备根据vdi客户端的接入方式分配的。
需要说明的是,本步骤中的第一网关设备实际上是控制用户访问虚拟桌面的访问权限的网关设备。
s12、在根据用户信息确定出用户的第一接入权限为允许用户接入第一网关设备时,生成第一接入权限对应的第一访问控制策略并发送给第一网关设备。
在本步骤中,第一访问控制策略可以以访问控制列表(accesscontrollist,acl)的方式呈现,当然也可以以其他方式呈现,在此不再详述。
s13、在接收到vdi控制器发送的查询用户对应的虚拟桌面的访问权限的查询请求时,生成携带有根据用户信息对应的用户组、设备类型和ip地址确定出的第一访问权限的查询响应,并发送给vdi控制器,以使vdi控制器在接收到查询响应后,确定用户可访问的虚拟桌面,并通过第一网关设备向vdi客户端发送携带有确定出的虚拟桌面的标识信息的第一访问响应,由用户根据标识信息选择对应的待访问的虚拟桌面,并通过vdi客户端访问选择出的虚拟桌面。
在本步骤中,该查询请求为vdi控制器在接收到第一网关设备发送的第一访问请求时生成的,而第一访问请求又为第一网关设备在接收到第一访问控制策略时转发给vdi控制器的。
另外,vdi控制器确定出的虚拟桌面的标识信息可以是提供确定出的虚拟桌面的虚拟主机的ip地址或者端口号信息等。
需要说明的是,在现有技术中,对于同一用户而言,不管采用哪种接入方式接入网关设备,例如,采用虚拟专用网络(virtualprivatenetwork,vpn)接入网关设备等,使用哪种设备类型的终端设备访问虚拟桌面时,均无相关访问权限的差别,容易导致访问的安全性较低。
在本申请实施例中,为了能够提高用户访问虚拟桌面的安全性,第一认证服务器会对访问虚拟桌面的用户进行分组,例如,分为研发用户组、市场用户组、人力资源用户组、信息技术支持用户组等等;第一认证服务器还会依据用户通过终端设备上的vdi客户端临时接入第一网关设备时的接入方式(例如,vpn接入等),为vdi客户端分配ip地址,不同的接入方式分配的ip地址所属的ip网段不同,以便后续为用户设置不同的访问权限,并且,第一认证服务器还会区分终端设备的设备类型,例如,设备类型有笔记本电脑、手机等;最终,第一认证服务器可以基于用户所属的用户组、用户所使用的vdi客户端的ip地址和vdi客户端所属终端设备的设备类型来设置此用户接入第一认证服务器的接入权限和访问权限。
在具体设置时,在接入方式和终端设备的设备类型均一致的情形下,第一认证服务器可以针对不同的用户组设置不同的接入权限和访问权限(例如,访问虚拟桌面的访问权限等);在用户组和终端设备的设备类型均一致的情形下,第一认证服务器可以针对不同的接入方式设置不同的接入权限和访问权限;在用户组和接入方式均一致的情形下,第一认证服务器可以针对不同的设备类型设置不同的接入权限和访问权限。
当然,第一认证服务器结合用户所属的用户组、用户所使用的vdi客户端的ip地址和vdi客户端所属终端设备的设备类型这三种要素设置上述相关权限时,还可以有其他设置方案,在此不再一一列举。
这样一来,对于同一用户而言,在采用不同的接入方式接入第一网关设备时,对应的接入权限可能是不同的;即使采用同一种接入方式成功接入到第一网关设备,在用户使用不同设备类型的终端设备上的vdi客户端访问虚拟桌面时,相应的访问权限也可能是不同的,一定程度上提高了访问安全性。
进一步地,在本申请实施例中,第一认证服务器还可以执行以下操作:
在根据认证请求确定出用户的第二接入权限为不允许接入第一网关设备时,生成第二接入权限对应的第二访问控制策略并发送给第一网关设备,以使第一网关设备根据第二访问控制策略,丢弃第一访问请求。
更进一步地,在本申请实施例中,为了解决现有技术中用户在访问的虚拟桌面上访问网络(例如,访问内网,或者访问外网,或者访问内网和外网)时仍需要再次认证导致的用户体验较差、以及现有的访问内网的访问权限设置单一导致的访问内网的安全性低的问题,第一认证服务器还可以执行以下操作:
根据用户组、设备类型、ip地址和接收的vdi控制器发送的标识信息,确定用户在标识信息对应的虚拟桌面上访问网络的第二访问权限;
生成第二访问权限对应的第二访问控制策略,并将第二访问控制策略发送给第二网关设备,以使第二网关设备根据第二访问控制策略,对接收到的用户通过vdi客户端发送的访问网络的访问报文进行处理。
通过此操作流程,用户在访问的虚拟桌面上访问网络时,第二网关设备不再向第一认证服务器发起认证,直接依据第二访问控制策略进行处理即可,大大提高了用户体验以及访问网络的安全性。
需要说明的是,此操作流程中的第二网关设备实际上是控制用户在访问的虚拟桌面上访问网络的访问权限的网关设备。
当然,在本申请另一实施例中,为了减轻第一认证服务器的处理负载,也可以再单独设置一台认证服务器,专门负责访问网络的访问权限的设置,在这种情形下,第一认证服务器可以执行以下操作:
在接收到vdi控制器发送的标识信息后,将用户信息、用户组、设备类型、ip地址和标识信息同步给第二认证服务器(即,专门负责访问内网的访问权限的设置的认证服务器),以使第二认证服务器根据用户组、设备类型、ip地址和标识信息,确定用户在标识信息对应的虚拟桌面上访问网络的第三访问权限,生成第三访问权限对应的第三访问控制策略,并将第三访问控制策略发送给第三网关设备,由第三网关设备根据第三访问控制策略,对接收到的用户通过vdi客户端发送的访问网络的访问报文进行处理。
需要说明的是,此操作流程中的第三网关设备与上述第二网关设备可以是同一台网关设备;第三访问权限与上述第二访问权限可以是同一访问权限;第三访问控制策略与上述第二访问控制策略可以是同一访问控制策略,本申请仅是为了便于区分进行了不同的命名。
下面结合具体实施例对上述访问控制方法进行详细说明。
如图2所示,假设访问控制系统包括m个用户(用户1至用户m)、p台终端设备(终端设备1至终端设备p)、认证服务器a、网关a、vdi控制器c、q台服务器(服务器1至服务器q,每台服务器上均运行有提供虚拟桌面的虚拟机)、认证服务器b、网关设备b和r台应用服务器(应用服务器1至应用服务器r)。
其中,网关a,负责访问虚拟桌面的用户的认证、控制用户访问虚拟桌面的访问权限、转发访问虚拟桌面的数据访问流量等
认证服务器a,负责为网关a提供认证服务,为用户授权接入网关a的接入权限、访问虚拟桌面的访问权限等,以及为vdi控制器提供查询用户访问虚拟桌面的访问权限的查询服务;
m个用户,可以均为有访问虚拟桌面需求的用户,被认证服务器a分成不同的用户组,例如,研发用户被分到研发用户组,市场用户被分到市场用户组等;
p台终端设备,可以均为具有vdi客户端的终端设备,这些终端设备的设备类型可以为笔记本电脑、手机等;
vdi控制器c,负责管理用户可访问的虚拟桌面等;
q台服务器,均为提供虚拟桌面的服务器;
网关b,负责控制用户在访问的虚拟桌面上访问网络(例如,内网和/或外网)的访问权限等;
认证服务器b:负责设置用户访问内网的访问权限等;
r台应用服务器,负责提供内网服务,例如,办公系统的访问服务等。
假设研发用户组中的用户1通过终端设备1上的vdi客户端向网关a发送访问虚拟桌面的访问请求1,该访问请求1中携带有用户1的用户信息(具体为用户1的用户名和密码)、终端设备1的设备类型和vdi客户端的ip地址(例如,此ip地址为用户1临时接入网关a时,认证服务器a根据vdi客户端的接入方式分配的)。
网关a在接收到该访问请求1后,根据该访问请求1生成携带有用户1的用户信息、终端设备1的设备类型和vdi客户端的ip地址的认证请求,并将认证请求发送给认证服务器a。
认证服务器a在接收到该认证请求后,根据该认证请求中携带的用户信息验证用户1是否为合法用户,根据验证结果确定用户1的接入权限,并生成接入权限对应的acl后发送给网关a。
具体地,认证服务器a在验证结果为否时,确定用户1的接入权限为不允许用户1接入网关a,生成相应的acl后发送给网关a。后续网关a收到此acl之后,可以知晓不允许用户1接入自己,会丢弃访问请求1。
认证服务器a在验证结果为是时,确定用户1的接入权限为允许用户1接入网关a,并生成相应的acl后发送给网关a。后续网关a收到此acl之后,可以知晓允许用户1接入自己,会将访问请求1继续发送给vdi控制器c。
vdi控制器c在接收到访问请求1后,向认证服务器a发送查询用户1对应的虚拟桌面的访问权限的查询请求。
认证服务器a在接收到该查询请求后,确定用户1对应的虚拟桌面的访问权限,并向vdi控制器c发送携带有用户1对应的虚拟桌面的访问权限的查询响应。
具体地,认证服务器a在确定用户1对应的虚拟桌面的访问权限时,可以直接查询认证服务器a之前根据认证请求中携带的用户信息对应的用户组(即,用户1所属的用户组)、终端设备1的设备类型和终端设备1上的vdi客户端的ip地址确定出的用户1的访问权限;当然,认证服务器a也可以在接收到此查询请求时,再依据上述相关信息确定用户1对应的虚拟桌面的访问权限。
例如,在终端设备1的设备类型为笔记本电脑且终端设备1上的vdi客户端的ip地址是接入方式为portal接入时对应的网段中的ip地址的情形下,认证服务器确定用户1的虚拟桌面的访问权限为允许访问虚拟桌面。
在终端设备1的设备类型为手机且终端设备1上的vdi客户端的ip地址是接入方式为vpn接入时对应的网段中的ip地址的情形下,认证服务器确定用户1的虚拟桌面的访问权限为不允许访问虚拟桌面。
vdi控制器c在接收到该查询响应后,如果用户1对应的虚拟桌面的访问权限为不允许访问虚拟桌面,则vdi控制器确定用户1可访问的虚拟桌面为空,并通知给网关a,由网关a反馈给用户1。
如果用户1对应的虚拟桌面的访问权限为允许访问虚拟桌面,则vdi控制器c根据用户1的用户信息对应的用户组、终端设备1的设备类型和终端设备1上的vdi客户端的ip地址确定用户1可访问的虚拟桌面,并通过网关a向vdi客户端发送携带有确定出的虚拟桌面的标识信息的访问响应。后续用户1根据标识信息选择对应的待访问的虚拟桌面,并通过vdi客户端访问选择出的虚拟桌面。
例如,在终端设备1的设备类型为笔记本电脑且终端设备1上的vdi客户端的ip地址是接入方式为vpn接入时对应的网段中的ip地址的情形下,vdi控制器c确定用户1可访问的虚拟桌面为服务器1上运行的虚拟主机提供的虚拟桌面1和服务器2上运行的虚拟主机提供的虚拟桌面2。
在终端设备1的设备类型为笔记本电脑且终端设备1上的vdi客户端的ip地址是接入方式为portal接入时对应的网段中的ip地址的情形下,vdi控制器c确定用户1可访问的虚拟桌面为服务器3上运行的虚拟主机提供的虚拟桌面3和服务器4上运行的虚拟主机提供的虚拟桌面4。
需要说明的是,以上4个虚拟桌面上可访问的网络资源均不同。
以vdi控制器c确定出用户1可访问的虚拟桌面为服务器1上运行的虚拟主机提供的虚拟桌面1和服务器2上运行的虚拟主机提供的虚拟桌面2为例,vdi控制器c可以通过网关a向vdi客户端发送携带有服务器1上提供虚拟桌面1的虚拟主机的ip地址和服务器2上提供虚拟桌面2的虚拟主机的ip地址的访问响应。后续用户1可以选择一个待访问的虚拟桌面,假设用户1选择了服务器1上运行的虚拟主机提供的虚拟桌面1,用户1就可以通过vdi客户端访问服务器1上运行的虚拟主机提供的虚拟桌面1。
vdi控制器c在确定出用户1可访问的虚拟桌面后,还会将这些可访问的虚拟桌面的标识信息同步给认证服务器a。
认证服务器a在接收到这些标识信息后,会将这些标识信息随同用户1的用户信息、用户1的用户组、终端设备1的设备类型和终端设备1上的vdi客户端的ip地址一起同步给认证服务器b。
认证服务器b依据接收到的认证服务器a同步的这些信息,进一步确定用户1在标识信息对应的虚拟桌面上访问网络资源的访问权限,生成对应的acl,并发送给网关b。
仍以vdi控制器c确定出用户1可访问的虚拟桌面为服务器1上运行的虚拟主机提供的虚拟桌面1和服务器2上运行的虚拟主机提供的虚拟桌面2为例,例如,认证服务器确定用户1在虚拟桌面1上访问网络资源的访问权限为仅允许访问内网且仅允许访问人力资源(humanresources,hr)系统,认证服务器确定用户1在虚拟桌面2上访问网络资源的访问权限为允许访问外网和内网。后续如果网关b接收到用户1在服务器1上运行的虚拟主机提供的虚拟桌面上访问内网的应用服务器1的访问报文时,无需对用户1再次进行认证,可以直接依据认证服务器b发送的acl,对该访问报文进行处理,例如,网关b在依据acl确定出不允许用户1访问应用服务器1时,丢弃该访问报文;网关b在依据acl确定出允许用户1访问应用服务器1时,将该访问报文转发至应用服务器1。
由以上技术方案可以看出,在本申请实施例中,认证服务器不再仅依据用户名和用户密码区分用户访问虚拟桌面的访问权限,在确定用户访问虚拟桌面的访问权限时,还进一步结合了用户信息对应的用户组、vdi客户端的ip地址(此ip地址为基于vdi客户端的接入方式分配的)和vdi客户端所属终端设备的设备类型这些因素,以实现基于不同的用户组、不同接入方式下分配的ip地址以及不同的设备类型决策出更加细致化的用户访问虚拟桌面的访问权限,在一定程度上提高了用户访问虚拟桌面的访问安全性。
基于同一发明构思,本申请还提供了一种访问控制装置,所述装置应用于第一认证服务器,其结构示意图如图3所示,具体包括:
接收模块31,用于接收第一网关设备发送的认证请求,所述认证请求为所述第一网关设备在接收到用户通过终端设备上的vdi客户端发送的访问虚拟桌面的第一访问请求时生成的,所述认证请求中包括有所述第一访问请求中携带的所述用户的用户信息、所述终端设备的设备类型和所述vdi客户端的ip地址,所述ip地址为所述第一认证服务器或者第一网关设备根据所述vdi客户端的接入方式分配的;
生成模块32,用于在根据所述用户信息确定出所述用户的第一接入权限为允许所述用户接入所述第一网关设备时,生成所述第一接入权限对应的第一访问控制策略并发送给所述第一网关设备;
访问控制模块33,用于在接收到vdi控制器发送的查询所述用户对应的虚拟桌面的访问权限的查询请求时,生成携带有根据所述用户信息对应的用户组、所述设备类型和所述ip地址确定出的第一访问权限的查询响应,并发送给所述vdi控制器,以使所述vdi控制器在接收到所述查询响应且所述第一访问权限为允许所述用户访问虚拟桌面时,根据所述用户组、所述设备类型和所述ip地址,确定所述用户可访问的虚拟桌面,并通过所述第一网关设备向所述vdi客户端发送携带有确定出的虚拟桌面的标识信息的第一访问响应,由所述用户根据所述标识信息选择对应的待访问的虚拟桌面,并通过所述vdi客户端访问选择出的虚拟桌面,其中,所述查询请求为所述vdi控制器在接收到所述第一网关设备发送的所述第一访问请求时生成的,所述第一访问请求为所述第一网关设备在接收到所述第一访问控制策略时转发给所述vdi控制器的。
优选地,所述生成模块,还用于:
在根据所述认证请求确定出所述用户的第二接入权限为不允许接入所述第一网关设备时,生成所述第二接入权限对应的第二访问控制策略并发送给所述第一网关设备,以使所述第一网关设备根据所述第二访问控制策略,丢弃所述第一访问请求。
优选地,所述访问控制模块,还用于:
根据所述用户组、所述设备类型、所述ip地址和接收的vdi控制器发送的所述标识信息,确定所述用户在所述标识信息对应的虚拟桌面上访问网络的第二访问权限;
所述生成模块,还用于生成所述第二访问权限对应的第二访问控制策略,并将所述第二访问控制策略发送给第二网关设备,以使所述第二网关设备根据所述第二访问控制策略,对接收到的所述用户通过所述vdi客户端发送的访问网络的访问报文进行处理。
优选地,所述装置还包括:
同步模块(图3中未示出),用于在接收到所述vdi控制器发送的所述标识信息后,将所述用户信息、所述用户组、所述设备类型、所述ip地址和所述标识信息同步给第二认证服务器,以使所述第二认证服务器根据所述用户组、所述设备类型、所述ip地址和所述标识信息,确定所述用户在所述标识信息对应的虚拟桌面上访问网络的第三访问权限,生成所述第三访问权限对应的第三访问控制策略,并将所述第三访问控制策略发送给第三网关设备,由所述第三网关设备根据所述第三访问控制策略,对接收到的所述用户通过所述vdi客户端发送的访问网络的访问报文进行处理。
优选地,所述确定出的虚拟桌面的标识信息为提供所述确定出的虚拟桌面的虚拟主机的ip地址或者端口号信息。
由以上技术方案可以看出,在本申请实施例中,认证服务器不再仅依据用户名和用户密码区分用户访问虚拟桌面的访问权限,在确定用户访问虚拟桌面的访问权限时,还进一步结合了用户信息对应的用户组、vdi客户端的ip地址(此ip地址为基于vdi客户端的接入方式分配的)和vdi客户端所属终端设备的设备类型这些因素,以实现基于不同的用户组、不同接入方式下分配的ip地址以及不同的设备类型决策出更加细致化的用户访问虚拟桌面的访问权限,在一定程度上提高了用户访问虚拟桌面的访问安全性。
本申请实施例还提供了一种电子设备,如图4所示,包括处理器41和机器可读存储介质42,所述机器可读存储介质42存储有能够被所述处理器1401执行的机器可执行指令,所述处理器41被所述机器可执行指令促使:实现上述访问控制方法的步骤。
上述的机器可读存储介质可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,机器可读存储介质还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述访问控制方法的步骤。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
1.一种访问控制方法,其特征在于,所述方法应用于第一认证服务器,所述方法包括:
接收第一网关设备发送的认证请求,所述认证请求为所述第一网关设备在接收到用户通过终端设备上的虚拟桌面基础架构vdi客户端发送的访问虚拟桌面的第一访问请求时生成的,所述认证请求中包括有所述第一访问请求中携带的所述用户的用户信息、所述终端设备的设备类型和所述vdi客户端的ip地址,所述ip地址为所述第一认证服务器或者所述第一网关设备根据所述vdi客户端的接入方式分配的;
在根据所述用户信息确定出所述用户的第一接入权限为允许所述用户接入所述第一网关设备时,生成所述第一接入权限对应的第一访问控制策略并发送给所述第一网关设备;
在接收到vdi控制器发送的查询所述用户对应的虚拟桌面的第一访问权限的查询请求时,生成携带有根据所述用户信息对应的用户组、所述设备类型和所述ip地址确定出的所述第一访问权限的查询响应,并发送给所述vdi控制器,以使所述vdi控制器在接收到所述查询响应且所述第一访问权限为允许所述用户访问虚拟桌面时,根据所述用户组、所述设备类型和所述ip地址,确定所述用户可访问的虚拟桌面,并通过所述第一网关设备向所述vdi客户端发送携带有确定出的虚拟桌面的标识信息的第一访问响应,由所述用户根据所述标识信息选择对应的待访问的虚拟桌面,并通过所述vdi客户端访问选择出的虚拟桌面,其中,所述查询请求为所述vdi控制器在接收到所述第一网关设备发送的所述第一访问请求时生成的,所述第一访问请求为所述第一网关设备在接收到所述第一访问控制策略时转发给所述vdi控制器的。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在根据所述认证请求确定出所述用户的第二接入权限为不允许接入所述第一网关设备时,生成所述第二接入权限对应的第二访问控制策略并发送给所述第一网关设备,以使所述第一网关设备根据所述第二访问控制策略,丢弃所述第一访问请求。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述用户组、所述设备类型、所述ip地址和接收的vdi控制器发送的所述标识信息,确定所述用户在所述标识信息对应的虚拟桌面上访问网络的第二访问权限;
生成所述第二访问权限对应的第二访问控制策略,并将所述第二访问控制策略发送给第二网关设备,以使所述第二网关设备根据所述第二访问控制策略,对接收到的所述用户通过所述vdi客户端发送的访问网络的访问报文进行处理。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收到所述vdi控制器发送的所述标识信息后,将所述用户信息、所述用户组、所述设备类型、所述ip地址和所述标识信息同步给第二认证服务器,以使所述第二认证服务器根据所述用户组、所述设备类型、所述ip地址和所述标识信息,确定所述用户在所述标识信息对应的虚拟桌面上访问网络的第三访问权限,生成所述第三访问权限对应的第三访问控制策略,并将所述第三访问控制策略发送给第三网关设备,由所述第三网关设备根据所述第三访问控制策略,对接收到的所述用户通过所述vdi客户端发送的访问网络的访问报文进行处理。
5.根据权利要求1所述的方法,其特征在于,所述确定出的虚拟桌面的标识信息为提供所述确定出的虚拟桌面的虚拟主机的ip地址或者端口号信息。
6.一种访问控制装置,其特征在于,所述装置应用于第一认证服务器,所述装置包括:
接收模块,用于接收第一网关设备发送的认证请求,所述认证请求为所述第一网关设备在接收到用户通过终端设备上的虚拟桌面基础架构vdi客户端发送的访问虚拟桌面的第一访问请求时生成的,所述认证请求中包括有所述第一访问请求中携带的所述用户的用户信息、所述终端设备的设备类型和所述vdi客户端的ip地址,所述ip地址为所述第一认证服务器或者所述第一网关设备根据所述vdi客户端的接入方式分配的;
生成模块,用于在根据所述用户信息确定出所述用户的第一接入权限为允许所述用户接入所述第一网关设备时,生成所述第一接入权限对应的第一访问控制策略并发送给所述第一网关设备;
访问控制模块,用于在接收到vdi控制器发送的查询所述用户1对应的虚拟桌面的第一访问权限的查询请求时,生成携带有根据所述用户信息对应的用户组、所述设备类型和所述ip地址确定出的所述第一访问权限的查询响应,并发送给所述vdi控制器,以使所述vdi控制器在接收到所述查询响应且所述第一访问权限为允许所述用户访问虚拟桌面时,根据所述用户组、所述设备类型和所述ip地址,确定所述用户可访问的虚拟桌面,并通过所述第一网关设备向所述vdi客户端发送携带有确定出的虚拟桌面的标识信息的第一访问响应,由所述用户根据所述标识信息选择对应的待访问的虚拟桌面,并通过所述vdi客户端访问选择出的虚拟桌面,其中,所述查询请求为所述vdi控制器在接收到所述第一网关设备发送的所述第一访问请求时生成的,所述第一访问请求为所述第一网关设备在接收到所述第一访问控制策略时转发给所述vdi控制器的。
7.根据权利要求6所述的装置,其特征在于,所述生成模块,还用于:
在根据所述认证请求确定出所述用户的第二接入权限为不允许接入所述第一网关设备时,生成所述第二接入权限对应的第二访问控制策略并发送给所述第一网关设备,以使所述第一网关设备根据所述第二访问控制策略,丢弃所述第一访问请求。
8.根据权利要求6所述的装置,其特征在于,所述访问控制模块,还用于:
根据所述用户组、所述设备类型、所述ip地址和接收的vdi控制器发送的所述标识信息,确定所述用户在所述标识信息对应的虚拟桌面上访问网络的第二访问权限;
所述生成模块,还用于生成所述第二访问权限对应的第二访问控制策略,并将所述第二访问控制策略发送给第二网关设备,以使所述第二网关设备根据所述第二访问控制策略,对接收到的所述用户通过所述vdi客户端发送的访问网络的访问报文进行处理。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
同步模块,用于在接收到所述vdi控制器发送的所述标识信息后,将所述用户信息、所述用户组、所述设备类型、所述ip地址和所述标识信息同步给第二认证服务器,以使所述第二认证服务器根据所述用户组、所述设备类型、所述ip地址和所述标识信息,确定所述用户在所述标识信息对应的虚拟桌面上访问网络的第三访问权限,生成所述第三访问权限对应的第三访问控制策略,并将所述第三访问控制策略发送给第三网关设备,由所述第三网关设备根据所述第三访问控制策略,对接收到的所述用户通过所述vdi客户端发送的访问网络的访问报文进行处理。
10.根据权利要求6所述的装置,其特征在于,所述确定出的虚拟桌面的标识信息为提供所述确定出的虚拟桌面的虚拟主机的ip地址或者端口号信息。
技术总结