基于证书的访问控制系统和方法与流程

专利2022-06-30  67


本发明涉及计算机安全技术领域,尤其涉及一种基于证书的访问控制系统和一种基于证书的访问控制方法。



背景技术:

作为一种信息保护手段,访问控制是许多分布式应用程序的重要组成部分,已经提出了几种集中化和分布式的解决方案用于此类应用。证书特别适合于分布式系统,并以多种方式使用。例如,在网络环境中,伴随着电子支付在国内的迅猛发展,电子支付绑定功能阻止未经授权的访问者访问或者获取数据资源。在现实生活中,智能交通控制技术愈演愈烈,如果没有智能票务控制,许多人可能会出现逃票等情况,导致资源的不当使用。随着研究的不断进步,访问控制模型也变得越来越复杂,不能以简单的方式直接映射到现实,有些模型在实际生活中并没有得到很好的应用。

有的基于证书的访问控制模型中资源拥有者不仅要对大量的、分布式的、未知身份的访问者做出快速、一致且安全的访问决策,而且还要承担颁发证书、帮助访问者搜索证书等职责,这使得资源拥有者负担重、效率低下。有的模型中将授权逐级委托、分级信任,这就造成了多节点、多路径、多策略,使得授权、约束、验证变得愈加困难的同时,对本身的管理也提出了更大的挑战。



技术实现要素:

针对上述问题中的至少之一,本发明提供了一种基于证书的访问控制系统和方法,通过资源拥有者(客体)和证书颁发机构(ci)预先建立策略规则的委托方案,资源使用者(主体)携带证书/没有携带证书对客体提出访问请求,客体首先判断是否有与请求相匹配的证书,如果没有则直接返回拒绝访问结果,如果有则审核证书来源是否合法,合法则判断证书是否符合客体访问所需的其他条件,符合条件则同意访问,不符合条件返回拒绝访问结果。根据上述技术方案,解决了传统授权证书模型的资源拥有者去搜索证书颁发证书带来的效率负担问题,解决了传统委托访问控制模型中的分级建立、控制后继委托带来的复杂推理映射问题,实现资源拥有者本身职责分离的同时也实现资源拥有者和证书颁发机构之间的访问隔离,减轻了资源拥有者的负担,简化了管理。

为实现上述目的,本发明提供了一种基于证书的访问控制系统,包括:资源拥有者、资源使用者和证书颁发机构以及制定访问规则模块、建立委托方案模块、申请访问资源模块和申请证书授权模块,所述制定访问规则模块用于所述资源拥有者针对所拥有的资源的可开放程度对所述资源使用者进行访问约束;所述建立委托方案模块用于所述资源拥有者与所述证书颁发机构针对证书的授权条件建立委托方案;所述申请访问资源模块用于所述资源使用者向所述资源拥有者请求访问资源,并向所述资源使用者返回访问结果;所述申请证书授权模块用于所述资源使用者向所述证书颁发机构申请证书,并向所述资源使用者返回证书申请结果。

在上述技术方案中,优选地,所述资源使用者向所述资源拥有者请求访问资源时携带证书或不携带证书,携带证书时所述资源拥有者审核所述证书是否符合该访问资源请求对应的预设条件,并将访问结果发送至所述资源使用者;不携带证书时所述资源拥有者直接将访问结果发送至所述资源使用者;所述资源使用者接收到拒绝访问结果时,所述申请访问资源模块用于询问所述资源使用者是否继续请求访问,在选择继续请求访问时搜索本地证书库中是否存在对应证书,如果有则携带对应证书向所述资源拥有者请求访问资源,如果没有则询问所述资源使用者是否通过所述申请证书授权模块向所述证书颁发机构申请该证书。

在上述技术方案中,优选地,所述证书颁发机构用于根据委托方案中证书的授权条件判断资源使用者的证书申请是否符合该授权条件,在符合授权条件时签发证书并记录日志,将申请结果发送至所述资源使用者,在不符合授权条件时直接将申请结果发送至所述资源使用者。

在上述技术方案中,优选地,所述资源拥有者包括策略管理点、策略决策点和策略执行点,所述证书颁发机构包括委托方案生成点、证书验证点、证书颁发点和证书日志点,所述策略管理点用于创建并管理授权条件和策略规则,并将所述策略规则发送至策略决策点以对访问请求进行决策,将授权条件发送至所述委托方案生成点以生成颁发证书方案;所述策略决策点用于在所述资源使用者不携带证书或携带不合法来源证书时直接返回拒绝的访问决策,在携带合法来源证书时根据所述策略规则进行访问决策;所述策略执行点用于根据所述资源使用者的访问请求向所述策略决策点提交申请,并将所述策略决策点返回的访问决策结果返回至所述资源使用者;所述委托方案生成点用于根据所述授权条件生成对应的委托方案,提供给所述证书验证点查询使用;所述证书验证点用于根据所述委托方案对所述资源使用者提供的证书申请条件进行审核,并将审核结果发送给所述证书颁发点;所述证书颁发点用于接收所述资源使用者的证书申请请求,并向所述证书验证点提交该证书申请请求,并将所述证书验证点的审核结果返回给所述资源使用者;所述证书日志点用于记录证书签发操作。

在上述技术方案中,优选地,所述资源使用者在访问过程中存在就绪、等待、访问、搜索、完成和终止状态;所述就绪状态为所述资源使用者向所述资源拥有者提交访问请求前的状态;所述等待状态为所述资源使用者向所述资源拥有者提交访问请求后等待所述资源拥有者返回决策的状态,以及所述资源使用者向所述证书颁发机构提交证书申请请求后等待所述证书颁发机构返回证书授权决策的状态;所述访问状态为所述资源使用者在获得所述资源拥有者的访问许可后对资源执行访问的状态;所述搜索状态为所述资源使用者在被所述资源拥有者拒绝访问并获得访问所述资源使用者所需权限证书条件后,搜索检查本地是否拥有符合要求的证书时的状态;所述完成状态为所述资源使用者在访问资源完成的状态;所述终止状态为所述资源使用者没有访问资源权限导致访问结束的状态。

在上述技术方案中,优选地,所述证书颁发机构包括多个,所述资源拥有者与所述证书颁发机构之间采用一对一、一对多或多对多的形式。

本发明还提出一种基于证书的访问控制方法,包括:资源使用者向网络中资源拥有者发布的资源请求访问;所述资源拥有者审核所述资源使用者的访问请求是否携带证书或携带证书是否为合法来源,若为否则直接拒绝该访问请求;若所述证书为合法来源,则根据策略规则判断所述证书是否符合预设访问条件,若不符合访问条件则拒绝该访问请求;若符合访问条件则同意所述资源使用者访问资源。

在上述技术方案中,优选地,基于证书的访问控制方法还包括:所述资源使用者在收到拒绝访问请求结果时,确定是否继续在本地搜索对应的证书;如果同意搜索且搜索到对应访问条件的证书,则重复向所述资源拥有者请求访问资源;如果未搜索到对应访问条件的证书,则确定是否向证书颁发机构申请证书,如果不申请则访问结束;如果申请证书则携带申请信息向所述证书颁发机构发出证书申请请求;所述证书颁发机构根据该申请信息查询是否与对应的资源拥有者建立委托方案,如果没有则向所述资源使用者返回证书申请失败结果;如果查询到对应的委托方案,则判断该申请信息是否符合该委托方案的授权条件,如果不符合则向所述资源使用者返回证书申请失败结果,如果符合则向所述资源使用者签发证书;所述资源使用者在接收到证书后重复项所述资源拥有者请求访问资源。

在上述技术方案中,优选地,策略执行点在接收到所述资源使用者的访问请求时,将该访问请求提交至策略决策点,所述策略决策点根据策略管理点发布的策略规则对该访问请求进行决策,并将决策结果通过策略执行点返回至所述资源使用者;证书颁发点在接收到所述资源使用者的证书申请请求时,将该证书申请请求提交至证书验证点,所述证书验证点根据委托方案生成点对应委托方案的授权条件对该证书申请请求的申请条件进行审核,并将审核结果通过所述证书颁发点返回至所述资源使用者,所述证书颁发点根据审核结果决定是否对所述资源使用者颁布证书,并在颁布证书时由所述证书日志点记录证书签发操作。

在上述技术方案中,优选地,所述证书颁发机构根据与所述资源拥有者建立的委托方案对应的授权类型,判断所述资源使用者提交的申请条件是否符合该授权类型对应的授权条件。

与现有技术相比,本发明的有益效果为:通过资源拥有者(客体)和证书颁发机构(ci)预先建立策略规则的委托方案,资源使用者(主体)携带证书/没有携带证书对客体提出访问请求,客体首先判断是否有与请求相匹配的证书,如果没有则直接返回拒绝访问结果,如果有则审核证书来源是否合法,合法则判断证书是否符合客体访问所需的其他条件,符合条件则同意访问,不符合条件返回拒绝访问结果。根据上述技术方案,解决了传统授权证书模型的资源拥有者去搜索证书颁发证书带来的效率负担问题,解决了传统委托访问控制模型中的分级建立、控制后继委托带来的复杂推理映射问题,实现资源拥有者本身职责分离的同时也实现资源拥有者和证书颁发机构之间的访问隔离,减轻了资源拥有者的负担,简化了管理。

附图说明

图1为本发明一种实施例公开的基于证书的访问控制系统的模块图;

图2为本发明一种实施例公开的基于证书的访问控制系统的应用场景举例图;

图3为本发明一种实施例公开的基于证书的访问控制系统的结构图;

图4为本发明一种实施例公开的基于证书的访问控制系统的流程图;

图5为本发明一种实施例公开的基于证书的访问控制系统的主体状态转化图;

图6为本发明一种实施例公开的基于证书的访问控制系统的具体实现框架示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面结合附图对本发明做进一步的详细描述:

如图1和图2所示,本发明提出了一种基于证书的访问控制系统和方法,该系统中包括三类实体,四个模块。其中三类实体包括资源拥有者(客体)、资源使用者(主体)和证书颁发机构(certificateissuer,ci)也叫做可信第三方,四个模块包括制定访问规则模块、建立委托方案模块、申请访问资源模块、申请证书授权模块。

其中,资源拥有者创建内容资源并将其发布到网络中,资源拥有者为接收访问控制请求并对访问控制请求做出决策的一方。资源使用者指对资源拥有者提出资源访问的请求发起方。资源拥有者和资源使用者都可用于单个网络实体,也就是说,网络实体可以同时成为不同资源的拥有者、使用者。ci是一个独立的可信第三方实体,为资源使用者签发授权证书。ci接收主体请求证书的请求,并对访问主体提供的必要的信息(以证明访问主体身份及能力)进行验证以决策是否签发证书的机构,申请证书的类型不同,核实的信息不同。实际申请访问的时候,可能需要一个授权证书作用或者多个类型的授权证书一起作用。

可选地,所述制定访问规则模块即资源拥有者针对自己拥有的资源的可开放程度对访问者进行的访问约束。

可选地,所述建立委托方案模块即资源拥有者将授权条件委托给证书颁发者,证书颁发者为该授权条件建立委托方案。

资源拥有者根据制定的访问规则可以和一个或者一个以上的证书颁发机构建立直接委托方案联系。

可选地,所述申请访问模块包括以下步骤:

资源拥有者创建内容资源并将其发布到网络中。资源使用者携带证书/没有携带证书去请求内容资源。客体首先判断是否有与请求相匹配的权限证书,如果没有则直接返回拒绝访问结果(结果包括所需证书条件),有匹配的证书,则审核证书是否来源于合法的颁发机构,来源不合法返回拒绝访问结果,来源合法,接着判断证书是否符合客体访问所需的其他条件,符合条件则同意访问,不符合条件则返回拒绝访问结果。主体收到拒绝访问,选择是否继续进行访问,当选择不继续访问,则此次访问失败,当选择继续访问,则主体自己在本地证书库搜索所需证书,如果本地没有,则按照自己意愿选择是否去ci申请证书。如果本地没有所需证书且不去ci申请证书,则此次访问失败。如果去ci申请证书,则执行申请证书模块。

可选地,所述申请证书模块包括以下步骤:

主体已知客体所需访问条件的情况下,携带访问条件去ci申请证书。ci接收到证书申请的请求,根据主体的操作请求,查找与客体建立的委托方案,如果没有找到相关方案,则返回给主体拒绝签发证书。如果找到方案,判断是否符合授权条件,符合授权条件则签发证书并返回,如果不符合授权条件,则返回给主体拒绝签发证书。

在上述实施例中,有多个ci,客体将证书有关操作权力直接分配给ci(可以是一对一、一对多或者多对多的形式),主体自己去申请证书或者搜索证书。与其他委托模型不同的是,不需要分级建立、控制后继委托,使访问主体与ci之间、访问客体与ci之间发生直接关联;与其他授权证书模型(尤其是与基于spki证书模型)不同的是,不需要资源拥有者颁发证书或者搜索证书,实现资源拥有者本身职责分离的同时也实现资源拥有者和证书颁发者之间的访问隔离,减轻了资源拥有者的负担以及简化了管理。

在该实施例中,使用一个简单的购物网站方面的例子,说明拟议的方案是如何运作的。资源拥有者可以是在网络中发布产品的实体,资源使用者是任何想要浏览、分享、购买、发布、编辑产品的实体。在该模型中,资源拥有者总是信任ci从而建立信任关系,它部署了以下元素来表示其访问控制:

1.针对身份,有{普通用户,特权用户,产品发布用户}。

2.针对操作,有{浏览产品,分享产品,购买产品,发布产品,编辑产品}。

3.针对信任,信任评估结果划分为{a,b,c,d}四个等级,等级越低,信任评估结果越低。

4.针对关系,有{陌生关系,普通关系,亲密关系}。

在该实施例中,考虑以下两种情况:

case1:拥有发布产品授权证书的产品发布用户能在网站上发布产品。

case2:信任评估结果为a的特权用户u1和有发布产品操作授权的用户u2是亲密关系,则u1也可以在网站上发布产品。

分析以上情况,满足以上两种情况其中一个均可以在社交网站上发布产品,其中case2中需要信任授权证书和关系授权证书同时作用。

如图3所示,在上述实施例中,客体具体实现的功能包括制定访问规则、与ci建立委托方案、证书审核、对访问进行决策。ci具体实现的功能包括根据主体提交的条件进行授权决策、证书的签发、以及证书保存记录日志。

具体地模型定义如下:

(1)资源使用者(主体):指对资源拥有者提出资源访问的请求发起方,资源使用者的集合表示为s={si|i∈n*};

(2)资源拥有者(客体):指接收访问控制请求并对访问控制请求做出决策的一方,资源拥有者集合表示为o={oi|i∈n*};

(3)客体资源:指客体拥有资源的集合,表示为

(4)证书颁发机构(ci):指接收访问主体请求证书的请求,并对访问主体提供的必要的信息(以证明访问主体身份及能力)进行验证以决策是否签发证书的机构,ci的集合表示为ci={cik|k∈n*}。在该实施例中,ci区别于传统的ca或者aa,它包括身份认证授权、操作认证授权、信任认证授权、关系认证授权等等,具体授权类型根据具体应用制定。在本实施例中只对操作认证授权类型具体阐述。

(5)操作类型:指主体可以对客体执行的操作类型,操作类型的集合表示为

(6)访问权限:指主体可以能够获得的对客体实施的访问操作类型,访问权限的集合表示为其中op为操作类型,or为客体的资源集合,访问权限指拥有权限p的主体有权获得对客体资源执行操作类型为的权限证书。

(7)授权证书:指客体委托给ci授权策略后,ci颁发给主体的授权凭证,授权证书的集合表示为ac={aci|i∈n*};

(8)授权条件:指ci在是否给主体颁发授权证书时所需要判断的授权条件,该授权条件由客体制定并将其传给ci。授权条件包括主体是谁、主体所处时间限制、主体所处环境限制、主体访问资源限制、主体对资源数据操作类型限制、主体对数据保存时间限制(该授权条件根据操作认证授权类型分析):

a.主体是谁限制:指任意的能够发起资源访问的实体,可能是人,设备;

b.主体所处时间限制:指主体当前发起访问时与时态相关的信息,表示为t={ti|i∈n*};

c.主体所处环境限制:指主体当前发起访问的所处地点、空间位置,表示为e={ei|i∈n*};

d.主体访问资源限制:指主体发起访问的客体资源的访问程度限制;

e.主体对资源数据操作类型限制:指主体对所访问的客体资源的操作,例如浏览、分享、下载、修改等;

f.主体对数据保存时间限制:指主体对所访问客体资源在自己所属环境中保存的期限,表示为v={vi|i∈n*}。

因此,在该实施例中,将操作认证授权条件集合表示为其中sc∈s,tc∈t,ec∈e,vc∈,c∈n*,其中不允许为空。

(9)委托方案和委托方案类型:ci根据客体制定的授权条件为该客体生成委托方案,委托方案根据授权类型的不同划分为不同的类型。根据上述实施例中提到的,可能有身份认证授权委托方案、操作认证授权委托方案、信任认证授权委托方案、关系认证授权委托方案等等。在该实施例中,使用三维立体矩阵d来表示ci的委托方案:

其中,dijk表示第i个客体在该ci第j种委托方案类型的第k个委托方案,i∈{1,2,…,n},j∈{1,2,…,m},k∈{1,2,…,q}。

(10)策略规则:客体将授权条件委托给ci后,客体针对主体申请访问需要满足的证书条件生成的访问策略,表示为pr={pri|i∈n*}。

(11)申请证书条件:主体去ci申请证书时提交的条件(简称为申请条件),ci根据委托方案的授权条件审核该申请条件。将申请操作认证证书条件用集合表示,其中均不可以为空。

(12)访问证书集:指访问主体拥有的证书集,表示形式为sc={sc=<si,acj>|si∈s,acj∈ac}。sc=<si,acj>指访问主体si拥有权限证书acj。

基于以上描述,操作授权条件到操作授权委托方案的映射关系f表示如下:

f:oaci→dpqr,oaci∈oac,dpqr∈d,i,p,q,r∈n*

操作授权证书的映射函数表示如下:

acci∈acc,dpqr∈d,i∈n*

在基于身份的访问控制系统中,授权证书中包括对访问者身份的认证;在基于访问权限的访问控制系统中,授权证书中包含访问者能够进行的操作权限;在基于信任的访问控制系统中,授权证书中包含对访问者的信任评估结果;在基于关系的访问控制系统中,授权证书包含访问者请求的关系认证结果。

从上述实施例能够看出,基于授权证书的访问控制系统可以以不同的形式适用于其他的访问控制模型中,可以融合到其他的访问控制系统中。

根据上述实施例中提出的基于证书的访问控制系统,包括所有需要用到访问控制技术的场景。

如图4所示,以下针对基于证书的访问控制方法进行具体说明。

(1)资源使用者在应用场景中发起访问消息,具体地:

步骤11,资源拥有者创建内容资源并将其发布到网络中;

步骤12,资源使用者确定访问资源对象;

步骤13,资源使用者携带证书/没有携带证书去请求内容资源。

步骤14,资源拥有者接收到访问请求,首先判断是否有与请求相匹配的权限证书,如果没有匹配的证书则直接返回拒绝结果(结果包括所需证书条件),如果有匹配的证书,则执行步骤15;

步骤15,资源拥有者审核证书是否来源于合法的ci,来源不合法则直接返回拒绝结果,如果来源合法,则执行步骤16;

步骤16,资源拥有者根据策略规则判断证书是否符合访问条件,如果不符合访问条件则返回拒绝访问结果,如果符合条件则返回同意访问,执行步骤17;

步骤17,资源拥有者将申请的访问资源传输给资源使用者。

(2)资源使用者接收到资源拥有者的返回信息后,具体地:

步骤21,资源使用者接收到返回消息时,如果是同意访问,则进行资源的访问直到结束。如果接收到拒绝访问结果,执行步骤22;

步骤22,首先资源使用者决定是否在本地证书库里搜索所需的证书,如果搜索执行步骤23,如果不搜索执行步骤24;

步骤23,搜索后,如果本地证书库有符合条件的证书,则重复执行资源使用者在应用场景中发起访问消息过程中的步骤13,如果本地证书库没有符合条件的证书,则执行步骤24;

步骤24,资源使用者决定是否去ci申请证书,如果决定去申请证书执行步骤25,如果决定不去ci申请证书,则此次访问失败,访问结束;

步骤25,根据拒绝访问结果中提供的访问条件,确定需要去的ci;

步骤26,资源使用者携带访问所需身份证明、访问资格证明去ci发出申请证书的请求;

步骤27,ci接收到申请证书的请求,根据与该主体对资源操作的相关权限查找与资源拥有者建立的委托方案,如果没有相关的委托方案,则返回申请证书失败,此次访问失败。如果找到相关的委托方案,则执行步骤28;

步骤28,根据委托方案判定主体是否能够被授权,如果符合委托方案的条件,则可以签发证书,执行步骤29。如果不符合委托方案的条件,则返回申请证书失败,此次访问失败;

步骤29,主体接收到签发的证书后,则重复执行资源使用者在应用场景中发起访问消息过程中的步骤13。

如图5所示,在上述实施例中,主体在整个访问过程中存在6种状态,具体包括:

就绪状态:主体向客体提交访问之前的状态,此时有提交访问资格,有没有权限访问未知;

等待状态:此时有两种情形,第一种是主体向客体提交访问后,等待客体的决策返回时的状态,第二种是主体向ci提交证书申请后,等待ci的证书授权决策返回时的状态;

访问状态:主体获得客体的访问许可后,对资源执行访问的状态;

搜索状态:主体被客体拒绝并获得访问客体所需权限证书条件后,搜索检查自己是否拥有符合要求的证书时的状态;

完成状态:主体有权限访问客体,访问完成的状态;

终止状态:主体没有权限访问导致访问结束的状态。

如图6所示,在上述实施例中,基于证书的访问控制系统的实现框架中,包括pap(策略管理点)、dsgp(委托方案生成点)、cvp(证书验证点)、cip(证书颁发点)、clp(证书日志点)、pep(策略执行点)、pdp(策略决策点),具体地:

pap:创建并维护管理授权条件和策略规则,策略规则提供给pdp,供它对访问进行决策,授权条件提供给dsgp,供它生成颁发证书方案。

dsgp:pap将策略规则授权给ci,ci的dsgp将策略规则生成相对应的委托方案,并提供给cvp查询使用。

cvp:将主体提供的申请条件根据dsgp返回的委托方案进行审核,将审核结果返回给cip。

cip:根据审核结果决定是否授予主体授权证书,将证书申请结果返回给主体。

clp:记录证书签发操作。

pep:表达请求和执行访问控制决定,将访问控制决策结果返回,返回的决策结果可能是拒绝,也可能是许可,如果是拒绝则带上需要的访问条件信息。

pdp:没有提交满足条件的证书以及不合法来源的证书直接返回拒绝的访问决策,合法来源再根据制定的策略规则进行访问决策。

结合上述实施例中的基于证书的访问控制系统的实现框架,描述基于证书的访问控制模型的实施过程(携带证书去访问,证书不符合访问条件并且搜索证书无果后去申请证书,但是申请证书结果未知),具体如下:

1.pap将授权条件传递给ci,dsgp将生成对应的授权委托方案。

2.pap制定访问控制策略规则并传递给pdp。

3.主体向pep发出访问请求。

4.pep接收本地格式的访问请求消息,将请求发送给contexthandler。

5.contexthandler构造标准请求上下文并发送给pdp,请求pdp进行访问控制决策。

6.pdp根据收到的访问请求上下文,首先判断已有的证书条件是否和请求相匹配,不匹配条件,将拒绝访问响应结果(包括拒绝以及所需的证书条件)发送给contexthandler。

7.contexthandler将拒绝访问响应上下文相应转换为本地格式返回给pep。

8.pep执行该次拒绝访问决策结果响应。

9.主体搜索自己的本地证书库,没有符合条件的证书,选择去ci申请证书。

10.cip接收本地格式的证书申请,将证书申请发送给cvp.

11.cvp去dsgp查询相对应的委托方案。

12.dsgp将方案信息返回给cvp。

13.cvp根据委托方案,审核申请条件,将审核结果回复传递给cip。

14.cip根据返回的结果判断是否签发证书,如果签发证书则执行步骤14a,如果不签发证书则直接执行步骤14b。

14a.将该证书签发操作记录在公开、可审计的日志中,继续执行16b。

14b.cip将申请证书结果返回给主体。

以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。


技术特征:

1.一种基于证书的访问控制系统,其特征在于,包括:资源拥有者、资源使用者和证书颁发机构以及制定访问规则模块、建立委托方案模块、申请访问资源模块和申请证书授权模块,

所述制定访问规则模块用于所述资源拥有者针对所拥有的资源的可开放程度对所述资源使用者进行访问约束;

所述建立委托方案模块用于所述资源拥有者与所述证书颁发机构针对证书的授权条件建立委托方案;

所述申请访问资源模块用于所述资源使用者向所述资源拥有者请求访问资源,并向所述资源使用者返回访问结果;

所述申请证书授权模块用于所述资源使用者向所述证书颁发机构申请证书,并向所述资源使用者返回证书申请结果。

2.根据权利要求1所述的基于证书的访问控制系统,其特征在于,所述资源使用者向所述资源拥有者请求访问资源时携带证书或不携带证书,

携带证书时所述资源拥有者审核所述证书是否符合该访问资源请求对应的预设条件,并将访问结果发送至所述资源使用者;

不携带证书时所述资源拥有者直接将访问结果发送至所述资源使用者;

所述资源使用者接收到拒绝访问结果时,所述申请访问资源模块用于询问所述资源使用者是否继续请求访问,在选择继续请求访问时搜索本地证书库中是否存在对应证书,如果有则携带对应证书向所述资源拥有者请求访问资源,如果没有则询问所述资源使用者是否通过所述申请证书授权模块向所述证书颁发机构申请该证书。

3.根据权利要求1所述的基于证书的访问控制系统,其特征在于,所述证书颁发机构用于根据委托方案中证书的授权条件判断资源使用者的证书申请是否符合该授权条件,在符合授权条件时签发证书并记录日志,将申请结果发送至所述资源使用者,在不符合授权条件时直接将申请结果发送至所述资源使用者。

4.根据权利要求1所述的基于证书的访问控制系统,其特征在于,所述资源拥有者包括策略管理点、策略决策点和策略执行点,所述证书颁发机构包括委托方案生成点、证书验证点、证书颁发点和证书日志点,

所述策略管理点用于创建并管理授权条件和策略规则,并将所述策略规则发送至策略决策点以对访问请求进行决策,将授权条件发送至所述委托方案生成点以生成颁发证书方案;

所述策略决策点用于在所述资源使用者不携带证书或携带不合法来源证书时直接返回拒绝的访问决策,在携带合法来源证书时根据所述策略规则进行访问决策;

所述策略执行点用于根据所述资源使用者的访问请求向所述策略决策点提交申请,并将所述策略决策点返回的访问决策结果返回至所述资源使用者;

所述委托方案生成点用于根据所述授权条件生成对应的委托方案,提供给所述证书验证点查询使用;

所述证书验证点用于根据所述委托方案对所述资源使用者提供的证书申请条件进行审核,并将审核结果发送给所述证书颁发点;

所述证书颁发点用于接收所述资源使用者的证书申请请求,并向所述证书验证点提交该证书申请请求,并将所述证书验证点的审核结果返回给所述资源使用者;

所述证书日志点用于记录证书签发操作。

5.根据权利要求1所述的基于证书的访问控制系统,其特征在于,所述资源使用者在访问过程中存在就绪、等待、访问、搜索、完成和终止状态;

所述就绪状态为所述资源使用者向所述资源拥有者提交访问请求前的状态;

所述等待状态为所述资源使用者向所述资源拥有者提交访问请求后等待所述资源拥有者返回决策的状态,以及所述资源使用者向所述证书颁发机构提交证书申请请求后等待所述证书颁发机构返回证书授权决策的状态;

所述访问状态为所述资源使用者在获得所述资源拥有者的访问许可后对资源执行访问的状态;

所述搜索状态为所述资源使用者在被所述资源拥有者拒绝访问并获得访问所述资源使用者所需权限证书条件后,搜索检查本地是否拥有符合要求的证书时的状态;

所述完成状态为所述资源使用者在访问资源完成的状态;

所述终止状态为所述资源使用者没有访问资源权限导致访问结束的状态。

6.根据权利要求1所述的基于证书的访问控制系统,其特征在于,所述证书颁发机构包括多个,所述资源拥有者与所述证书颁发机构之间采用一对一、一对多或多对多的形式。

7.一种基于证书的访问控制方法,其特征在于,包括:

资源使用者向网络中资源拥有者发布的资源请求访问;

所述资源拥有者审核所述资源使用者的访问请求是否携带证书或携带证书是否为合法来源,若为否则直接拒绝该访问请求;

若所述证书为合法来源,则根据策略规则判断所述证书是否符合预设访问条件,若不符合访问条件则拒绝该访问请求;

若符合访问条件则同意所述资源使用者访问资源。

8.根据权利要求7所述的基于证书的访问控制方法,其特征在于,还包括:

所述资源使用者在收到拒绝访问请求结果时,确定是否继续在本地搜索对应的证书;

如果同意搜索且搜索到对应访问条件的证书,则重复向所述资源拥有者请求访问资源;

如果未搜索到对应访问条件的证书,则确定是否向证书颁发机构申请证书,如果不申请则访问结束;

如果申请证书则携带申请信息向所述证书颁发机构发出证书申请请求;

所述证书颁发机构根据该申请信息查询是否与对应的资源拥有者建立委托方案,如果没有则向所述资源使用者返回证书申请失败结果;

如果查询到对应的委托方案,则判断该申请信息是否符合该委托方案的授权条件,如果不符合则向所述资源使用者返回证书申请失败结果,如果符合则向所述资源使用者签发证书;

所述资源使用者在接收到证书后重复项所述资源拥有者请求访问资源。

9.根据权利要求7所述的基于证书的访问控制方法,其特征在于,

策略执行点在接收到所述资源使用者的访问请求时,将该访问请求提交至策略决策点,所述策略决策点根据策略管理点发布的策略规则对该访问请求进行决策,并将决策结果通过策略执行点返回至所述资源使用者;

证书颁发点在接收到所述资源使用者的证书申请请求时,将该证书申请请求提交至证书验证点,所述证书验证点根据委托方案生成点对应委托方案的授权条件对该证书申请请求的申请条件进行审核,并将审核结果通过所述证书颁发点返回至所述资源使用者,所述证书颁发点根据审核结果决定是否对所述资源使用者颁布证书,并在颁布证书时由所述证书日志点记录证书签发操作。

10.根据权利要求7所述的基于证书的访问控制方法,其特征在于,所述证书颁发机构根据与所述资源拥有者建立的委托方案对应的授权类型,判断所述资源使用者提交的申请条件是否符合该授权类型对应的授权条件。

技术总结
本发明公开了一种基于证书的访问控制系统和方法,其中,访问控制系统中,制定访问规则模块用于资源拥有者针对所拥有的资源的可开放程度对资源使用者进行访问约束;建立委托方案模块用于资源拥有者与证书颁发机构针对证书的授权条件建立委托方案;申请访问资源模块用于资源使用者向资源拥有者请求访问资源,并向资源使用者返回访问结果;申请证书授权模块用于资源使用者向证书颁发机构申请证书,并向资源使用者返回证书申请结果。通过本发明的技术方案,解决了效率负担问题和复杂推理映射问题,实现了资源拥有者本身职责分离的同时也实现资源拥有者和证书颁发机构之间的访问隔离,减轻了资源拥有者的负担,简化了管理。

技术研发人员:何泾沙;李文欣;朱娜斐;蔡方博
受保护的技术使用者:北京工业大学
技术研发日:2020.01.19
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-56250.html

最新回复(0)