专利名称:客户端安全检测方法和权限控制系统的制作方法
技术领域:
本发明涉及通信安全技术领域,具体涉及客户端安全检测方法和权限控制系统。
背景技术:
目前,对用户权限的控制技术主要分为两类基于用户角色的权限控制和基于用户设备安全性的权限控制,它们对应的授权方式分别为基于角色的授权(role-based)和基于客户端主机安全性的授权(host-based),其中基于角色的授权将用户划分为不同的群组或角色,每个群组或角色可以访问不同的资源,然后根据用户所属的群组来对用户授权,这类授权方式也称为静态授权;基于客户端主机安全性的授权根据用户使用设备的安全状况给用户授权,这类授权方式也称为动态授权。
现有技术权限控制系统通过设置登录检测序列和资源保护策略来实现基于客户端主机安全性的授权,具体过程为当客户端要访问权限控制系统时,权限控制系统先按照预先设定的登录检测序列检测客户端的安全性,若检测通过,则允许客户端登录,否则,拒绝客户端登录;当客户端登录权限控制系统后,要访问某一项具体的资源时,权限控制系统还需检测客户端当前是否满足预先设定的访问该资源的安全检测条件,例如权限控制系统预先设定客户端在防火墙运行、Google桌面不运行且当前使用的浏览器为IE6.0或以后的版本时,可以访问Web1资源;设定客户端在防火墙运行且当前使用的浏览器为IE6.0或以后的版本时,可以访问Web2资源。
以下以F5厂商的FirePass设备为例,对基于客户端主机安全性的授权中的登录客户端的安全检测过程进行说明,如图1所示,其具体步骤如下步骤101权限控制系统接收客户端发来的登录请求。
步骤102权限控制系统根据预先设定的登录检测序列,判断客户端的防火墙是否处于运行状态,若是,执行步骤103;否则,拒绝客户端登录,本流程结束。
步骤103权限控制系统根据预先设定的登录检测序列,判断客户端的Google桌面是否处于运行状态,若是,拒绝客户端登录;否则,允许客户端登录。
通过以上分析可以得知,目前基于客户端主机安全性授权的权限控制系统,需要通过两个步骤完成对客户端的授权第一个步骤通过预先设定的登录检测序列,来检测客户端是否可以登录自身。
第二个步骤通过对每一项具体的资源设置保护策略,来检测客户端是否可以访问自身具体的资源。
现有技术的缺点是一、登录检测序列对客户端登录的检测过于苛刻,只有在满足所有登录检测条件时,客户端才可以登录权限控制系统,这降低了客户端登录权限控制系统的成功率。例如在实际应用中,若客户端在某次登录时要访问的是安全性需求较低的资源,此时只需满足部分登录检测条件即可,而现有技术则不考虑客户端访问的个性化安全需求。
二、登录检测序列和对资源的保护策略分开配置,使得两者可能存在不一致性,从而导致客户端访问资源失败。例如登录检测序列中不包含防火墙检测,而为某一项资源设置的保护策略中则要求防火墙运行,此时权限控制系统在登录检测结果中查找不到防火墙是否运行的信息,因此,即使防火墙正在运行,权限控制系统也会拒绝客户端访问该项资源。
三、需要两次检测客户端主机的安全性,即在登录时需要进行一次安全检测,在访问具体的资源时,还需要进行一次保护策略检测,降低了权限控制系统的工作效率。
四、登录检测序列较长,管理员较难维护。
五、不能及时响应客户端主机安全性的变化和权限控制系统的新要求,可能会造成授权错误。现有技术只在客户端登录时检测一次客户端的安全性,当客户端长时间在线时,客户端的某一项登录安全序列的状态可能发生更改例如防火墙由运行转为不运行状态,或者,权限控制系统更改了对某项资源的保护策略,此时,权限控制系统仍按照原有的登录检测结果或资源保护策略对客户端授权,会造成授权错误。
发明内容
本发明提供客户端安全检测方法和权限控制系统,以提高客户端登录权限控制系统的成功率。
本发明的技术方案是这样实现的一种客户端安全检测方法,权限控制系统预先设定安全评估策略,包括A、权限控制系统收到客户端发来的登录请求,选择一个预先设定的安全评估策略,在该安全评估策略中选择一个检测类;B、权限控制系统从客户端提取该检测类的所有检测属性,判断提取的所有检测属性是否与预先设定的该检测类的其中一个检测对象的所有检测属性匹配,若是,执行步骤C;否则,执行步骤D;C、权限控制系统判断该安全评估策略是否还存在未检测的检测类,若是,选择一个未检测的检测类,转至步骤B;否则,判定客户端通过安全检测,本流程结束;D、权限控制系统判断是否所有安全评估策略都已被检测过,若是,判定客户端未通过安全检测;否则,选择下一个安全评估策略,转至步骤A执行在该安全评估策略中选择一个检测类的动作。
权限控制系统预先设定每个安全评估策略对应的可访问资源列表,步骤C所述权限控制系统判定客户端通过安全检测之后进一步包括权限控制系统获取预先设定的当前安全评估策略对应的可访问资源列表,在该可访问资源列表中,查找该客户端所属的用户群组可访问的资源,将查找到的资源作为客户端在自身最终可访问的资源。
该方法进一步包括权限控制系统预先设定一个安全检测时间间隔,步骤C所述权限控制系统判定客户端通过安全检测之后进一步包括权限控制系统每隔所述预定安全检测时间间隔,转至步骤A执行所述选择一个安全评估策略的动作。
步骤C所述权限控制系统判定客户端通过安全检测之后进一步包括权限控制系统检测到安全评估策略发生更改,转至步骤A执行所述选择一个安全评估策略的动作。
所述检测类为操作系统检测类、浏览器检测类、防火墙检测类、杀毒软件检测类、证书检测类、文件检测类中的一种或任意组合。
所述方法进一步包括权限控制系统预先为每个安全评估策略设定一个安全等级;步骤A所述权限控制系统选择一个安全评估策略为选择一个安全等级最高的安全评估策略;步骤D所述权限控制系统选择下一个安全评估策略为选择下一个安全等级的安全评估策略。
一种权限控制系统,包括安全评估策略设定模块和安全检测模块,其中安全评估策略设定模块,用于为客户端设定安全评估策略,根据安全检测模块的请求,将安全评估策略发送给安全检测模块;安全检测模块,用于在收到客户端发来的登录请求后,向安全评估策略设定模块请求安全评估策略,判断安全评估策略设定模块发来的每个检测类的所有检测对象中,是否分别有一个检测对象的所有检测属性与从客户端提取的对应检测类的所有检测属性匹配,若匹配,则判定客户端通过安全检测;若不匹配,则继续向安全评估策略设定模块请求安全评估策略。
所述安全评估策略设定模块进一步用于,为每个安全评估策略设定可访问资源列表;所述系统进一步包括用户群组可访问资源记录模块,用于记录客户端所属的用户群组可访问的资源列表,并根据安全检测模块的请求,将客户端所属的用户群组可访问的资源列表发送给安全检测模块;所述安全检测模块进一步用于,在客户端通过安全检测时,向安全评估策略设定模块请求当前安全评估策略对应的可访问资源列表,同时向用户群组可访问资源记录模块请求该客户端所属的用户群组可访问的资源列表,在该安全评估策略对应的可访问资源列表中查找该客户端所属的用户群组可访问的资源,将查找到的资源作为客户端在自身最终可访问的资源。
所述安全评估策略设定模块进一步用于,检测到自身的安全评估策略发生更改,向安全检测模块发送更改指示;所述安全检测模块进一步用于,根据安全评估策略设定模块发来的更改指示,向安全评估策略设定模块重新获取安全评估策略,判断安全评估策略设定模块发来的每一个检测类的所有检测对象中,是否分别有一个检测对象的所有检测属性与从客户端提取的对应检测类的所有检测属性匹配,若匹配,则判定客户端通过安全检测;若不匹配,则继续向安全评估策略设定模块请求安全评估策略。
与现有技术相比,本发明通过权限控制系统预先设定至少一个安全评估策略,当权限控制系统收到客户端发来的登录请求后,在预先设定的安全评估策略中选择一个安全评估策略,从客户端提取该安全评估策略的每个检测类的所有检测属性,若从客户端提取的每个检测类的所有检测属性都与预先设定的对应检测类的其中一个检测对象的所有检测属性匹配,判定客户端通过安全检测,使得客户端只要通过任意一个安全评估策略就可登录权限控制系统,提高了客户端登录权限控制系统的成功率;同时,本发明通过为每个安全评估策略设定不同的可访问资源列表,使得客户端可根据自身通过的不同的安全评估策略访问不同的资源,使得资源访问的保护策略与客户端登录的安全策略一致,提高了客户端访问资源的成功率;同时本发明在客户端访问资源时无需再进行一次安全检测,提高了权限控制系统的工作效率;且,本发明可根据实际安全性需求,对各检测类进行任意组合而组成不同的安全评估策略,便于管理员的维护;另外,本发明通过定时对客户端进行安全检测,或在客户端的检测属性或安全评估策略发生更改时对客户端重新进行安全检测,使得权限控制系统能够及时响应客户端主机安全性的变化以及权限控制系统的新要求,提高了授权可靠性。
图1为现有的基于客户端主机安全性的授权中的客户端登录的安全检测流程图;图2为本发明实施例提供的对客户端进行安全检测的流程图;图3为本发明实施例提供的安全评估策略的组成示意图;图4为本发明实施例提供的对客户端进行安全检测的权限控制系统的组成示意图。
具体实施例方式
下面结合附图及具体实施例对本发明再作进一步详细的说明。
图2是本发明实施例提供的对客户端进行安全检测的流程图,如图2所示,其具体步骤如下步骤201权限控制系统预先设定至少一个安全评估策略,如图3所示,每个安全评估策略至少包括一个检测类,每个检测类至少包括一个检测对象,每个检测对象对应各自的检测属性,为每个安全评估策略设定一个安全等级,为每个安全评估策略设定一个可访问资源列表。
检测类指的是对客户端进行安全检测的目标对象,如图3所示,可包括操作系统检测类、浏览器检测类、防火墙检测类、杀毒软件检测类、证书检测类、文件检测类等。每个检测类具有各自的检测属性,如图3所示,操作系统检测类可包括检测属性操作系统类型、操作系统版本、操作系统补丁等,浏览器检测类可包括检测属性浏览器版本、浏览器补丁等。
检测对象指的是检测类的一个实例,是对检测类的各种检测属性的实例化。如图3所示,操作系统检测对象可为safe-win98或safe-win2000,其中,safe-win98对应的检测属性为操作系统类型为Windows,操作系统版本为98,且操作系统安装了KB0111补丁;safe-win2000对应的检测属性为操作系统类型为Windows,操作系统版本为2000,且操作系统安装了KB0111补丁。浏览器检测对象可为safe-ie6或safe-netscape7,其中,safe-ie6对应的检测属性为浏览器版本为IE6.098,且浏览器安装了KB01432补丁;safe-netscape7对应的检测属性为浏览器版本为NETSCAPE7.0,且浏览器安装了KB0133补丁。
安全评估策略的安全等级与在该安全评估策略下可访问的资源的多少有关,例如可以为安全等级高的安全评估策略设定更多的可访问资源。
步骤202权限控制系统收到客户端发来的登录请求,根据预先设定的安全等级,在预先设定的安全评估策略中选择安全等级最高的安全评估策略。
步骤203权限控制系统在该安全评估策略中选择一个检测类。
步骤204权限控制系统读取预先设定的该检测类的检测对象、以及检测对象的检测属性。
步骤205权限控制系统从客户端提取与选择的该安全评估策略的检测类对应的检测属性。
例如若检测类为操作系统,则权限控制系统从客户端提取操作系统的类型、版本、补丁等检测属性信息。
步骤206权限控制系统判断从客户端提取的检测类的所有检测属性是否与预先设定的该检测类的其中一个检测对象的所有检测属性匹配,若是,执行步骤207;否则,执行步骤212。
当权限控制系统预先定义的安全评估策略的某个检测类中包含一个以上的检测对象时,只要从客户端提取的该检测类的所有检测属性与权限控制系统预先设定的该检测类的其中一个检测对象的所有检测属性匹配,则确定该客户端通过该检测类的安全检测。
步骤207权限控制系统判定客户端通过该检测类的安全检测,判断该安全评估策略是否还存在未检测的检测类,若是,执行步骤208;否则,执行步骤209。
步骤208权限控制系统在当前安全评估策略中选择一个未检测的检测类,转至步骤204。
步骤209权限控制系统从自身读取预先设定的该安全评估策略对应的可访问资源列表。
步骤210权限控制系统从自身读取预先设定的该客户端所属的用户群组的可访问资源列表。
步骤211权限控制系统在该安全评估策略对应的可访问资源列表中,查找该客户端所属的用户群组可访问的资源,将查找到的资源作为客户端在该权限控制系统上最终可访问的资源,本流程结束。
当客户端要访问权限控制系统的某一项资源时,权限控制系统首先判断该资源是否包含在客户端在自身最终可访问的资源之内,若是,允许客户端访问该资源;否则,拒绝客户端访问该资源。
步骤212权限控制系统判定客户端未通过该检测类的安全检测,从而判定客户端未通过该安全评估策略的安全检测,判断是否所有安全评估策略都已被检测过,若是,执行步骤213;否则,执行步骤214。
步骤213权限控制系统判定客户端未通过安全检测,拒绝客户端登录自身,本流程结束。
步骤214权限控制系统选择下一个安全等级的安全评估策略,转至步骤203。
由于,客户端在线期间,客户端的主机安全性可能发生更改例如客户端的某个检测属性发生更改,同时,权限控制系统的某个安全评估策略也可能发生更改,本发明通过以下两种方式使得权限控制系统能够及时响应主机安全性或安全评估策略的更改方式一、当客户端在线时,权限控制系统每隔预定安全检测时间间隔对客户端进行一次安全检测。
方式二、当客户端在线时,权限控制系统只要检测到安全评估策略发生更改,就对客户端重新进行安全检测。
图4是本发明实施例提供的对客户端进行安全检测的权限控制系统的组成示意图,如图4所示,其主要包括安全评估策略设定模块41、用户群组可访问资源记录模块42和安全检测模块43,其中安全评估策略设定模块41用于为客户端设定至少一个安全评估策略,每个安全评估策略至少包括一个检测类,每个检测类至少包括一个检测对象,为每个检测对象设定检测属性,并为每个安全评估策略设定一个安全等级和一个可访问资源列表;当收到安全检测模块43发来的获取安全评估策略请求后,按照安全等级的高低,选择一个未发送给安全检测模块43的、安全等级最高的安全评估策略发送给安全检测模块43;当收到安全检测模块43发来的获取可访问资源请求后,将最近一次发送给安全检测模块43的安全评估策略对应的可访问资源列表发送给安全检测模块43。
进一步地,安全评估策略设定模块41用于,检测到自身的安全评估策略发生更改,向安全检测模块43发送安全评估策略更改指示。
用户群组可访问资源记录模块42用于保存客户端标识与用户群组标识的对应关系,并记录各用户群组的可访问资源列表,当收到安全检测模块43发来的携带客户端标识的获取可访问资源请求后,根据该客户端标识,将对应的用户群组的可访问资源列表发送给安全检测模块43。
安全检测模块43用于在收到客户端发来的登录请求后,向安全评估策略设定模块41发送获取安全评估策略的请求,判断安全评估策略设定模块41返回的每个检测类的所有检测对象中,是否分别有一个检测对象的所有检测属性与从客户端提取的对应检测类的所有检测属性匹配,若匹配,则判定客户端通过安全检测,向安全评估策略设定模块41发送获取可访问资源请求,同时向用户群组可访问资源记录模块42发送携带客户端标识的获取可访问资源请求,在安全评估策略设定模块41返回的该安全评估策略对应的可访问资源列表中,查找用户群组可访问资源记录模块42返回的该客户端所属的用户群组可访问的资源,将查找到的资源作为客户端在自身最终可访问的资源;若不匹配,则判定客户端未通过当前安全评估策略的安全检测,继续向安全策略评估设定模块41获取下一个安全等级的安全评估策略。
安全检测模块43进一步用于,在收到安全评估策略设定模块41发来的安全评估策略更改指示后,向安全评估策略设定模块41发送重新获取安全评估策略的请求以重新对客户端进行安全检测。
以上所述仅为本发明的过程及方法实施例,并不用以限制本发明,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种客户端安全检测方法,其特征在于,权限控制系统预先设定安全评估策略,包括A、权限控制系统收到客户端发来的登录请求,选择一个预先设定的安全评估策略,在该安全评估策略中选择一个检测类;B、权限控制系统从客户端提取该检测类的所有检测属性,判断提取的所有检测属性是否与预先设定的该检测类的其中一个检测对象的所有检测属性匹配,若是,执行步骤C;否则,执行步骤D;C、权限控制系统判断该安全评估策略是否还存在未检测的检测类,若是,选择一个未检测的检测类,转至步骤B;否则,判定客户端通过安全检测,本流程结束;D、权限控制系统判断是否所有安全评估策略都已被检测过,若是,判定客户端未通过安全检测;否则,选择下一个安全评估策略,转至步骤A执行在该安全评估策略中选择一个检测类的动作。
2.如权利要求1所述的客户端安全检测方法,其特征在于,权限控制系统预先设定每个安全评估策略对应的可访问资源列表,步骤C所述权限控制系统判定客户端通过安全检测之后进一步包括权限控制系统获取预先设定的当前安全评估策略对应的可访问资源列表,在该可访问资源列表中,查找该客户端所属的用户群组可访问的资源,将查找到的资源作为客户端在自身最终可访问的资源。
3.如权利要求1所述的客户端安全检测方法,其特征在于,该方法进一步包括权限控制系统预先设定一个安全检测时间间隔,步骤C所述权限控制系统判定客户端通过安全检测之后进一步包括权限控制系统每隔所述预定安全检测时间间隔,转至步骤A执行所述选择一个安全评估策略的动作。
4.如权利要求1所述的客户端安全检测方法,其特征在于,步骤C所述权限控制系统判定客户端通过安全检测之后进一步包括权限控制系统检测到安全评估策略发生更改,转至步骤A执行所述选择一个安全评估策略的动作。
5.如权利要求1所述的客户端安全检测方法,其特征在于,所述检测类为操作系统检测类、浏览器检测类、防火墙检测类、杀毒软件检测类、证书检测类、文件检测类中的一种或任意组合。
6.如权利要求1或2所述的客户端安全检测方法,其特征在于,所述方法进一步包括权限控制系统预先为每个安全评估策略设定一个安全等级;步骤A所述权限控制系统选择一个安全评估策略为选择一个安全等级最高的安全评估策略;步骤D所述权限控制系统选择下一个安全评估策略为选择下一个安全等级的安全评估策略。
7.一种权限控制系统,其特征在于,包括安全评估策略设定模块和安全检测模块,其中安全评估策略设定模块,用于为客户端设定安全评估策略,根据安全检测模块的请求,将安全评估策略发送给安全检测模块;安全检测模块,用于在收到客户端发来的登录请求后,向安全评估策略设定模块请求安全评估策略,判断安全评估策略设定模块发来的每个检测类的所有检测对象中,是否分别有一个检测对象的所有检测属性与从客户端提取的对应检测类的所有检测属性匹配,若匹配,则判定客户端通过安全检测;若不匹配,则继续向安全评估策略设定模块请求安全评估策略。
8.如权利要求7所述的权限控制系统,其特征在于,所述安全评估策略设定模块进一步用于,为每个安全评估策略设定可访问资源列表;所述系统进一步包括用户群组可访问资源记录模块,用于记录客户端所属的用户群组可访问的资源列表,并根据安全检测模块的请求,将客户端所属的用户群组可访问的资源列表发送给安全检测模块;所述安全检测模块进一步用于,在客户端通过安全检测时,向安全评估策略设定模块请求当前安全评估策略对应的可访问资源列表,同时向用户群组可访问资源记录模块请求该客户端所属的用户群组可访问的资源列表,在该安全评估策略对应的可访问资源列表中查找该客户端所属的用户群组可访问的资源,将查找到的资源作为客户端在自身最终可访问的资源。
9.如权利要求7所述的权限控制系统,其特征在于,所述安全评估策略设定模块进一步用于,检测到自身的安全评估策略发生更改,向安全检测模块发送更改指示;所述安全检测模块进一步用于,根据安全评估策略设定模块发来的更改指示,向安全评估策略设定模块重新获取安全评估策略,判断安全评估策略设定模块发来的每一个检测类的所有检测对象中,是否分别有一个检测对象的所有检测属性与从客户端提取的对应检测类的所有检测属性匹配,若匹配,则判定客户端通过安全检测;若不匹配,则继续向安全评估策略设定模块请求安全评估策略。
全文摘要
本发明公开了一种客户端安全检测方法,包括预先设定至少一个安全评估策略,当权限控制系统收到客户端发来的登录请求后,选择一个预先设定的安全评估策略,从客户端提取该安全评估策略的每个检测类的所有检测属性,若提取的每个检测类的所有属性都与预先设定的对应检测类的其中一个检测对象的所有检测属性匹配,判定客户端通过安全检测;本发明同时公开了一种权限控制系统,包括安全评估策略设定模块和安全检测模块。本发明使得客户端只要通过任意一个安全评估策略的安全检测就可登录权限控制系统,提高了客户端访问权限控制系统的成功率。
文档编号H04L29/06GK1921389SQ200610111228
公开日2007年2月28日 申请日期2006年8月15日 优先权日2006年8月15日
发明者雷公武, 薛明, 梁鹏 申请人:杭州华为三康技术有限公司