一种资源访问控制方法、装置及系统与流程

文档序号:11693160阅读:331来源:国知局
一种资源访问控制方法、装置及系统与流程

本发明涉及通信领域,尤其涉及一种资源控制访问方法、装置及系统。



背景技术:

物联网标准化组织onem2m致力于开发一系列用于构造一个公共的m2m(machine-to-machine,机器对机器通信)服务层的技术规范。onem2m的核心是数据共享,具体是通过对onem2mcse(commonservicesentity,公共服务实体)内定义的资源树上的数据项的共享而实现的。

onem2m通过对标准化的资源树进行操作来实现服务层资源的共享和交互,onem2m资源树存在于onem2m系统所定义的公共服务实体(cse)中。根据onem2m功能架构规范(onem2mts-0001:"functionalarchitecture")中的定义,onem2m资源树的形式如图1所示。对onem2m资源可进行创建(create)、查询(retrieve)、修改(update)和删除(delete)等操作。

onem2m所定义的资源中与授权相关的资源是访问控制策略资源<accesscontrolpolicy>,用于存储acp(accesscontrolpolicy,访问控制策略)。<accesscontrolpolicy>资源由资源id唯一标识,其他资源通过资源中的accesscontrolpolicyids属性指定适用于该资源的访问控制策略。<accesscontrolpolicy>资源中的privileges属性用于存储具体的访问控制策略,selfprivileges属性用于存储维护<accesscontrolpolicy>资源的访问控制策略。privileges或selfprivileges属性中所存储的访问控制策略由一系列的访问控制规则构成。

访问控制策略的结构为3元组,分别为accesscontroloriginators,accesscontrolcontexts和accesscontroloperations。其中,accesscontroloriginators 为访问的发起方,可为应用实体标识(ae-id),公共服务实体标识(cse-id)或群组的资源标识;accesscontrolcontexts为上下文条件,例如时间、位置或ip地址等;accesscontroloperations为发起方请求作用于目标资源上的操作,例如创建、查询、更新、删除等。

访问控制策略资源<accesscontrolpolicy>可直接或通过accesscontrolpolicyids属性间接地赋给目标资源,onem2m访问控制系统据此确定适用于该目标资源的访问控制策略。

目前onem2m定义有20多种可拥有<accesscontrolpolicy>资源或accesscontrolpolicyids属性的资源。然而对于那些具有较复杂结构的资源来说,针对目标资源的访问控制过于粗糙,不能满足实际需要。



技术实现要素:

本发明实施例提供了一种资源访问控制方法、装置及系统,以实现更细粒度地对目标资源的访问进行控制。

本发明实施例提供的资源访问控制方法包括:

接收策略执行点pep发送的访问控制决策请求,所述访问控制决策请求中包括请求访问的目标对象,所述目标对象包括资源属性和/或子资源;

获取用于对所述访问控制决策请求进行访问权限判决的访问控制策略;其中,所述访问控制策略中包括用于对所述目标对象进行访问权限判决的规则;

根据获取到的访问控制策略对所述访问控制决策请求进行访问权限判决,并向所述pep返回访问权限判决结果。

具体地,所述根据获取到的访问控制策略对所述访问控制决策请求进行访问权限判决,包括:

若所述请求访问的资源属性不在用于对目标资源的资源属性进行访问权限判决的规则所允许访问的资源属性中,则判决为拒绝对目标资源进行访问, 所述目标资源为所述访问控制决策请求所请求访问的目标资源;或者,

若所述请求访问的子资源不在用于对目标资源的子资源进行访问权限判决的规则所允许访问的子资源中,则判决为拒绝对目标资源进行访问,所述目标资源为所述访问控制决策请求所请求访问的目标资源。

具体地,用于对资源属性进行访问权限判决的规则中包含允许访问的资源属性列表,所述允许访问的资源属性列表中包括以下内容之一:

一个或多个允许访问的资源属性或者资源属性的指示信息;

用于表示所有资源属性均被允许访问的指示信息;

用于表示所有资源属性均不允许访问的指示信息。

具体地,所述用于对资源属性进行访问权限判决的规则中若不包含允许访问的资源属性列表,则该规则表明所有资源属性均不允许访问。

具体地,用于对子资源进行访问权限判决的规则中包含子资源列表,所述子资源列表中包括以下内容之一:

一个或多个允许访问的子资源或者子资源的指示信息;

用于表示所有子资源均被允许访问的指示信息;

用于表示所有子资源均不允许访问的指示信息。

具体地,所述用于对子资源进行访问权限判决的规则中若不包子资源列表,则该规则表明所有子资源均不允许访问。

可选地,所述访问控制决策请求中还包括请求访问的目标资源的指示信息;

所述用于对所述访问控制决策请求进行访问权限判决的访问控制策略中还包括允许访问的目标资源列表;

所述根据获取到的访问控制策略对所述访问控制决策请求进行权限判决,包括:

若所述访问控制决策请求中的目标资源的指示信息不在所述允许访问的目标资源列表中,则判决为拒绝对所述访问控制决策请求所请求的目标资源 进行访问。

可选地,所述访问控制决策请求中,还包括提供建议指示;

所述方法还包括:

若判决为拒绝对所述访问控制决策请求所请求的目标资源进行访问,则根据所述提供建议指示,获取建议请求访问的目标对象列表,该列表中包含的资源属性和/或子资源能够被所述访问控制决策请求的发起方访问;

将所述建议请求访问的目标对象列表发送给所述pep。

优选地,所述访问控制决策请求中还包括:发起方标识、操作类型指示信息,所述操作类型指示信息用于指示请求作用于目标资源的操作类型;

所述用于对所述访问控制决策请求进行访问权限判决的访问控制策略中还包括:允许的访问发起方列表、允许作用于目标资源的操作列表和上下文条件列表;

所述根据获取到的访问控制策略对所述访问控制决策请求进行访问权限判决,包括:

若满足以下几种条件之一,则判决为拒绝对所述访问控制决策请求所请求的目标资源进行访问:

所述发起方标识不在所述允许的访问发起方列表中;

所述操作类型指示信息所指示的操作类型不在所述允许作用于目标资源的操作列表中;

所述访问控制决策请求不满足所述上下文条件列表中的上下文条件。

本发明实施例提供的策略决策点装置,包括:

接收模块,用于接收策略执行点pep发送的访问控制决策请求,所述访问控制决策请求中包括请求访问的目标对象,所述目标对象包括资源属性和/或子资源;

获取模块,用于获取用于对所述访问控制决策请求进行访问权限判决的访问控制策略;其中,所述访问控制策略中包括用于对所述目标对象进行访 问权限判决的规则;

判决模块,用于根据获取到的访问控制策略对所述访问控制决策请求进行访问权限判决,并向所述pep返回访问权限判决结果。

具体地,所述判决模块具体用于:

若所述请求访问的资源属性不在用于对目标资源的资源属性进行访问权限判决的规则所允许访问的资源属性中,则判决为拒绝对目标资源进行访问,所述目标资源为所述访问控制决策请求所请求访问的目标资源;或者,

若所述请求访问的子资源不在用于对目标资源的子资源进行访问权限判决的规则所允许访问的子资源中,则判决为拒绝对目标资源进行访问,所述目标资源为所述访问控制决策请求所请求访问的目标资源。

具体地,用于对资源属性进行访问权限判决的规则中包含允许访问的资源属性列表,所述允许访问的资源属性列表中包括以下内容之一:

一个或多个允许访问的资源属性或者资源属性的指示信息;

用于表示所有资源属性均被允许访问的指示信息;

用于表示所有资源属性均不允许访问的指示信息。

具体地,所述用于对资源属性进行访问权限判决的规则中若不包含允许访问的资源属性列表,则该规则表明所有资源属性均不允许访问。

具体地,用于对子资源进行访问权限判决的规则中包含子资源列表,所述子资源列表中包括以下内容之一:

一个或多个允许访问的子资源或者子资源的指示信息;

用于表示所有子资源均被允许访问的指示信息;

用于表示所有子资源均不允许访问的指示信息。

具体地,所述用于对子资源进行访问权限判决的规则中若不包子资源列表,则该规则表明所有子资源均不允许访问。

可选地,所述访问控制决策请求中还包括请求访问的目标资源的指示信息;

所述用于对所述访问控制决策请求进行访问权限判决的访问控制策略中还包括允许访问的目标资源列表;

所述判断模块具体用于:

若所述访问控制决策请求中的目标资源的指示信息不在所述允许访问的目标资源列表中,则判决为拒绝对所述访问控制决策请求所请求的目标资源进行访问。

可选地,所述访问控制决策请求中,还包括提供建议指示;

所述装置还包括建议模块,用于:

若判决为拒绝对所述访问控制决策请求所请求的目标资源进行访问,则根据所述提供建议指示,获取建议请求访问的目标对象列表,该列表中包含的资源属性和/或子资源能够被所述访问控制决策请求的发起方访问;

将所述建议请求访问的目标对象列表发送给所述pep。

本发明实施例提供的资源访问控制系统,包括:策略执行点pep和策略决策点pdp;

所述pep,用于接收资源访问请求,并根据所述资源访问请求向所述pdp发送访问控制决策请求,所述访问控制决策请求中包括请求访问的目标对象,所述目标对象包括资源属性和/或子资源;

所述pdp,用于获取用于对所述访问控制决策请求进行访问权限判决的访问控制策略,其中,所述访问控制策略中包括用于对所述目标对象进行访问权限判决的规则;以及,根据获取到的访问控制策略对所述访问控制决策请求进行访问权限判决,并向所述pep返回访问权限判决结果。

具体地,所述pdp具体用于:

若所述请求访问的资源属性不在用于目标资源的对资源属性进行访问权限判决的规则所允许访问的资源属性中,则判决为拒绝对目标资源进行访问,所述目标资源为所述访问控制决策请求所请求访问的目标资源;或者,

若所述请求访问的子资源不在用于目标资源的对子资源进行访问权限判 决的规则所允许访问的子资源中,则判决为拒绝对目标资源进行访问,所述目标资源为所述访问控制决策请求所请求访问的目标资源。

具体地,用于对资源属性进行访问权限判决的规则中包含允许访问的资源属性列表,所述允许访问的资源属性列表中包括以下内容之一:

一个或多个允许访问的资源属性或者资源属性的指示信息;

用于表示所有资源属性均被允许访问的指示信息;

用于表示所有资源属性均不允许访问的标指示信息。

具体地,所述用于对资源属性进行访问权限判决的规则中若不包含允许访问的资源属性列表,则该规则表明所有资源属性均不允许访问。

具体地,用于对子资源进行访问权限判决的规则中包含子资源列表,所述子资源列表中包括以下内容之一:

一个或多个允许访问的子资源或者子资源的指示信息;

用于表示所有子资源均被允许访问的指示信息;

用于表示所有子资源均不允许访问的标指示信息。

具体地,所述用于对子资源进行访问权限判决的规则中若不包子资源列表,则该规则表明所有子资源均不允许访问。

可选地,所述访问控制决策请求还包括请求访问的目标资源的指示信息;

所述用于对所述访问控制决策请求进行访问权限判决的访问控制策略中还包括允许访问的目标资源列表;

所述pdp具体用于:

若所述访问控制决策请求中的目标资源的指示信息不在所述允许访问的目标资源列表中,则判决为拒绝对所述访问控制决策请求所请求的目标资源进行访问。

本发明的上述实施例中,一方面,访问控制决策请求中包括请求访问的目标资源的目标对象,其中目标对象包括目标资源的资源属性和/或子资源,另 一方面,用于对访问控制决策请求进行访问权限判决的访问控制策略中包括用于对所述目标资源的目标对象进行访问权限判决的规则,因此在根据上述规则对访问控制决策请求进行判决时,可以实现对目标资源的访问进行更为细致的控制,即可以控制访问目标资源的具体属性和具体子资源。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为现有技术中的onem2m资源树;

图2为现有技术中资源访问控制架构示意图;

图3为本发明实施例提供的一种资源访问控制方法的流程示意图;

图4为本发明实施例提供的一种资源访问控制装置的结构示意图;

图5为本发明实施例提供的另一种资源访问控制装置的结构示意图。

具体实施方式

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

onem2m安全解决方案技术规范(onem2mts-0003:securitysolutions)中给出的资源访问控制架构,如图2所示,该架构中各需要的组件包括:

·策略执行点(policyenforcementpoint,pep):pep与需要访问控制的应用系统共存,并由应用系统调用,pep将根据发起方的访问请求生成相应的访问控制请求,并发送给策略决策点,然后根据策略决策点的访问控制应 答确定是否执行该访问请求。

·策略决策点(policydecisionpoint,pdp):pdp负责根据访问控制策略判决是否同意对由pep发送来的访问控制请求所请求的目标资源进行访问,并将判决结果通过访问控制应答返回给pep。

·策略获取点(policyretrievalpoint,prp):prp根据pdp提供的策略请求获取适用的访问控制策略,并将获取的访问控制策略返回给pdp。

·策略信息点(policyinformationpoint,pip):pip根据pdp的请求获取与用户、资源或环境相关的属性,例如访问用户的ip地址,资源的创建者,当前的时间等,然后将获得的各种属性返回给pdp。

onem2m的基本资源访问控制流程为:

1)发起方向pep发送资源访问请求(accessrequest)。

2)pep根据用户的资源访问请求向pdp发送访问控制决策请求(decisionrequest)。

3)pdp根据pep的访问控制决策请求向prp发送访问控制策略请求(policyrequest)。

4)prp向pdp返回访问控制策略响应(policyresponse),该访问控制策略响应中包含有访问控制策略。

5)pdp对访问控制决策请求和访问控制策略中包含的内容进行分析、判决;在进行分析、判决时,若需要其他属性,则向pip发送访问控制属性请求(attributerequest),否则执行步骤7。

6)pip向pdp发送访问控制属性应答,该访问控制属性应答包括根据访问控制属性请求获取到的与访问控制相关的属性。

7)pdp向pep发送访问控制决策应答(decisionresponse),该问控制决策应答中包括判决结果。

8)pep根据访问控制决策应答中的判决结果,决定是否执行发起方的访问。

本发明实施例对上述流程中的访问控制决策请求所包含的内容和访问控制策略所包含的规则进行了扩展,并针对上述扩展的内容,对pdp的分析、判决过程进行了改进,从而实现了更细粒度地对目标资源的访问进行控制,进而实现对目标资源的访问进行更为细致的控制。

其中,在访问控制决策请求中,增加以下两种信息之一或组合:

(1)资源属性访问列表(accessattributelist,atl):该列表中包含请求访问的资源属性相关信息,比如属性名称。

(2)子资源访问列表(accesssubresourcelist,asl):该列表中包含请求访问的子资源相关信息,比如子资源名称。

可选地,在此基础上,在访问控制决策请求中,还可以增加:

(3)提供建议指示(advicerequirement,ar):用于指示pdp是否提供其建议的资源属性访问列表和/或子资源访问列表。所建议的资源属性访问列表中包含的资源属性能够被访问控制决策请求的发起方访问,所建议的子资源访问列表中包含的子资源能够被访问控制决策请求的发起方访问。该提供建议指示可以采用一个二进制数值来表示,例如:0表示不需要提供建议,1表示请求提供建议。

优选地,可将上述三种信息全部添加到访问控制决策请求中,这样结合访问控制决策请求中已有的三种信息,构成了访问控制决策请求中的六元组信息。其中,访问控制决策请求中已有的三种信息包括:

(1)目标资源的指示信息:即“to”参数,用于指示所请求访问的目标资源;

(2)发起方标识:即“fr”参数,用于指示访问控制决策请求的发起方;

(3)操作类型指示信息:即“op”参数,用于指示请求作用于目标资源的操作类型,可以是创建、查询、更新、删除中的一种。

在访问控制策略中,增加以下两种规则之一或组合:

(1)允许访问的资源属性列表(permittedattributes):根据该列表可以获 得允许访问的资源属性。该允许访问的资源属性列表中包括以下内容之一:

-一个或多个允许访问的资源属性或者资源属性的指示信息,其中,资源属性的指示信息具体可以是资源属性名称;

-用于表示所有资源属性均被允许访问的指示信息,例如,用“all”表示允许对所有资源属性进行访问;

-用于表示所有资源属性均不允许访问的指示信息,例如,用“null”表示不允许对所有资源属性进行访问。

在一些实施例中,访问控制策略中也可以不包含“允许访问的资源属性列表”,这种情况下,该访问控制策略表明所有资源属性均不允许访问。

(2)允许访问的子资源列表(permittedsubresources):根据该列表可以获得允许访问的子资源。该允许访问的子资源列表中包括以下内容之一:

-一个或多个允许访问的子资源或者子资源的指示信息,其中,子资源的指示信息具体可以是子资源名称;

-用于表示所有子资源均被允许访问的指示信息,例如,用“all”表示允许对所有子资源进行访问;

-用于表示所有子资源均不允许访问的指示信息,例如,用“null”表示不允许对所有子资源进行访问。

在一些实施例中,访问控制策略中也可以不包含“允许访问的子资源列表”,这种情况下,该访问控制策略表明所有子资源均不允许访问。。

可选地,在访问控制策略中,还可以增加:

(3)允许访问的目标资源列表(accesscontrolresources):该列表中可包含允许访问的目标资源的地址或标识。

优选地,可将上述三种规则全部添加到访问控制策略中,加上访问控制策略中已有的三种规则,构成了6元组的访问控制策略。其中,访问控制决策中已有的三种规则包括:

(1)允许的访问发起方列表(accesscontroloriginators):该列表中包含 允许发起对目标资源进行访问的发起方的相关信息,比如,可以是ae-id、cse-id或组群的资源id;

(2)允许作用于目标资源的操作列表(accesscontroloperations):该列表中包含允许作用于目标资源的操作类型指示信息,例如操作类型可以是创建、获取、更新、删除、通知中的一种;

(3)上下文条件列表(accesscontrolcontexts):该列表中包含限制规则适用范围的上下文条件,例如访问的时间,发起方的位置和ip地址等。

根据上述六元组规则,当满足accesscontrolcontexts中描述的上下文限制条件的情况下,accesscontroloriginators中描述的允许的访问发起方,可以对accesscontrolresources中描述的资源中的由permittedattributes所描述的资源属性和/或由permittedsubresources所描述的子资源进行accesscontroloperations中所描述的操作。

本申请实施例中,一条访问控制策略中包含一个“允许访问的资源属性列表”和/或一个“允许访问的子资源列表”。一条访问控制策略中的“允许访问的资源属性列表”适用于针对具有相同属性且针对每个属性所能够进行的操作类型均相同的目标资源的访问权限判决,一条访问控制策略中的“允许访问的子资源列表”适用于针对具有相同子资源且针对每个子资源所能够进行的操作类型均相同的目标资源的访问权限判决。

基于上述图2所示的资源访问控制架构,以及上述对访问控制决策请求以及访问控制策略所包含的规则进行的扩展,图3示出了本发明实施例提供的一种资源访问控制方法。

参见图3,为本发明实施例提供的一种资源访问控制方法的流程示意图,如图所示,该方法包括:

步骤301:发起方向pep发送资源访问请求。

其中,所述资源访问请求中可包括:目标资源的指示信息(如目标资源的地址或标识)、发起方标识、操作类型指示信息等。该资源访问请求中还可包 括content(内容)参数,该参数中可包含资源属性和/或子资源的名称或标识。

步骤302:pep接收到发起方发送的资源访问请求后,向pdp发送访问控制决策请求。

其中,该访问控制决策请求中包括请求访问的目标资源的目标对象。该目标对象包括目标资源的资源属性,或包括目标资源的子资源,或包括目标资源的资源属性和子资源。

其中,pep可根据发起方发送的资源访问请求确定目标资源的目标对象。具体地,可以通过以下两种方式确定目标资源的目标对象:

方式1:pep根据发起方发送的资源访问请求中的content(内容)参数确定目标资源的目标对象。其中,content参数中可包含资源属性和/或子资源的名称或标识,pep可根据content参数所包含的资源属性和/或子资源的名称或标识,将对应的资源属性和/或子资源确定为目标对象。

方式2:pep根据发起方发送的资源访问请求中的目标资源自行确定应将哪些资源属性和/或子资源确定为目标对象。例如,如果资源访问请求用于请求在目标资源中创建子资源,则可以将欲创建的子资源确定为目标对象;再例如,如果资源访问请求用于请求查询目标资源,则可以将欲查询的目标资源的资源属性和/或子资源确定为目标对象。

上述访问控制决策请求中还可以包括请求访问的目标资源的指示信息(比如目标资源的地址或标识),请求访问的发起方的标识,请求作用于目标资源的操作类型等信息。

步骤303:pdp接收pep发送的访问控制决策请求后,获取用于对该访问控制决策请求进行访问权限判决的访问控制策略;其中,该访问控制策略中包括用于对目标资源的目标对象进行访问权限判决的规则。

在上述步骤中,pdp可以根据该访问控制决策请求,向prp发送访问控制策略请求,进而从prp处获取对应的访问控制策略;也可以根据该访问控制决策请求,从pdp的缓存区域中获取对应的访问控制策略。

在上述过程中,在pdp获取访问控制策略时,可以根据该访问控制决策请求中的目标资源,获取对应的访问控制策略,也可以根据该访问控制决策请求中的目标资源和发起方,获取对应的访问控制策略。

进一步地,上述用于对访问控制决策请求进行访问权限判决的访问控制策略中还可以包括允许访问的目标资源的列表。

更进一步地,上述用于对访问控制决策请求进行访问权限判决的访问控制策略中还可以包括:允许的访问发起方列表、允许作用于目标资源的操作列表和上下文条件列表。

步骤304:pdp根据获取到的访问控制策略对访问控制决策请求进行访问权限判决,并向pep返回访问权限判决结果。

在上述步骤304中,对该访问控制决策请求进行访问权限判决时,针对访问控制策略中的每个规则均进行判决,具体可包括以下几种情况:

情况1:访问控制决策请求中包括“资源属性访问列表”

针对这种情况,若访问控制决策请求中的“资源属性访问列表”所列出的请求访问的目标资源的资源属性不在访问控制策略中的“允许访问的资源属性列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“资源属性访问列表”所列出的请求访问的目标资源的资源属性在访问控制策略中的“允许访问的资源属性列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况2:访问控制决策请求中包括“子资源访问列表”

针对这种情况,若访问控制决策请求中的“子资源访问列表”所列出的请求访问的目标资源的子资源不在访问控制策略中的“允许访问的子资源列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“子资源访问列表”所列出的请求访问的目标资源的子资源在访问控制策略中的“允许访问的子资源列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况3:访问控制决策请求中包括“目标资源的指示信息”

针对这种情况,若访问控制决策请求中的“目标资源的指示信息”所指示的请求访问的目标资源不在访问控制策略中的“允许访问的目标资源列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“目标资源的指示信息”所指示的请求访问的目标资源在访问控制策略中的“允许访问的目标资源列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况4:访问控制决策请求中包括“发起方标识”

针对这种情况,若访问控制决策请求中的“发起方标识”所指示的请求访问的发起方不在访问控制策略中的“允许的访问发起方列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“发起方标识”所指示的请求访问的发起方在访问控制策略中的“允许的访问发起方列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况5:访问控制决策请求中包括“操作类型指示信息”

针对这种情况,若访问控制决策请求中的“操作类型指示信息”所指示的请求作用于目标资源的操作类型不在访问控制策略中的“允许作用于目标资源的操作列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“操作类型指示信息”所指示的请求作用于目标资源的操作类型在访问控制策略中的“允许作用于目标资源的操作列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况6:访问控制策略中包括“上下文条件列表”

针对这种情况,若访问控制决策请求不满足访问控制策略中的“上下文条件列表”所包含的上下文条件,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求满足访问控制策略中的“上下文条件列表”所包含的上下文条件,则可进一步结合该访问控制策略中的其他规则进行判决。

在一些实施例中,步骤301中,pep发送的访问控制决策请求中可包含“提供建议指示”;相应地,在步骤304中,pdp获取建议请求访问的目标对象列表,该建议请求访问的目标对象列表中包含的资源属性和/或子资源能够被访问控制决策请求的发起方访问,并将该建议请求访问的目标对象列表发送给pep。其中,建议请求访问的资源属性列表中的资源属性可以是允许访问的资源属性,也可以是允许访问的资源属性与请求访问的资源属性的交集;建议请求访问的子资源性列表中的子资源可以是允许访问的子资源,也可以是允许访问的子资源与请求访问的子资源的交集。上述建议请求访问的目标资源的资源属性和/或子资源可以包含在判决结果中发送给pep,也可以单独发送给pep,本发明对此不做限制。

即请求提供建议请求访问的目标资源的资源属性和/或子资源,以更改访问控制决策请求,使得更改后的访问控制决策请求被允许对请求的目标资源进行访问

本发明的上述实施例中,一方面,访问控制决策请求中包括请求访问的目标资源的目标对象,其中目标对象包括目标资源的资源属性和/或子资源,另一方面,用于对访问控制决策请求进行访问权限判决的访问控制策略中包括用于对所述目标资源的目标对象进行访问权限判决的规则,因此在根据上述规则对访问控制决策请求进行判决时,可以实现对目标资源的访问进行更为细致的控制,即可以控制访问目标资源的具体属性和具体子资源。

为了更清楚地理解本发明的上述实施例,下面以具体应用场景为例,对本发明上述实施例的具体实现过程进行描述。

实施例一:在不需要提供建议指示的情况下

cse1表示onem2m系统中的一个公共服务实体,ae1、ae2、ae3分别表示onem2m系统中的三个应用实体。

ae1在cse1上进行注册后,cse1为ae1分配的资源用<ae1>表示。

<acp1>表示访问控制策略资源。<acp1>中包含有访问控制策略集acp1。 acp1中包含两条策略,分别为rule1和rule2。每条策略中依次包含有:允许访问的目标资源列表、允许访问的资源属性列表、允许访问的子资源列表、允许的访问发起方列表、允许作用于目标资源的操作列表和上下文条件列表,每个列表中间用分号间隔。

rule1的内容为:

[(<ae1>);(pointofaccess,ontologyref);(all);(ae1);(create,retrieve,update,delete);()]

其中,(<ae1>)表示允许访问的目标资源仅包含<ae1>;(pointofaccess,ontologyref)表示允许访问的资源属性包含pointofaccess属性和ontologyref属性;(all)表示允许访问目标资源的所有子资源;(ae1)表示允许ae1发起访问;(create,retrieve,update,delete)表示允许作用于目标资源的操作包括创建、查询、修改和删除;()表示没有上下文条件的限制。

rule2的内容为:

[(<ae1>);(appname,app-id,ae-id,nodelink);(<container>,<group>);(ae1,ae2,ae3);(retrieve);()]

其中,(<ae1>)表示允许访问的目标资源仅包含<ae1>;(appname,app-id,ae-id,nodelink)表示允许访问的资源属性包含appname属性、app-id属性、ae-id属性以及nodelink属性;(<container>,<group>)表示允许访问目标资源中类型为container和group的子资源;(ae1,ae2,ae3)表示允许ae1、ae2和ae3发起访问;(retrieve)表示允许作用于目标资源的操作仅包括查询;()表示没有上下文条件的限制。

访问请求1的资源访问流程可包括:

发起方ae1向pep发起资源访问请求,该资源访问请求的内容为:

(to=“<ae1>”;fr=“ae1”;op=“create”;“resourcetype=“container”;content=“resourcename=“container1”;maxbytesize=“1024””)

其中,to=“<ae1>”表示请求访问的目标资源为<ae1>,fr=“ae1”表示此次请求的发起方为ae1,op=“create”表示此次请求作用于目标资源的操作类型为建立子资源,“resourcetype=“container”表示请求建立子资源的类型为container,content=“resourcename=“container1”maxbytesize=“1024””表示请求建立子资源的名称为container1,且该子资源占据1024个比特位。

pep接收到ae1发送的资源访问请求后,根据该资源访问请求,向pdp发送访问控制决策请求。该访问控制策略请求的内容为:

(to=“<ae1>”;fr=“ae1”;op=“create”;asl=“container””)

其中,to=“<ae1>”请求访问的目标资源为<ae1>,fr=“ae1”表示此次请求的发起方为ae1,op=“create”表示此次请求作用于目标资源的操作类型为建立子资源,asl=“container”表示访问<ae1>的子资源中类型为container的子资源。

pdp接收到pep发送的访问控制决策请求后,向prp发送访问控制策略请求,prp根据该请求向pdp返回acp1,pdp根据acp1按照如下步骤对该访问控制决策请求进行判决:

首先根据访问控制决策请求中的to参数和fr参数判断acp1中的策略是否适用于该访问控制决策请求。因为访问控制决策请求中的to参数表示请求访问<ae1>,fr参数表示发起方为ae1;而acp1中的rule1和rule2均允许访问<ae1>,且允许的访问发起方均包括ae1,故判断结果为rule1和rule2均适用。

其次,判断访问控制决策请求是否满足rule1和rule2中的上下文条件。因为rule1和rule2中均没有上下文条件的限制,故判断结果为访问控制决策请求满足rule1和rule2中的上下文条件。

然后,根据rule1和rule2中允许作用于目标资源的操作列表,判断访问控制决策请求中请求作用于目标资源的操作类型是否被允许。因为访问控制决策请求中请求作用于目标资源的操作类型是创建,而rule1允许对目标 资源进行创建操作,但rule2不允许对目标资源进行创建操作,故仅根据rule1对访问控制决策请求继续进行判断。

最后,判断rule1中的允许访问的子资源列表中是否包含全部的请求访问的子资源。因为rule1中的允许发起方访问的子资源为全部的子资源,故判断结果为rule1中的允许发起方访问的子资源列表中的内容包含全部的请求访问子资源。

经过上述判断步骤,pdp对该访问控制决策请求的判决结果为允许执行该访问控制决策请求。因此,pdp向pep发送的访问控制决策应答,该访问控制决策应答的内容为(decision=“permit”)。

访问请求2的资源访问流程可包括:

发起方ae2向pep发起资源访问请求,该资源访问请求的内容为:

(to=“<ae1>”;fr=“ae2”;op=“create”;“resourcetype=“container”;content=“resourcename=“container1”;maxbytesize=“1024””)

其中,to=“<ae1>”表示请求访问的目标资源为<ae1>,fr=“ae2”表示此次请求的发起方为ae2,op=“create”表示此次请求作用于目标资源的操作类型为建立子资源,“resourcetype=“container”表示请求建立子资源的类型为container,content=“resourcename=“container1”maxbytesize=“1024””表示请求建立子资源的名称为container1,且该子资源占据1024个比特位。

pep接收到ae2发送的资源访问请求后,根据该资源访问请求,向pdp发送访问控制决策请求。该访问控制策略请求的内容为:

(to=“<ae1>”;fr=“ae2”;op=“create”;asl=“container””)

其中,to=“<ae1>”请求访问的目标资源为<ae1>,fr=“ae2”表示此次请求的发起方为ae2,op=“create”表示此次请求作用于目标资源的操作类型为建立子资源,asl=“container”表示访问<ae1>的子资源中类型为container的子资源。

pdp接收到pep发送的访问控制决策请求后,向prp发送访问控制策略 请求,prp根据该请求向pdp返回acp1,pdp根据acp1按照如下步骤对该访问控制决策请求进行判决:

首先,根据访问控制决策请求中的to参数和fr参数判断acp1中的策略是否适用于该访问控制决策请求。因为访问控制决策请求中的to参数表示请求访问<ae1>,fr参数表示发起方为ae2;而acp1中的rule1和rule2均允许访问<ae1>,但仅有rule2允许的访问发起方包括ae2,故判断结果为仅rule2适用。

其次,判断访问控制决策请求是否满足rule2中的上下文条件。因为rule2中没有上下文条件的限制,故判断结果为该访问控制决策请求满足rule2中的上下文条件。

然后,根据rule2中允许作用于目标资源的操作列表,判断该访问控制决策请求中求作用于目标资源的操作类型是否被允许。因为访问控制决策请求中求作用于目标资源的操作类型是创建,但rule2不允许对目标资源进行创建操作。

经过上述判断步骤,pdp对该访问控制决策请求的判决结果为不允许执行该访问控制决策请求。因此,pdp向pep发送的访问控制决策应答,该访问控制决策应答的内容为(decision=“notpermit”)。

实施例二:在需要提供建议指示的情况下

cse1表示onem2m系统中的一个公共服务实体,ae1、ae2、ae3分别表示onem2m系统中的三个应用实体。

ae1在cse1上进行注册后,cse1为ae1分配的资源用<ae1>表示。

<acp2>表示访问控制策略资源。<acp2>中包含有访问控制策略集acp2。acp2中包含策略rule3。该策略中依次包含有:允许访问的目标资源列表、允许访问的资源属性列表、允许访问的子资源列表、允许的访问发起方列表、允许作用于目标资源的操作列表和上下文条件列表,每个列表中间用分号间隔。

<node1>表示<ae1>与通过<ae1>资源的nodelink属性相关联的<node>资源。

rule3的内容为:

[(<node1>);(all);(memory;battery;firmware;software;deviceinfo);(ae2,ae3);(retrieve);()]

其中,(<node1>)表示允许访问的目标资源仅包含<node1>;(all)表示允许访问所有的资源属性;(memory;battery;firmware;software;deviceinfo)表示允许访问memory子资源、battery子资源、firmware子资源、software子资源和deviceinfo子资源;(ae2,ae3)表示允许ae2、ae3发起访问;(retrieve)表示仅允许作用于目标资源的操作为查询操作;()表示没有上下文条件的限制。

访问请求3的资源访问流程可包括:

发起方ae2向pep发起资源访问请求,该资源访问请求的内容为:

(to=“<node1>”;fr=“ae2”;op=“retrieve”)

其中,to=“<node1>”表示请求访问的目标资源为<node1>,fr=“ae2”表示此次请求的发起方为ae2,op=“retrieve”表示此次请求作用于目标资源的操作为查询。

pep接收到ae2发送的资源访问请求后,根据该资源访问请求,向pdp发送访问控制决策请求。该访问控制策略请求的内容为:

(to=“<node1>”;fr=“ae2”;op=“retrieve”;ar=“yes”)

其中,to=“<node1>”请求访问的目标资源为<node1>,fr=“ae2”表示此次请求的发起方为ae2,op=“retrieve”表示此次请求作用于目标资源的操作为查询,ar=“yes”表示请求提供建议指示。

pdp接收到pep发送的访问控制决策请求后,向prp发送访问控制策略请求,prp根据该请求向pdp返回acp2,pdp根据acp2按照如下步骤对该访问控制决策请求进行判决:

首先,根据访问控制决策请求中的to参数和fr参数判断acp2中的策略是否适用于该访问控制决策请求。因为访问控制决策请求中的to参数表示请求访问<node1>,fr参数表示发起方为ae2;而acp2中的rule3均允许访问<node1>,且允许的访问发起方包括ae2,故判断结果为rule3适用。

其次,判断访问控制决策请求是否满足rule3中的上下文条件。因为rule3中没有上下文条件的限制,故判断结果为访问控制决策请求满足rule3中的上下文条件。

然后,根据rule3中允许作用于目标资源的操作列表,判断访问控制决策请求中请求作用于目标资源的操作是否被允许。因为访问控制决策请求中的请求作用于目标资源的操作是查询,而rule3允许对目标资源进行查询操作,故判断结果为访问控制决策请求中的操作被允许。

最后,根据访问控制决策请求中请求提供建议指示,获取建议请求访问的目标资源的目标对象列表。因为rule3中的允许发起方访问所有资源属性,允许访问目标资源的memory子资源、battery子资源、firmware子资源、software子资源和deviceinfo子资源,故列表中是否包含全部的请求访问的目标资源的container类型的子资源。因为rule1中的允许发起方访问的目标资源的子资源为全部的子资源,所以建议请求访问的目标对象列表包括所有资源属性和memory子资源、battery子资源、firmware子资源、software子资、deviceinfo子资源。

经过上述步骤,pdp发送给pep的判决结果的内容为(decision=“permitwithlimitation”;pal=“all”;psl=“memory;battery;firmware;software;deviceinfo”)。其中decision=“permitwithlimitation”表示该访问控制决策请求可以对该访问控制决策请求所请求的目标资源进行访问,但该访问有限制条件;pal=“all”表示访问控制决策请求可以对该访问控制决策请求所请求的目标资源的所有资源属性进行访问;psl=“memory;battery;firmware;software;deviceinfo”表示访问控制决策请求可以对该访问控制决策请求所请求的目标资 源的memory子资源、battery子资源、firmware子资源、software子资、deviceinfo子资源进行访问。

根据相同的技术构思,本发明实施例还提供了一种策略决策点装置,如图4所示,该装置包括接收模块401、获取模块402和判决模块403,进一步地,该装置还可以包括建议模块304。

接收模块401,用于接收pep发送的访问控制决策请求,该访问控制决策请求中包括请求访问的目标对象,目标对象包括资源属性,子资源,或者资源属性和子资源。

获取模块402,用于获取用于对访问控制决策请求进行访问权限判决的访问控制策略;其中,该访问控制策略中包括用于目标对象进行访问权限判决的规则;

判决模块403,用于根据获取到的访问控制策略对上述访问控制决策请求进行访问权限判决,并向pep返回访问权限判决结果。

具体地,判决模块对访问控制决策请求进行访问权限判决时包括以下6种情况:

情况1:访问控制决策请求中包括“资源属性访问列表”

针对这种情况,若访问控制决策请求中的“资源属性访问列表”所列出的请求访问的目标资源的资源属性不在访问控制策略中的“允许访问的资源属性列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“资源属性访问列表”所列出的请求访问的目标资源的资源属性在访问控制策略中的“允许访问的资源属性列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况2:访问控制决策请求中包括“子资源访问列表”

针对这种情况,若访问控制决策请求中的“子资源访问列表”所列出的请求访问的目标资源的子资源不在访问控制策略中的“允许访问的子资源列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问 控制决策请求中的“子资源访问列表”所列出的请求访问的目标资源的子资源在访问控制策略中的“允许访问的子资源列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况3:访问控制决策请求中包括“目标资源的指示信息”

针对这种情况,若访问控制决策请求中的“目标资源的指示信息”所指示的请求访问的目标资源不在访问控制策略中的“允许访问的目标资源列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“目标资源的指示信息”所指示的请求访问的目标资源在访问控制策略中的“允许访问的目标资源列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况4:访问控制决策请求中包括“发起方标识”

针对这种情况,若访问控制决策请求中的“发起方标识”所指示的请求访问的发起方不在访问控制策略中的“允许的访问发起方列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“发起方标识”所指示的请求访问的发起方在访问控制策略中的“允许的访问发起方列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况5:访问控制决策请求中包括“操作类型指示信息”

针对这种情况,若访问控制决策请求中的“操作类型指示信息”所指示的请求作用于目标资源的操作类型不在访问控制策略中的“允许作用于目标资源的操作列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“操作类型指示信息”所指示的请求作用于目标资源的操作类型在访问控制策略中的“允许作用于目标资源的操作列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况6:访问控制策略中包括“上下文条件列表”

针对这种情况,若访问控制决策请求不满足访问控制策略中的“上下文条件列表”所包含的上下文条件,则判决为拒绝对该访问控制决策请求所请求的 目标资源进行访问。若访问控制决策请求满足访问控制策略中的“上下文条件列表”所包含的上下文条件,则可进一步结合该访问控制策略中的其他规则进行判决。

具体地,用于资源属性进行访问权限判决的规则中包含资源属性列表,该资源属性列表中包括以下内容之一:

-一个或多个允许访问的资源属性或者资源属性的指示信息

-用于表示所有资源属性均被允许访问的指示信息

-用于表示所有资源属性均不允许访问的指示信息

若上述用于对资源属性进行访问权限判决的规则中若不包含资源属性列表,则该规则表明所有资源属性均不允许访问。

具体地,用于对子资源进行访问权限判决的规则中包含子资源列表,该子资源列表中包括以下内容之一:

-一个或多个允许访问的子资源或者子资源的指示信息

-用于表示所有子资源均被允许访问的指示信息

-用于表示所有子资源均不允许访问的指示信息

若上述用于对子资源进行访问权限判决的规则中若不包子资源列表,则该规则表明所有子资源均不允许访问。

进一步地,上述访问控制决策请求中,还可以包括提供建议指示,则该装置还包括建议模块,用于在判决模块303做出的判决为拒绝对访问控制决策请求所请求的目标资源进行访问时,根据提供建议指示,获取建议请求访问的目标对象列表,该列表中包含的资源属性和/或子资源能够被访问控制决策请求的发起方访问;并将建议请求访问的目标资源的目标对象列表发送给pep。

基于相同的技术构思,本发明实施例还提供了一种策略决策点装置,该装置可以实现本发明实施例资源访问控制的流程。

参见图5,为本发明实施例提供的策略决策点装置的结构示意图,该装置 可包括:处理器501、存储器502、收发机503以及总线接口。

处理器501负责管理总线架构和通常的处理,存储器502可以存储处理器501在执行操作时所使用的数据。收发机503用于在处理器501的控制下接收和发送数据。

总线架构可以包括任意数量的互联的总线和桥,具体由处理器501代表的一个或多个处理器和存储器502代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机503可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器501负责管理总线架构和通常的处理,存储器502可以存储处理器501在执行操作时所使用的数据。

本发明实施例揭示的资源访问控制的流程,可以应用于处理器501中,或者由处理器501实现。在实现过程中,资源访问控制的流程的各步骤可以通过处理器501中的硬件的集成逻辑电路或者软件形式的指令完成。处理器501可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器502,处理器501读取存储器502中的信息,结合其硬件完成资源访问控制流程的步骤。

具体地,处理器501,用于读取存储器502中的程序,执行下列过程:

接收pep发送的访问控制决策请求,该访问控制决策请求中包括请求访问的目标对象,目标对象包括的资源属性、子资源、或者资源属性和子资源。

获取用于对访问控制决策请求进行访问权限判决的访问控制策略;其中,该访问控制策略中包括用于目标对象进行访问权限判决的规则;

根据获取到的访问控制策略对上述访问控制决策请求进行访问权限判决,并向pep返回访问权限判决结果。

具体地,对访问控制决策请求进行访问权限判决时包括以下6种情况:

情况1:访问控制决策请求中包括“资源属性访问列表”

针对这种情况,若访问控制决策请求中的“资源属性访问列表”所列出的请求访问的目标资源的资源属性不在访问控制策略中的“允许访问的资源属性列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“资源属性访问列表”所列出的请求访问的目标资源的资源属性在访问控制策略中的“允许访问的资源属性列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况2:访问控制决策请求中包括“子资源访问列表”

针对这种情况,若访问控制决策请求中的“子资源访问列表”所列出的请求访问的目标资源的子资源不在访问控制策略中的“允许访问的子资源列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“子资源访问列表”所列出的请求访问的目标资源的子资源在访问控制策略中的“允许访问的子资源列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况3:访问控制决策请求中包括“目标资源的指示信息”

针对这种情况,若访问控制决策请求中的“目标资源的指示信息”所指示的请求访问的目标资源不在访问控制策略中的“允许访问的目标资源列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“目标资源的指示信息”所指示的请求访问的目标资源在访问控制策略中的“允许访问的目标资源列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况4:访问控制决策请求中包括“发起方标识”

针对这种情况,若访问控制决策请求中的“发起方标识”所指示的请求访问的发起方不在访问控制策略中的“允许的访问发起方列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“发起方标识”所指示的请求访问的发起方在访问控制策略中的“允许的访问发起方列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况5:访问控制决策请求中包括“操作类型指示信息”

针对这种情况,若访问控制决策请求中的“操作类型指示信息”所指示的请求作用于目标资源的操作类型不在访问控制策略中的“允许作用于目标资源的操作列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“操作类型指示信息”所指示的请求作用于目标资源的操作类型在访问控制策略中的“允许作用于目标资源的操作列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况6:访问控制策略中包括“上下文条件列表”

针对这种情况,若访问控制决策请求不满足访问控制策略中的“上下文条件列表”所包含的上下文条件,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求满足访问控制策略中的“上下文条件列表”所包含的上下文条件,则可进一步结合该访问控制策略中的其他规则进行判决。

具体地,用于资源属性进行访问权限判决的规则中包含资源属性列表,该属性列表中包括以下内容之一:

-一个或多个允许访问的资源属性或者资源属性的指示信息

-用于表示所有资源属性均被允许访问的指示信息

-用于表示所有资源属性均不允许访问的指示信息

若上述用于对资源属性进行访问权限判决的规则中若不包含资源属性列表,则该规则表明所有资源属性均不允许访问。

具体地,用于对子资源进行访问权限判决的规则中包含子资源列表,该子资源列表中包括以下内容之一:

-一个或多个允许访问的子资源或者子资源的指示信息

-用于表示所有子资源均被允许访问的指示信息

-用于表示所有子资源均不允许访问的指示信息

若上述用于对子资源进行访问权限判决的规则中若不包子资源列表,则该规则表明所有子资源均不允许访问。

进一步地,上述访问控制决策请求中,还可以包括提供建议指示,则判决为拒绝对访问控制决策请求所请求的目标资源进行访问时,根据提供建议指示,获取建议请求访问的目标对象列表,该列表中包含的资源属性和/或子资源能够被访问控制决策请求的发起方访问;并将建议请求访问的目标资源的目标对象列表发送给pep。

根据相同的技术构思,本发明实施例还提供了一种资源访问控制系统,可如图2所示,该系统包括pep、pdp。

pep用于接收资源访问请求,并根据资源访问请求向pdp发送访问控制决策请求。

pdp用于接收pep发送的访问控制决策请求,该访问控制决策请求中包括请求访问的目标资源的目标对象,该目标对象包括目标资源的资源属性、子资源、或者资源属性和子资源。获取用于对访问控制决策请求进行访问权限判决的访问控制策略;其中,该访问控制策略中包括用于对目标资源的目标对象进行访问权限判决的规则;根据获取到的访问控制策略对该访问控制决策请求进行访问权限判决,并向pep返回访问权限判决结果。

具体地,pdp对该访问控制决策请求进行访问权限判决时,针对访问控制策略中的每个规则均进行判决,可包括以下几种情况:

情况1:访问控制决策请求中包括“资源属性访问列表”

针对这种情况,若访问控制决策请求中的“资源属性访问列表”所列出的 请求访问的目标资源的资源属性不在访问控制策略中的“允许访问的资源属性列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“资源属性访问列表”所列出的请求访问的目标资源的资源属性在访问控制策略中的“允许访问的资源属性列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况2:访问控制决策请求中包括“子资源访问列表”

针对这种情况,若访问控制决策请求中的“子资源访问列表”所列出的请求访问的目标资源的子资源不在访问控制策略中的“允许访问的子资源列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“子资源访问列表”所列出的请求访问的目标资源的子资源在访问控制策略中的“允许访问的子资源列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况3:访问控制决策请求中包括“目标资源的指示信息”

针对这种情况,若访问控制决策请求中的“目标资源的指示信息”所指示的请求访问的目标资源不在访问控制策略中的“允许访问的目标资源列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“目标资源的指示信息”所指示的请求访问的目标资源在访问控制策略中的“允许访问的目标资源列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况4:访问控制决策请求中包括“发起方标识”

针对这种情况,若访问控制决策请求中的“发起方标识”所指示的请求访问的发起方不在访问控制策略中的“允许的访问发起方列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“发起方标识”所指示的请求访问的发起方在访问控制策略中的“允许的访问发起方列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况5:访问控制决策请求中包括“操作类型指示信息”

针对这种情况,若访问控制决策请求中的“操作类型指示信息”所指示的请求作用于目标资源的操作类型不在访问控制策略中的“允许作用于目标资源的操作列表”中,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求中的“操作类型指示信息”所指示的请求作用于目标资源的操作类型在访问控制策略中的“允许作用于目标资源的操作列表”中,则可进一步结合该访问控制策略中的其他规则进行判决。

情况6:访问控制策略中包括“上下文条件列表”

针对这种情况,若访问控制决策请求不满足访问控制策略中的“上下文条件列表”所包含的上下文条件,则判决为拒绝对该访问控制决策请求所请求的目标资源进行访问。若访问控制决策请求满足访问控制策略中的“上下文条件列表”所包含的上下文条件,则可进一步结合该访问控制策略中的其他规则进行判决。

具体地,用于对目标资源的资源属性进行访问权限判决的规则中包含资源属性列表,该资源属性列表中包括以下内容之一:

-一个或多个允许访问的资源属性或者资源属性的指示信息;

-用于表示所有资源属性均被允许访问的指示信息;

-用于表示所有资源属性均不允许访问的指示信息。

若上述用于对目标资源的资源属性进行访问权限判决的规则中若不包含资源属性列表,则该规则表明所有资源属性均不允许访问。

具体地,用于对目标资源的子资源进行访问权限判决的规则中包含子资源列表,该子资源列表中包括以下内容之一:

-一个或多个允许访问的子资源或者子资源的指示信息;

-用于表示所有子资源均被允许访问的指示信息;

-用于表示所有子资源均不允许访问的指示信息。

若上述用于对目标资源的子资源进行访问权限判决的规则中若不包子资源列表,则该规则表明所有子资源均不允许访问。

进一步地,上述访问控制决策请求中,还可以包括提供建议指示,则pdp还用于:若判决为拒绝对访问控制决策请求所请求的目标资源进行访问,则根据该提供建议指示,获取建议请求访问的目标资源的目标对象列表,该列表中包含的目标资源的目标对象能够被访问控制决策请求的发起方访问;将该建议请求访问的目标资源的目标对象列表发送给pep。

具体地,pep根据资源访问请求中的内容参数确定目标对象,所述内容参数包括请求访问的资源属性和/或子资源;或者,根据资源访问请求中的目标资源和请求作用于目标资源的操作确定目标对象。

该系统还可以包括prp,其中,prp用于存储用于对访问控制决策请求进行访问权限判决的访问控制策略。

pdp可以根据访问控制决策请求从prp处获取用于对访问控制决策请求进行访问权限判决的访问控制策略。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个 流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1