本发明涉及信息安全
技术领域:
,具体涉及一种基于角色和终端可信性的接入访问控制方法及装置。
背景技术:
:终端是用户访问内网资源载体,也是内网信息泄露的主要渠道。目前终端常用的操作系统变得越来越庞大,各种安全漏洞不可避免,所以建立在操作系统之上的各种安全防护技术(如病毒检测、木马查杀、网络防火墙和入侵监测等)不能从根本上解决问题。系统平台的可信(即平台的行为是按照预定的方式执行),在很大程度上依赖于计算平台的完整性,因此,要从根本上保证终端自身执行环境的安全,首先要考虑的是终端系统的完整性不能遭到破坏。现有技术中,终端接入内网时,对其缺乏特定的身份识别机制,只需一根网线或者在局域网ap信号覆盖的范围之内,即可连入内部网络获取文件资料。本申请发明人在实施本发明的过程中,发现现有技术的方法,至少存在如下技术问题:访问控制的目的是为了限制访问主体(用户、进程、服务等)对访问客体(文件、系统等)的访问权限,从而使得计算机应用系统能够在合法范围内使用,当前的访问控制策略无法解决合法用户终端存在安全漏洞或被入侵而产生的非法操作,对数据造成非授权访问等安全问题。由此可知,现有技术中的方法存在安全性不高的技术问题。技术实现要素:有鉴于此,本发明提供了一种基于角色和终端可信性的接入访问控制方法及装置,用以解决或者至少部分解决现有技术中的方法存在的安全性不高的技术问题。本发明第一方面提供了一种基于角色和终端可信性的接入访问控制方法,包括:步骤s1:接收用户通过终端发送的接入请求,其中,接入请求中包含用户的身份信息,终端通过tpm预先构建终端可信执行环境;步骤s2:对用户的身份信息进行验证,验证通过后,通过tpm采集终端的身份信息、系统关键文件度量值信息和安全信息,其中,安全信息包括系统危险性信息和软件更新时间信息;步骤s3:根据终端采集的系统关键文件度量值信息与预先构建的可信执行环境进行匹配,若匹配通过,则执行环境可信;步骤s4:根据身份信息、执行环境可信性情况、系统危险性信息以及软件更新时间信息,确定终端的安全等级,步骤s5:根据终端的安全等级判断对应的终端是否准许接入,当终端的安全等级高于预设等级时,判定终端允许接入;步骤s6:获取用户身份信息,并将获取的用户身份信息与预先构建的用户-角色数据库进行对比,获取用户角色信息;步骤s7:根据用户角色信息和终端的安全等级,确定用户对资源对象的访问权限。在一种实施方式中,步骤s1中终端通过tpm预先构建终端可信执行环境,包括:通过tpm采集终端的系统关键文件度量值;对比采集的系统关键文件度量值与tpm内部pcr值是否一致;若一致,认为终端执行环境可信,保存第一对比结果;若不一致,认为终端执行环境不可信,保存第二对比结果。在一种实施方式中,步骤s2中通过tpm采集终端的身份信息、系统关键文件度量值信息和安全信息,具体包括:通过tpm采集终端的cpu序列号、内存序列号、主板序列号和物理地址,将其作为终端的身份信息,并散列所采集的身份信息,获取终端唯一身份标识;采集系统安全软件病毒扫描日志信息;采集系统安全软件更新日志信息。在一种实施方式中,步骤s4具体包括:根据执行环境可信性情况确定终端安全的得分,根据系统危险性信息确定系统危险项的得分,根据软件更新时间信息确定软件更新项的得分;根据预设满分、终端安全的得分、系统危险项的得分、软件更新项的得分以及对应的预设权重,获得安全性分数;根据安全性分数和终端的身份信息,确定终端的安全等级。在一种实施方式中,安全性分数的计算具体包括:c=100-w1×c1-w2×c2-…-wn×cn其中,终端安全积分c计算采用评分制,预设满分为100分,ci表示系统度量危险项分数,为影响系统安全性的因素,wi表示危险项分数所占权重。在一种实施方式中,步骤s7具体包括:获取用户角色与对应终端的安全等级;对比预先构建的资源权限数据库,根据用户角色与终端安全等级获取对应访问权限信息。在一种实施方式中,当终端的安全等级低于预设等级时,判定终端不允许接入。基于同样的发明构思,本发明第二方面提供了一种基于角色和终端可信性的接入访问控制装置,包括:接入请求接收模块,用于接收用户通过终端发送的接入请求,其中,接入请求中包含用户的身份信息,终端通过tpm预先构建终端可信执行环境;身份验证模块,用于对用户的身份信息进行验证,验证通过后,通过tpm采集终端的身份信息、系统关键文件度量值信息和安全信息,其中,安全信息包括系统危险性信息和软件更新时间信息;执行环境可信性判定模块,用于根据终端采集的系统关键文件度量值信息与预先构建的可信执行环境进行匹配,若匹配通过,则执行环境可信;安全等级确定模块,用于根据身份信息、执行环境可信性情况、系统危险性信息以及软件更新时间信息,确定终端的安全等级,接入判定模块,用于根据终端的安全等级判断对应的终端是否准许接入,当终端的安全等级高于预设等级时,判定终端允许接入;用户角色获取模块,用于获取用户身份信息,并将获取的用户身份信息与预先构建的用户-角色数据库进行对比,获取用户角色信息;访问权限确定模块,用于根据用户角色信息和终端的安全等级,确定用户对资源对象的访问权限。基于同样的发明构思,本发明第三方面提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被执行时实现第一方面所述的方法。基于同样的发明构思,本发明第四方面提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的方法。本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:本发明提供的一种基于角色和终端可信性的接入访问控制方法,服务器首先接收用户通过终端发送的接入请求,并对用户的身份信息进行验证,验证通过后,通过tpm采集终端的身份信息、系统关键文件度量值信息和安全信息;接着根据终端采集的系统关键文件度量值信息与预先构建的可信执行环境进行匹配,若匹配通过,则执行环境可信;然后根据身份信息、执行环境可信性情况、系统危险性信息以及软件更新时间信息,确定终端的安全等级,接下来,根据终端的安全等级判断对应的终端是否准许接入,当终端的安全等级高于预设等级时,判定终端允许接入;再获取用户身份信息,并将获取的用户身份信息与预先构建的用户-角色数据库进行对比,获取用户角色信息;最后根据用户角色信息和终端的安全等级,确定用户对资源对象的访问权限。相对于现有的方法而言,本发明使用tpm构建终端可信执行环境,在用户请求访问时,进行终端安全等级计算,判断是否满足最低接入等级,保证了接入终端的安全性,根据用户角色和终端接入安全等级分配资源权限,自定义终端度量信息,具有高扩展性和适应性,可以适用于内部网络环境。解决了现有技术中的方法存在的安全性不高的技术问题。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明一种基于角色和终端可信性的接入访问控制方法的流程图;图2本发明实施例的终端可信执行环境构建方法流程图;图3为本发明实施例的终端身份及安全信息采集流程图;图4为一种具体示例中终端接入安全等级计算流程图;图5为一种具体示例中接入访问控制方法的交互示意图;图6为本发明实施例的基于角色和终端可信性的接入访问控制方法模型图;图7为本发明实施例中一种基于角色和终端可信性的接入访问控制装置的结构框图;图8为本发明实施例中计算机可读存储介质的结构图;图9为本发明实施例中计算机设备的结构图。具体实施方式本申请发明人通过大量的实践发现:现有技术中,终端接入内网时,对其缺乏特定的身份识别机制,只需一根网线或者在局域网ap信号覆盖的范围之内,即可连入内部网络获取文件资料。当前的访问控制策略无法解决合法用户终端存在安全漏洞或被入侵而产生的非法操作,对数据造成非授权访问等安全问题,并没有全面的考虑到终端安全状态与资源权限所存在的关联,相同用户使用安全性不同的终端,其对资源的访问权限应当不同。通过设计基于角色和终端可信性的接入访问控制方法,能有效保障内网接入终端自身的安全性和内网访问控制权限分配的安全性,能够根据用户角色和接入终端当前的安全等级调整用户权限,具有安全性高、授权管理便捷、可以根据工作需要灵活调整终端度量内容、容易实现的优点。为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。实施例一本实施例提供了一种基于角色和终端可信性的接入访问控制方法,应用于服务器,请参见图1,该方法包括:步骤s1:接收用户通过终端发送的接入请求,其中,接入请求中包含用户的身份信息,终端通过tpm预先构建终端可信执行环境。具体来说,tpm(trustedplatformmodule)安全芯片是指符合tpm(可信赖平台模块)标准的安全芯片,它可以有效地保护pc,防止非法用户访问。步骤s2:对用户的身份信息进行验证,验证通过后,通过tpm采集终端的身份信息、系统关键文件度量值信息和安全信息,其中,安全信息包括系统危险性信息和软件更新时间信息。具体来说,服务器在接收用户发送的接入请求后,会对用户的身份信息进行验证。还会通过tpm采集终端的相关信息。步骤s3:根据终端采集的系统关键文件度量值信息与预先构建的可信执行环境进行匹配,若匹配通过,则执行环境可信。具体来说,本步骤主要用于判定执行环境是否可信。步骤s4:根据身份信息、执行环境可信性情况、系统危险性信息以及软件更新时间信息,确定终端的安全等级。具体来说,执行环境可信性情况、系统危险性信息以及软件更新时间信息即为本发明定义的终端度量信息,在其他实施方式中,可以进行扩展,例如可以包含采集何种安全软件日志,加入对防火墙日志等信息进行度量。然后综合上述度量信息,确定终端的安全等级。步骤s5:根据终端的安全等级判断对应的终端是否准许接入,当终端的安全等级高于预设等级时,判定终端允许接入。具体来说,预设等级可以预先设置,根据计算出的终端安全等级与预设等级的比较,从而判定是否允许接入。步骤s6:获取用户身份信息,并将获取的用户身份信息与预先构建的用户-角色数据库进行对比,获取用户角色信息。具体来说,用户-角色数据库中按照具体的应用环境划分角色,记录有用户与角色的对应关系。步骤s7:根据用户角色信息和终端的安全等级,确定用户对资源对象的访问权限。具体可以通过下述方式来实现:获取用户角色与对应终端的安全等级;对比预先构建的资源权限数据库,根据用户角色与终端安全等级获取对应访问权限信息。具体来说,资源权限数据库可以根据具体的系统资源和所允许的操作划分权限,将权限与用户角色和终端安全等级绑定。请见图6,描述了访问控制模型中各实体关联关系。在一种实施方式中,步骤s1中终端通过tpm预先构建终端可信执行环境,包括:通过tpm采集终端的系统关键文件度量值;对比采集的系统关键文件度量值与tpm内部pcr值是否一致;若一致,认为终端执行环境可信,保存第一对比结果;若不一致,认为终端执行环境不可信,保存第二对比结果。具体来说,请参见图2,示出了可信执行环境具体的构建流程。pcr为平台配置寄存器,pcr值为平台配置寄存器记录的度量值,这一系列度量值组成的序列反应了系统状态的变迁。当这个扩展序列中的某一个度量值被改变,之后的度量序列都会受到影响。在一种实施方式中,步骤s2中通过tpm采集终端的身份信息、系统关键文件度量值信息和安全信息,具体包括:通过tpm采集终端的cpu序列号、内存序列号、主板序列号和物理地址,将其作为终端的身份信息,并散列所采集的身份信息,获取终端唯一身份标识;采集系统安全软件病毒扫描日志信息;采集系统安全软件更新日志信息。具体来说,请参见图3,示出了终端身份及安全信息采集流程,安全软件病毒扫描日志信息即为系统危险性信息,系统安全软件更新日志信息即为软件更新时间信息。在一种实施方式中,步骤s4具体包括:根据执行环境可信性情况确定终端安全的得分,根据系统危险性信息确定系统危险项的得分,根据软件更新时间信息确定软件更新项的得分;根据预设满分、终端安全的得分、系统危险项的得分、软件更新项的得分以及对应的预设权重,获得安全性分数;根据安全性分数和终端的身份信息,确定终端的安全等级。在一种实施方式中,安全性分数的计算具体包括:c=100-w1×c1-w2×c2-…-wn×cn其中,终端安全积分c计算采用评分制,预设满分为100分,ci表示系统度量危险项分数,为影响系统安全性的因素,wi表示危险项分数所占权重。在具体的实施过程中,安全等级的计算如图4所示。(1)设置终端安全分数总分c为100分;(2)根据终端安全信息采集结果,判断终端执行环境是否可信,执行环境可信,设置c1=0;(3)根据终端安全信息采集结果,提取扫描日志危险项数,设置c2=1;(4)根据终端安全信息采集结果,提取安全软件更新时间,设置c3=0;(5)计算终端安全分数按照公式c=100-w1×c1-w2×c2-…-wn×cn,例如,设定关键文件结果、扫描日志结果更新日志结果三项影响权重值分别为w1=50,w2=10,w3=20,计算得出c=100-50×0-10×1-20×0=90,即终端安全分数为90分。终端安全等级可以由表1确定,其中,安全等级分为1~5级。根据对应的终端安全分数,确定对应的安全等级。例如,预设安全等级为3级时,则大于3级的终端允许接入。也就是说,接入安全等级表示终端接入所需的最低安全等级,从而保证安全性。表1终端安全等级终端安全分数说明5>90终端安全471-90终端比较安全361-70终端存在风险251-60终端风险较大1<50终端危险(6)依照安全等级划分表,确定该终端安全等级为4级;(7)终端安全等级4级高于接入安全等级2级,允许接入。在一种实施方式中,本实施例提供的方法还包括:当终端的安全等级低于预设等级时,判定终端不允许接入。其中,本发明实施例一具体阐述了服务器端的实施流程,在具体的应用过程中,接入访问控制方法包括用户、终端和服务器三端的交互。具体参加图5,其中,用户通过终端提出接入请求,终端构建可信执行环境,并采集终端的信息,通过服务器进行身份验证,服务器的执行流程包括:计算终端安全等级、判断是否允许接入、查询用户角色、查询用户对资源对象的访问权限、并向用户反馈授权结果信息。总体来说,通过本发明的技术方案,使用tpm构建终端可信执行环境,在用户请求访问时,进行终端安全等级计算,判断是否满足最低接入等级,保证了接入终端的安全性,根据用户角色和终端接入安全等级分配资源权限,自定义终端度量信息,具有高扩展性和适应性,可以适用于内部网络环境。基于同一发明构思,本申请还提供了一种与实施例一中基于角色和终端可信性的接入访问控制方法对应的装置,详见实施例二。实施例二本实施例提供了一种基于角色和终端可信性的接入访问控制装置,请参见图7,该装置为服务器,包括:接入请求接收模块201,用于接收用户通过终端发送的接入请求,其中,接入请求中包含用户的身份信息,终端通过tpm预先构建终端可信执行环境;身份验证模块202,用于对用户的身份信息进行验证,验证通过后,通过tpm采集终端的身份信息、系统关键文件度量值信息和安全信息,其中,安全信息包括系统危险性信息和软件更新时间信息;执行环境可信性判定模块203,用于根据终端采集的系统关键文件度量值信息与预先构建的可信执行环境进行匹配,若匹配通过,则执行环境可信;安全等级确定模块204,用于根据身份信息、执行环境可信性情况、系统危险性信息以及软件更新时间信息,确定终端的安全等级,接入判定模块205,用于根据终端的安全等级判断对应的终端是否准许接入,当终端的安全等级高于预设等级时,判定终端允许接入;用户角色获取模块206,用于获取用户身份信息,并将获取的用户身份信息与预先构建的用户-角色数据库进行对比,获取用户角色信息;访问权限确定模块207,用于根据用户角色信息和终端的安全等级,确定用户对资源对象的访问权限。在一种实施方式中,接入请求接收模块201具体用于:通过tpm采集终端的系统关键文件度量值;对比采集的系统关键文件度量值与tpm内部pcr值是否一致;若一致,认为终端执行环境可信,保存第一对比结果;若不一致,认为终端执行环境不可信,保存第二对比结果。在一种实施方式中,身份验证模块202具体用于:通过tpm采集终端的cpu序列号、内存序列号、主板序列号和物理地址,将其作为终端的身份信息,并散列所采集的身份信息,获取终端唯一身份标识;采集系统安全软件病毒扫描日志信息;采集系统安全软件更新日志信息。在一种实施方式中,安全等级确定模块204具体用于:根据执行环境可信性情况确定终端安全的得分,根据系统危险性信息确定系统危险项的得分,根据软件更新时间信息确定软件更新项的得分;根据预设满分、终端安全的得分、系统危险项的得分、软件更新项的得分以及对应的预设权重,获得安全性分数;根据安全性分数和终端的身份信息,确定终端的安全等级。在一种实施方式中,安全等级确定模块204具体用于:c=100-w1×c1-w2×c2-…-wn×cn其中,终端安全积分c计算采用评分制,预设满分为100分,ci表示系统度量危险项分数,为影响系统安全性的因素,wi表示危险项分数所占权重。在一种实施方式中,访问权限确定模块207具体用于:获取用户角色与对应终端的安全等级;对比预先构建的资源权限数据库,根据用户角色与终端安全等级获取对应访问权限信息。在一种实施方式中,当终端的安全等级低于预设等级时,判定终端不允许接入。由于本发明实施例二所介绍的装置,为实施本发明实施例一中基于角色和终端可信性的接入访问控制方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲保护的范围。实施例三基于同一发明构思,本申请还提供了一种计算机可读存储介质300,请参见图8,其上存储有计算机程序311,该程序被执行时实现实施例一中的方法。由于本发明实施例三所介绍的计算机可读存储介质,为实施本发明实施例一中基于角色和终端可信性的接入访问控制方法所采用的计算机可读存储介质,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该计算机可读存储介质的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的计算机可读存储介质都属于本发明所欲保护的范围。实施例四基于同一发明构思,本申请还提供了一种计算机设备,请参见图9,包括存储401、处理器402及存储在存储器上并可在处理器上运行的计算机程序403,处理器402执行上述程序时实现实施例一中的方法。由于本发明实施例四所介绍的计算机设备为实施本发明实施例一中基于角色和终端可信性的接入访问控制方法所采用的计算机设备,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该计算机设备的具体结构及变形,故而在此不再赘述。凡是本发明实施例一中方法所采用的计算机设备都属于本发明所欲保护的范围。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。当前第1页12