CN101631021A - 位置敏感且基于角色的访问控制方法、装置和系统 - Google Patents
位置敏感且基于角色的访问控制方法、装置和系统 Download PDFInfo
- Publication number
- CN101631021A CN101631021A CN200810132023A CN200810132023A CN101631021A CN 101631021 A CN101631021 A CN 101631021A CN 200810132023 A CN200810132023 A CN 200810132023A CN 200810132023 A CN200810132023 A CN 200810132023A CN 101631021 A CN101631021 A CN 101631021A
- Authority
- CN
- China
- Prior art keywords
- role
- band
- matrix
- partial ordering
- relation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Position Fixing By Use Of Radio Waves (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供了位置敏感且基于角色的访问控制方法、装置和系统。目标空间被划分为若干位置区域,每一位置区域具有相应的位置敏感许可集,目标空间中的用户被划分为一种或多种角色,并且每一角色与一位置区域相映射,访问控制方法包括:获取各个角色之间的组织关系和表示各个位置区域的位置向量;基于位置区域的位置向量分析这些位置区域相互之间的覆盖关系从而建立位置偏序关系;滤除位置偏序关系中的传递覆盖关系以获得位置邻接关系;将各个角色之间的组织关系中的角色邻接关系添加到位置邻接关系中从而建立位置-角色邻接关系;基于位置-角色邻接关系来计算位置-角色偏序关系;以及参考所述位置-角色偏序关系来确定是否授权用户的访问。
Description
技术领域
本发明涉及访问控制,更具体地涉及利用自动建立的位置敏感且基于角色的访问控制模型对目标资源进行访问控制的方法、装置和系统。
背景技术
随着基于位置服务(LBS)的普及,位置敏感-基于角色的访问控制(LRBAC)在诸如机密会议、公司信息安全、金融机构的数据安全等的许多应用中都有很好的前景。
特定的应用场合(例如通信网络、公司、医院等)通常涉及各种用户,其中,这些用户可以按相互关系或者用户在该应用场合中充当的角色来成组或归类。角色之间通常具有层级关系并且各个角色通常承担不同的职能职责,因而各个用户可能需要与其角色相关联地访问特定资源。另外,出于安全、隐私或其它因素的考虑,可能需要按角色限制用户对特定资源的访问。于是希望开发基于用户角色的访问控制机制。
此外,可以使用位置信息来提供额外的安全措施,因而服务的可访问性也可以取决于用户的位置。例如,对于特定的目标资源,仅当用户位于该目标资源所在位置时才允许该用户对其进行访问。因此,很重要的是对访问控制机制的传统概念进行扩展,以考虑用户在有界空间的假设下的移动性。可能由于以下几种原因而使空间有界化:因为物理和技术限制(例如,办公空间、公园边界、网络范围等),或者因为营销抉择(例如,赋予到访者的区域越大,则到访者支付费用也越多),或者出于安全的考虑(例如,军事区内的服务)。
出于以上考虑,LRBAC系统使用用户的位置和角色信息作为判断依据来授予用户访问许可。现有的LRBAC系统是基于LRBAC模型来管理用户对目标资源的访问的。LRBAC模型的核心思想是通过建立许可分配(PA,permission assignment)关系来模型化从角色、位置到许可的分配。PA限定了当针对特定角色的许可根据该角色所关联用户的位置而动态变化时的安全策略。
LRBAC模型的建立可以追溯到由R.Sandhu、D.Ferraiolo和R.Kuhn在论文“The NIST Model for Role Based Access Control:Towards a UnifiedStandard,Proceedings of 5th ACM Workshop on Role Based Access Control,July 26-27,2000”中提出的RBAC模型(Role-Based Access Controlmodel)。RBAC模型将用户的角色视为访问控制的唯一判断依据。
基于RBAC,通过引入用户的位置信息作为访问控制的附加判断依据,提出了各种位置敏感-基于角色的访问控制(LRBAC)模型。例如,在F.Hansen和V.Oleshchuk的论文“Spatial role-based access control modelfor wireless networks,Proceedings of Vehicular Technology Conference,2003”中,RBAC被扩展以克服无线计算环境中的空间需求并限定基于位置的安全策略。在Indrakshi Ray、Mahendra Kumar和Lijun Yu的论文“ALocation-Aware Role-Based Access Control Model,Proceedings of ICISS 2006:147-161”中提出了一种LRBAC模型,用以示出RBAC模型中的不同分量如何与位置相关,以及该位置信息如何用于判断用户是否可以访问给定目标。在M.L.Damiani、E.Bertino、B.Catania和P.Perlasca的论文“ASpaially Aware RBAC,ACM TISSEC,February 2007”中提出了一种GEO-RBAC模型,用以利用OGC(开放地理空间信息联盟)标准来模型化位置信息。空间实体被用于模型化目标、用户位置、和地理上有界的角色。
可见,以上的位置敏感-基于角色的访问控制主要集中于对使用角色和位置两者作为判断依据的访问控制模型的描述和公式表示,因此这样的模型是很难付诸实际应用的。具体而言,当特定应用环境需要位置敏感-基于角色的访问控制时,将需要花费大量精力来分析并定义从角色、位置到许可的多对多分配。
因为LRBAC模型中的角色-位置-许可事实上是三维映射关系,因此对于大规模的基于位置的应用而言,LRBAC模型的建立处理是复杂、不用户友好,且极其困难的。这使得基于这种现有技术LRBAC模型的访问控制是高成本且不用户友好的。
发明内容
基于以上分析,本发明希望提供简单、用户友好且自动化的访问控制方法、装置和系统。
根据本发明一个方面,提供了一种访问控制方法,其中,目标空间被划分为若干位置区域,每一位置区域具有相应的位置敏感许可集,目标空间中的用户被划分为一种或多种角色,并且每一角色与一位置区域相映射,该方法包括以下步骤:获取各个角色之间的组织关系和表示各个位置区域的位置向量;基于位置区域的位置向量分析这些位置区域相互之间的覆盖关系从而建立位置偏序关系;滤除位置偏序关系中的传递覆盖关系以获得位置邻接关系;将各个角色之间的组织关系中的角色邻接关系添加到位置邻接关系中从而建立位置-角色邻接关系;基于位置-角色邻接关系来计算位置-角色偏序关系;以及参考所述位置-角色偏序关系来确定是否授权用户的访问。
在一个示例中,各个角色之间的组织关系用矩阵、表格或Hasse图表示。在一个示例中,位置偏序关系、位置邻接关系、位置-角色邻接关系和位置-角色偏序关系中的每一个都用矩阵表示。
根据本发明另一个方面,提供了一种访问控制装置,其中,目标空间被划分为若干位置区域,每一位置区域具有相应的位置敏感许可集,目标空间中的用户被划分为一种或多种角色,并且每一角色与一位置区域相映射,该装置包括:获取部分,被配置为获取各个角色之间的组织关系和表示各个位置区域的位置向量;位置偏序关系建立部分,被配置为基于位置区域的位置向量来分析位置区域相互之间的覆盖关系从而建立位置偏序关系;位置邻接关系建立部分,被配置为滤除位置偏序关系中的传递覆盖关系以建立位置邻接关系;位置-角色邻接关系建立部分,被配置为将各个角色之间的组织关系中的角色邻接关系添加到位置邻接关系中从而建立位置-角色的邻接关系;位置-角色偏序关系计算部分,被配置为基于位置-角色邻接关系来计算位置-角色偏序关系;以及鉴权部分,被配置为参考所述位置-角色偏序关系来确定是否授权用户的访问。
根据本发明又一个方面,提供了一种访问控制系统,其包括:客户端,用户使用该客户端来发出包括该用户的角色信息的访问请求;无线定位装置,用于确定该用户所处的位置;以及根据本发明一个实施例的访问控制装置,用于根据从客户端传送而来的所述用户的角色信息以及从无线定位装置传送而来的所述用户的位置信息来确定是否授权该用户的访问请求。
通过结合附图来阅读以下详细描述,本发明的其它特征和优点对于本领域技术人员而言将变得足够清楚。
附图说明
图1是示出角色、位置区域、位置许可集和角色许可集之间的对应关系的一个示例的表格;
图2是示出各个角色的组织关系的一个示例的示图;
图3是示出根据本发明一个实施例的LRBAC处理的流程图;
图4示出了根据本发明一个实施例、基于角度来判断一个点是否落在一个凸多边形区域内的处理的流程图;
图5示出了某技术开发公司C的办公区图;
图6是示出图5所示公司应用场合所涉及的角色、位置区域、位置许可集以及角色许可集之间的对应关系的表格;
图7是示出图5所示的公司应用场合所涉及的角色之间的组织关系的示图;
图8示出了图5所示的公司应用场合的许可Hasse图;
图9示出了根据本发明一个实施例的位置敏感-基于角色的访问控制装置的配置;以及
图10是示出可以实现本发明的一个示例性位置敏感-基于角色的访问控制系统的示意图。
具体实施方式
以下将参考附图来描述本发明的实施例。在这里的描述中,提供了许多具体细节以帮助全面理解本发明的实施例。但是,本领域的技术人员将了解,没有这些具体细节中的一个或多个也能实现本发明。在其他情况下,没有具体地示出或详细描述公知的组件或操作,以避免不必要地模糊本发明实施例的各个方面。
接下来,在详细描述根据本发明的位置敏感-基于角色的控制(LRBAC)方法之前,为了便于理解本发明,将结合附图1-2简要描述本发明所涉及的下述概念以及它们的相互关系:角色、位置区域、位置许可集、角色许可集和角色之间的组织关系。其中,图1是示出角色、位置区域、位置许可集和角色许可集之间的对应关系的一个示例的表格,而图2是示出各个角色的组织关系的一个示例的示图。
对于给定的目标空间(例如,网络环境、公司、医院等),该目标空间中的用户可以划分为一种或多种角色(表示为角色集合R,R包括r1、r2、…、rn,n为自然数),并且该目标空间可以划分为若干位置区域(表示为位置区域集合L,L包括loc1、loc2、…、locN,N为自然数)。另外,在实际应用中,每个角色通常都拥有其位置区域。换而言之,每个角色可以映射到一位置区域。例如,角色“经理”可以映射到经理办公室,角色“医生”可以映射到“诊室”等。但是,反过来,并不是每个位置区域都有对应角色,因而存在n≤N。图1中的表格的前两行示出了角色与位置区域的对应关系。
在本发明中,定义了一个函数floc(ri),用于计算给定角色ri的对应位置区域。通过这种方式,角色-位置-许可的三维映射关系可以缩减为角色/位置-许可的二维映射关系。
这里应该注意,在实际应用中,划分得到的位置区域之间不存在部分交叉的情形。也就是说,对于任意两个位置区域,要不两个位置区域互不交叉,要不一个位置区域完全覆盖另一个位置区域。此外,优选的是,将位置区域数学近似为多边形。
此外,对于该给定目标空间,目标空间中的资源(例如,文件、软件、网页、打印等)可以被配置为位置敏感,以使得位置区域集合L中的各个位置区域与预定安全级别的资源相关联。即,对于给定的位置敏感资源,只有当用户处于该位置敏感资源所关联的位置区域中时,才允许该用户访问该位置敏感资源。这里,将与位置区域相关联的预定安全级别的资源称为位置敏感许可集(以下简称为位置许可集)。如上所述的位置区域集合L中的各个位置区域loc1、loc2、…、locN的对应位置许可集表示为PerL1、PerL2、...、PerLN,如图1中的表格的第三行所示。
角色许可集,是指各个角色的可能访问权限。如上所述的角色集合R中的各个角色r1、r2、…、rn的对应角色许可集表示为PerR1、PerR2、...、PerRn,如图1中的表格的第四行所示。在本发明中,每个角色许可集由一个或多个位置许可集组成。例如,角色ri(i=1、2、...、n)的角色许可集PerRi可以包括PerLj(j=1、2、...、N)。在这种情况下,PerLj是角色ri的可能访问权限,因为在本发明中目标资源是位置敏感的,所以仅当承担角色ri的用户在位置区域locj中时才真正具有对位置许可集PerLj的访问权限。
角色之间的组织关系是指层级关系,例如,公司职员按职能划分的上下级关系,或者网络用户按服务级别划分的层级关系,等等。如上所述的角色集合R中的各个角色r1、r2、…、rn例如具有图2所示的组织关系。一般而言,较高级别的角色具有比较低级别的角色更多的许可。例如,参考图2,对于角色r1和r2,存在 根据一个实施例,该组织关系可以用矩阵、表格或Hasse图来表示。
在本发明中,角色、位置区域、位置许可集以及角色之间的组织关系是预先设定的,而角色许可集是需要计算得到的。
以下将参考图3来描述根据本发明的位置敏感-基于角色的访问控制(LRBAC)处理。图3是示出根据本发明一个实施例的LRBAC处理10的流程图。
如图3所示,根据本实施例的LRBAC处理10从步骤S11开始。在步骤S11中,给定目标空间所包括的各个位置区域的位置向量以及所涉及的角色的组织关系被获得。
注意,这里所使用的位置向量例如是由多边形位置区域的顶点坐标组成的顶点坐标向量。例如,对于有m(m≥3)个顶点的位置区域,其顶点坐标向量表示为[v(1),v(2),v(3),...v(m)],其中,v(i)是该位置区域的第i个顶点的顶点向量[vx(i),vy(i)],并且在顶点向量[vx(i),vy(i)]中,vx(i)是该第i个顶点的横坐标,vy(i)是该第i个顶点的纵坐标,i=1,2,3,...m。特别地,在给定位置区域呈矩形的情况下,该位置区域的位置向量例如是由左下顶点和右上顶点限定的对角向量[l,d,r,t],其中,(l,d)和(r,t)是该矩形位置区域的左下顶点和右上顶点的坐标。当然,矩形位置区域也可以由左上顶点和右下顶点限定的对角向量来表示。
在获得各个位置区域的位置向量和各个角色的组织关系之后,图3所示的处理10前进到步骤S12。
在步骤S12中,通过分析各个位置区域的覆盖关系来建立位置偏序关系。本领域技术人员应当了解,覆盖关系具有自反性、反对称性和传递性,因此覆盖关系是一种偏序关系。对于任意两个位置区域loci和locj,如果区域loci完全包含在区域locj中,则可以确定区域locj覆盖区域loci,表示为loci<locj。特别地,对于任意两个凸多边形位置区域loci和locj,如果区域loci的所有顶点都落在区域locj的范围内,则可以确定loci<locj。在这种情况下,关键问题是如何确定一个点是否落在一个位置区域内。
以下将参考图4来描述根据本发明一个实施例的基于角度来判断一个点(假定为X)是否落在一个凸多边形区域R内的处理,其中,该凸多边形区域R的位置向量为[v(1),v(2),v(3),...,v(m)],m为该凸多边形区域的顶点数目。
如图4所示,首先在步骤S51中将点X的坐标初始化为零,即v[X]=(0,0),也就是说,重新定义了一个原点为X的新坐标系;并且定义以下新的变量:Angle=0,i=1,f=0。然后在步骤S52中,确定区域R的各个顶点在新坐标系中所处的象限。
接下来,在步骤S53中,从第一个顶点v(1)开始顺序地获取区域R的两个顶点v(i)和v(i+1)。在步骤S54中判断这两个顶点是否处于同一个象限,如果它们处于同一个象限,则处理前进到步骤S64;否则处理进一步判断顶点v(i)的下一个顶点v(i+1)是否处于其下一个象限(S55)。在步骤S55中,如果顶点v(i+1)处于顶点v(i)的下一个象限,则将Angle的值加上π/2(S56),否则进一步判断顶点v(i+1)是否处于顶点v(i)的上一个象限(S57)。在步骤S57中,如果判定顶点v(i+1)处于顶点v(i)的上一个象限,则将Angle的值减去π/2(S58),否则可以判定顶点v(i+1)处于顶点v(i)的对角象限。在这种情况下,在步骤S59中,计算变量f的值:
f=vy(i+1)vx(i)-vx(i+1)vy(i) (1)
其中,(vx(i),vy(i))为顶点v(i)在新坐标系中的坐标。
然后,在步骤S60中,判断f的值是否大于零。如果判定f>0,则在步骤S61中将Angle的值加上π,否则进一步判断f是否小于零(S62)。如果判定f<0,则在步骤S63中将Angle的值减去π,否则可以判定f=0并且处理前进到步骤S64。此外,在完成步骤S56、S58、S61或S63的计算之后,处理也前进到步骤S64。在步骤S64中,将i值加1。然后在步骤S65中判断此时的i是否小于区域R的顶点数目m,如果判定i<m,则处理返回到步骤S53以进行下一对顶点的比较。否则,判断i是否等于m,也就是判断是否已经到达最后一个顶点(S66)。如果答案是肯定的,则将顶点v(1)赋给此时的v(i+1)(步骤S67),然后处理返回到步骤S53,以使得对区域R的第m个顶点和第一个顶点进行比较。否则,区域R的所有顶点的比较结束,于是在步骤S68中根据最终得到的Angle的值来判断点X是否落在区域R的范围内。具体而言,如果Angle=2π,则点X在区域R内;如果Angle=π,则点X在区域R的一条边上;否则,点X在区域R的范围之外。
通过上述基于角度的处理,对于任意两个凸多边形区域loci和locj,如果区域loci的所有顶点都落在区域locj的范围内,则可以确定loci<locj。
现在返回到图3,在步骤S12中,在感兴趣的位置区域呈矩形时,可以通过对矩形位置区域的对角向量进行比较来确定这些矩形位置区域的覆盖关系,从而简化确定任意两个位置区域的覆盖关系的处理。在一个实施例中,对于任意两个矩形位置区域loci和locj,
如果 则loci<locj (2)其中,i、j=1,2,...,N,N为位置区域的数目。
应当注意,在步骤S12中,根据一个实施例,可以用N*N矩阵RL来表示位置偏序关系,其中,N为位置区域的数目。矩阵RL中的各个元素按下式来取值。
在矩阵RL中,行1、2、...、N分别对应于位置区域loc1、loc2、…、locN,并且列1、2、...、N分别对应于位置区域loc1、loc2、…、locN。以上虽然描述了用矩阵表示位置偏序关系的示例,但是,这仅仅是例示性的而非限制性的。本领域技术人员应当了解,也可以用二叉树之类的树等来表示位置偏序关系。
还应当注意,位置区域的覆盖关系暗示了位置许可集的覆盖关系。对于任意两个位置区域loci和locj,它们的位置许可集分别为PerLi和PerLj,如果存在loci<locj,则 为真。这很容易理解,例如,当一个用户处于位置区域loci中时,其具有的位置许可集为PerLi,而当其处于位置区域locj中时,其具有的位置敏感许可集合为PerLj。此时,如果存在loci<locj,则当用户处于loci中时,他也处于locj中,那么必然会有 因此,对于矩阵RL中的各个元素,可以理解为:
本领域公知的是,覆盖关系可以分为直接覆盖和传递覆盖(transitivecoverage)。顾名思义,直接覆盖指的是一个区域直接被另一个区域覆盖,而传递覆盖指的是间接覆盖。例如,如果存在覆盖关系loci<locj<lock,则区域loci被区域locj直接覆盖,并且被区域lock传递覆盖,这两种覆盖关系都包括在步骤S12所建立的位置偏序关系中。但是,事实上,传递覆盖是可以从直接覆盖关系推导得到的。所以可以滤除该位置偏序关系中的传递覆盖关系,以便于下一步处理。
在步骤S12中建立各个位置区域的位置偏序关系之后,图3所示的处理10前进到步骤S13。
在步骤S13中,通过滤除步骤S12所建立的位置偏序关系中的传递覆盖关系来获得仅指示出直接覆盖关系的位置邻接关系。具体而言,在loci<lock的情况下,如果存在loci<locj和locj<lock,则删除loci和lock的覆盖关系loci<lock。
根据本发明一个实施例,可以用矩阵AL来表示所述位置邻接关系。但是本领域技术人员应当了解,这个实施例仅仅是例示性的而非限制性的,例如,也可以用二叉树之类的树等来表示位置邻接关系。在一个示例中,位置邻接关系矩阵AL可以基于位置偏序关系矩阵RL通过以下算法计算得到。
1.AL=RL
2.for i=1:N
for j=1:N
if AL(i,j)=1
for k=1:N,j≠k
if AL(i,k)=1a nd if AL(k,j)=1,AL(i,j)=0
else if AL(j,k)=1,AL(i,k)=0
endfor
endif
endfor
endfor
本领域技术人员应当了解,以上仅仅是从位置偏序关系矩阵RL推导位置邻接关系矩阵AL的一个示例算法,其仅仅是示意性的而非限制性的。根据本发明所给出的技术启示,本领域技术人员还可以提出许多变形例和修改例。
在步骤S13中获得位置邻接关系之后,图3所示的处理10前进到步骤S14。
在步骤S14中,根据角色与位置区域的映射关系(参见图1中的表格前两行),可以将各个角色之间的邻接关系添加到步骤S13所获得的位置邻接关系中,从而建立位置-角色邻接关系。
在步骤S14中,角色之间的邻接关系可以通过遍历步骤S11所获得的各个角色的组织关系(例如,如图2所示)来获得。例如,在角色之间的组织关系用Hasse图表示的情况下,根据Hasse图自身的特性,如果角色ri和角色rj之间存在链路,并且角色ri是角色rj的父角色,则角色ri邻接于角色rj,并且角色ri的许可直接覆盖角色rj的许可。此时,根据角色与位置区域的映射关系,可以将任意两个角色之间的邻接关系(即,角色许可的直接覆盖关系)添加到所述位置邻接关系中的由该任意两个角色所对应的位置区域限定的位置处。换而言之,可以根据角色与位置区域的映射关系将角色邻接关系与位置邻接关系合并以形成位置-角色邻接关系。
例如,在用矩阵来表示步骤S13所获得位置邻接关系的情况下,可以通过下述方式将其更新为位置-角色邻接关系矩阵AL,R:1)将位置邻接关系矩阵AL赋值给位置-角色邻接关系矩阵AL,R;2)遍历角色的Hasse图,如果角色ri和角色rj之间存在链路,则使得
AL,R(Idex(floc(ri)),Idex(floc(rj))=1 (5)
其中,floc(ri)表示角色ri所对应的位置区域,而算子Idex(·)用于提取位置区域在矩阵AL,R中的行标或列标。
应当注意,因为每个角色都具有一个对应位置区域,所以在位置-角色邻接关系矩阵AL,R中,可以将其行理解为角色ri,而将其列理解为位置区域locj。在位置敏感-基于角色的访问控制中,当用户的角色以及该用户所处位置确定时,就可以得到该用户的许可集。因此,如果用户具有角色ri且其处于位置locj,并且存在AL,R(ri,locj)=1,则此时该用户具有许可集合Per(ri,locj),而且该许可集合Per(ri,locj)被角色许可集PerRi覆盖。因此,利用位置-角色邻接关系(位置-角色直接覆盖关系)矩阵AL,R,可以列出由位置和角色确定的许可直接覆盖关系。
在步骤S14中建立位置-角色邻接关系之后,图3中的处理10前进到步骤S15。
在步骤S15中,基于在步骤S14中建立的位置-角色邻接关系来计算位置-角色偏序关系。在本发明一个实施例中,在用矩阵来表示步骤S14所建立的位置-角色邻接关系的情况下,可以通过下式来计算位置-角色偏序关系矩阵RL,R:
其中,算子表示逻辑与。如式(7)所示,矩阵AL,R的逻辑平方中的第i行、第j列的元素是将矩阵AL,R的第i行和第j列的对应元素进行逻辑与然后进行逻辑或来得到的。通过这种方式,基于式(7)的运算,就可以得到矩阵AL,R的逻辑k次幂。
本领域技术人员应当了解,根据图论(Graph theory)以及上面的论述,AL,R表示许可集合的直接覆盖关系,AL,R 2表示深度为2的传递覆盖关系,而AL,R k表示深度为k的传递覆盖关系。因此,根据式(6)可以得到完备的覆盖关系(偏序关系)。
此外,根据角色和位置之间的映射关系,可以认为,矩阵RL,R中的每一行指示角色,而每一列指示位置区域。而且,如上所述,位置区域的覆盖关系可以转换为位置许可集的覆盖关系,并且角色的邻接关系可以转换为角色许可集的覆盖关系。因此,矩阵RL,R指示出了综合的位置-角色许可的覆盖关系(许可的偏序关系)。
事实上,到此为止完成了位置敏感且基于角色的访问控制模型的建立。在获得完备的位置-角色偏序关系之后,图3中的处理10前进到步骤S16。
在步骤S16中,通过参考步骤S15所计算得到的位置-角色偏序关系来确定是否授权用户的访问。具体而言,例如可以利用图4所示的处理来确定用户所处的位置落在哪个或哪些位置区域中,然后参考在步骤S15中获得的位置-角色偏序关系(位置-角色许可覆盖关系)来确定用户所承担的角色在这个或这些位置区域中是否有访问权限。
至此,完成了根据以上实施例的位置敏感-基于角色的访问控制处理。
根据本发明一个实施例,在图3所示的步骤S16中,还可以基于所计算得到的完备位置-角色偏序关系来确定各个角色的角色许可集。在一个示例中,基于位置-角色偏序关系矩阵RL,R,通过以下示例算法来生成各个角色的许可集。其中,Per(ri)表示角色许可集PerRi,Per(lj)表示位置许可集PerLj。
For i=1:n
permission sets Per(ri)=empty
for j=1
if(RL,R(ri,lj)==1)
add permission set Per(lj)to Per(ri)
end if
j++;
end for
end for
应当了解,以上给出的是基于位置-角色偏序关系来确定各个角色的角色许可集的示例算法,其仅仅是示意性的而非限制性的。根据本发明所给出的技术启示,本领域技术人员还可以提出许多变形例和修改例。在各个角色的角色许可集被确定的情况下,在图3的步骤S16中,参考位置-角色偏序关系包括查询各个角色的角色许可集。
此外,根据本发明一个实施例,位置敏感-基于角色的访问控制处理还包括接收用户的访问请求、该用户的角色信息以及该用户的位置信息,并且在授权用户的访问请求时,根据该用户的访问请求、角色信息和位置信息,参考所述位置-角色偏序关系来确定是否授权该用户进行访问。
此外,根据本发明一个实施例,位置敏感-基于角色的访问控制处理还可以根据完备的位置-角色偏序关系,例如根据上述位置-角色偏序关系矩阵RL,R来生成并输出许可Hasse图。在一个示例中,首先根据矩阵RL,R来计算许可覆盖矩阵CL,R(参见殷剑宏的论文“An efficient algorithm ofevaluating Hasse Diagram,Journal of Hefei University of Technology(一种生成Hasse图的有效算法),Vol.28 No.3,2005”):
CL,R=(RL,R-I)-(RL,R-I)2 (8)
其中,(RL,R-I)2表示矩阵(RL,R-I)的逻辑平方;然后根据以下两个规则,对许可覆盖矩阵CL,R中的每个元素绘制一个点,并且在这些点之间绘制线段:
1)对于许可覆盖矩阵中的任意两个元素x和y,如果存在x<y,则在绘图时与x相对应的点出现在与y相对应的点的下方;
2)对于任意两个元素x和y,如果x覆盖y或者y覆盖x,则与这两个元素相对应的点之间的线段包括在图中。
为了便于理解,以下将以公司应用场合为例、参考图5-7并结合图3所示的处理10来描述根据本发明一个实施例的位置敏感-基于角色的访问控制处理。图5示出了某技术开发公司C的办公区图,图6是示出图5所示公司应用场合所涉及的角色、位置区域、位置许可集以及角色许可集之间的对应关系的表格,而图7是示出图5所示的公司应用场合所涉及的角色之间的组织关系的示图。
如图5所示,该公司包括以下角色:经理M、项目组长Tl1、项目组长Tl2、项目组T1的软件工程师S1、项目组T1的硬件工程师H1、项目组T2的软件工程师S2和项目组T2的硬件工程师H2。对于以上的每个角色都存在一个与其相对应的位置区域(图中,除经理办公室之外用虚线框指示的区域),分别表示为Loc_M、Loc_Tl1、Loc_Tl2、Loc_S1、Loc_H1、Loc_S2和Loc_H2。此外,按照职能分工(例如按照项目分组),还可以将所述办公区划分为项目组T1所处位置区域Loc_T1、项目组T2所处位置区域Loc_T2以及经理办公室Loc_M。可见,位置区域Loc_T1覆盖了位置区域Loc_S1、Loc_H1和Loc_Tl1,而位置区域Loc_T2覆盖了位置区域Loc_S2、Loc_H2和Loc_Tl2。另外,整个办公区可以用Loc_C表示。至此,可以得到角色和位置区域之间的映射关系。图6中的表格的前两行示出了基于图5的应用场合的角色和位置区域的对应关系。此外,图6中的表格还给出了与各个位置区域相对应的位置许可集PerL_M、PerL_Tl1、PerL_Tl2、PerL_S1、PerL_H1、PerL_S2、PerL_H2、PerL_T1、PerL_T2、PerL_C等,以及与各个角色相对应的角色许可集PerR_M、PerR_Tl1、PerR_Tl2、PerR_S1、PerR_H1、PerR_S2、PerR_H2等。图7示出了图5所示的公司应用场合所涉及的角色的示例性组织关系。如上所述,较高级别的角色具有比较低级别的角色更多的许可。例如,参考图7,对于角色M和Tl1,存在
现在,将结合图3所示的处理10来描述上述公司应用场合的位置敏感-基于角色的访问控制处理。为了清楚起见,在随后的描述中提及的偏序关系和/或邻接关系都用矩阵来表示,但是,这仅仅是例示性的而非限制性的。本领域技术人员应当了解,偏序关系和/或邻接关系也可以用诸如二叉树之类的树来表示。
在图3的步骤S11中,公司C的办公区图(参见图5)和公司C中的各个角色的组织关系(参见图7)被获得,其中各个角色的组织关系是用Hasse图表示的。如图5所示,在本示例中,公司C的各个位置区域呈矩形,因此在步骤S11中获得了以下位置向量:
区域Loc_C=[0,0,100,100]
区域Loc_M=[0,0,100,25]
区域Loc_T1=[0,25,45,100]
区域Loc_T2=[55,25,100,100]
区域Loc_Tl1=[5,26,30,40]
区域Loc_Tl2=[70,26,90,40]
区域Loc_H1=[5,43,40,65]
区域Loc_H2=[60,43,95,65]
区域Loc_S1=[5,68,40,90]
区域Loc_S2=[60,68,95,90]
在步骤S12中,对步骤S11所获得的各个位置区域的位置向量进行比较,以确定任意两个位置区域的覆盖关系,从而建立位置偏序关系矩阵RL。例如,对于区域Loc_C和区域Loc_M,通过比较它们的位置向量可以得到:
在步骤S13中,通过滤除步骤S12所建立的位置偏序关系矩阵RL中的传递覆盖关系来获得仅指示出位置直接覆盖关系的位置邻接关系矩阵AL。例如,在式(9)的矩阵RL中,存在RL(Loc_Tl1,Loc_C)=1(即,位置区域Loc_C覆盖位置区域Loc_Tl1),与此同时,存在RL(Loc_Tl1,Loc_T1)=1(即,位置区域Loc_T1覆盖位置区域Loc_Tl1)和RL(Loc_T1,Loc_C)=1(即,位置区域Loc_C覆盖位置区域Loc_T1)。由此可见,位置区域Loc_C传递覆盖位置区域Loc_Tl1,则删除位置区域Loc_C和Loc_Tl1之间的传递覆盖关系,即使得RL(Loc_Tl1,Loc_C)=0。通过这种方式,可以滤除位置偏序关系矩阵RL中的所有传递覆盖关系,并得到位置邻接关系矩阵AL,如下式(10)所示。
在步骤S14中,根据角色与位置区域的映射关系(参见图6中的表格前两行),可以将各个角色之间的邻接关系添加到步骤S13所获得的位置邻接关系矩阵AL中。具体而言,遍历步骤S11所获得的各个角色的Hasse图(参见图7),如果两个角色存在邻接关系,则将该邻接关系添加到位置邻接关系矩阵AL中的与这两个角色的位置区域相对应的位置处。例如,参见图7,可见角色M和角色Tl1存在邻接关系,于是将该邻接关系添加到位置邻接关系矩阵AL中的位置区域Loc_M行和位置区域Loc_Tl1列的位置处,即,使得AL(Loc_M,Loc_Tl1)=0被更新为AL(Loc_M,Loc_Tl1)=1。通过这种方式,可以得到位置-角色邻接关系矩阵AL,R,如下式(11)所示。
在步骤S15中,基于在步骤S14中建立的位置-角色邻接关系矩阵AL,R根据式(6)来计算完备的位置-角色偏序关系矩阵RL,R,如下式(12)所示。
最后,在步骤S16中,通过参考步骤S15所计算得到的位置-角色偏序关系矩阵RL,R来确定是否授权用户的访问。至此,完成了在图5所示的公司应用场合中的位置敏感-基于角色的访问控制。
在一个实施例中,在图5所示的公司应用场合下,可以基于位置-角色偏序关系矩阵RL,R,利用本领域公知的简单算法(例如,上面所述的算法)来确定各个角色的许可集,如下所示:
PerR_M={PerL_M,PerL_Tl1,PerL_Tl2,PerL_S1,PerL_H1,PerL_S2,
PerL_H2,PerL_T1,PerL_T2,PerL_D};
PerR_Tl1={PerL_Tl1,PerL_S1,PerL_H1,PerL_T1,PerL_D};
PerR_Tl2={PerL_Tl2,PerL_S2,PerL_H2,PerL_T2,PerL_D};
PerR_S1={PerL_S1,PerL_T1,PerL_D};
PerR_H1={PerL_H1,PerL_T1,PerL_D};
PerR_S2={PerL_S2,PerL_T2,PerL_D};
PerR H2={PerL_H2,PerL_T2,PerL_D}。
在此实施例中,步骤S16中的参考位置-角色偏序关系矩阵RL,R包括查询各个角色的角色许可集。
此外,在一个实施例中,在图5所示的公司应用场合下,可以根据上述位置-角色偏序关系矩阵RL,R来生成并输出许可Hasse图。具体而言,首先将计算得到的位置-角色偏序关系矩阵RL,R代入式(8),从而计算得到许可覆盖矩阵CL,R,如下式(13)所示。在式(13)所示的矩阵CL,R中,每个元素表示许可的覆盖关系。例如,CL,R(Loc_T1,Loc_C)=1表示位置区域Loc_T1所对应的位置许可集覆盖位置区域Loc_C所对应的位置许可集;而CL,R(Loc_M,Loc_Tl1)=1表示位置区域Loc_M所对应的角色M的角色许可集覆盖位置区域Loc_Tl1所对应的角色Tl1的角色许可集。由此可见,在许可覆盖矩阵CL,R中,行标所对应的许可覆盖列标所对应的许可。为了便于理解,将式(13)所示的矩阵CL,R中的行标和列标改变为相应的许可,如式(14)所示。
接下来,基于式(14)所示的许可覆盖矩阵CL,R,根据上述两个绘制Hasse图的规则来绘制许可的Hasse图。例如,从式(14)所示的矩阵可见,存在Per_C<Per_T1,则在绘图时Per_C出现在Per_T1的下方,并且Per_C和Per_T1之间连接有线段。图8示出了按这种方式绘制得到的许可Hasse图。从该图中,可以很容易地看出各个角色的角色许可集。例如,Per_M在许可Hasse图的最顶点,并且Per_M与图中的所有其它元素之间都存在一条从上往下的链路,因此,角色M的角色许可集覆盖所有其它许可集。因此,在以图形方式呈现许可分配的情况下,位置敏感-基于角色的访问控制变得更加用户友好。
以下将详细描述根据本发明的位置敏感-基于角色的访问控制装置。图9示出了根据本发明一个实施例的位置敏感-基于角色的访问控制装置90的配置。访问控制装置90包括获取部分91、位置偏序关系建立部分92、位置邻接关系建立部分93、位置-角色邻接关系建立部分94、位置-角色偏序关系计算部分95和鉴权部分96。
获取部分91被配置为获取给定应用环境(目标空间)的位置区域图以及所涉及的角色的组织关系。其中,位置区域可以表示为位置向量,组织关系可以表示为矩阵、表格或Hasse图等。
位置偏序关系建立部分92被配置为基于获取部分91所获得的位置区域图,通过分析各个位置区域的覆盖关系来建立位置偏序关系。在数学上,任何形状的位置区域都可以近似为多边形区域。在位置区域呈凸多边形的情况下,位置偏序关系建立部分92通过判断一个凸多边形位置区域的所有顶点是否都落在另一个凸多边形位置区域内来确定这两个位置区域的覆盖关系,从而确定所有位置区域的覆盖关系。另一方面,在位置区域呈矩形时,通过对矩形位置区域的对角向量进行比较来确定这些位置区域的覆盖关系。根据本发明一个实施例,可以用矩阵RL来表示各个位置区域的位置偏序关系。
位置邻接关系建立部分93通过滤除由位置偏序关系建立部分92建立的位置偏序关系中的传递覆盖关系来建立仅指示出直接覆盖关系的位置邻接关系。根据本发明一个实施例,可以用矩阵AL来表示该位置邻接关系。
位置-角色邻接关系建立部分94基于获取部分91所获得的各个角色的组织关系,例如通过遍历角色的Hasse图来确定各个角色的邻接关系,并根据角色与位置区域的映射关系(如上所述)将所确定的角色邻接关系添加到位置邻接关系建立部分93所计算得到的位置邻接关系中,从而建立位置-角色邻接关系。根据本发明一个实施例,可以用矩阵AL,R来表示该位置-角色邻接关系。如上所述,矩阵AL,R的行标可以代表角色,而其列标可以代表位置区域,并且该矩阵的每一行指示赋予该行所对应的角色ri的许可集PerRi。因此,利用位置-角色邻接关系矩阵AL,R,可以列出由位置和角色确定的许可直接覆盖关系。
位置-角色偏序关系计算部分95基于由位置-角色邻接关系建立部分94建立的位置-角色邻接关系来计算完备的位置-角色偏序关系。位置-角色偏序关系包括所有的覆盖关系,即,直接覆盖关系以及任意深度的传递覆盖关系。根据本发明的一个实施例,位置-角色偏序关系可以用矩阵RL,R来表示。在这种情况下,可以通过式(6)来计算位置-角色偏序关系矩阵RL,R。根据角色和位置之间的映射关系,可以认为,矩阵RL,R中的每一行指示角色,而每一列指示位置区域。根据上面的论述,可以认为矩阵RL,R指示出了位置-角色的许可覆盖关系。
鉴权部分96通过参考位置-角色偏序关系计算部分95所计算得到的位置-角色偏序关系来确定是否准许用户的访问请求。
根据本发明一个实施例,位置敏感-基于角色的访问控制装置还可以包括接收部分(未示出),用于接收用户的访问请求、该用户的角色信息、以及该用户的位置信息,并且鉴权部分根据该用户的访问请求、角色信息和位置信息,参考位置-角色偏序关系来确定是否授权该用户进行访问。
此外,在根据本发明一个实施例的位置敏感-基于角色的访问控制装置中,鉴权部分可以根据由位置-角色偏序关系计算部分95计算得到的位置-角色偏序关系,例如根据位置-角色偏序关系矩阵RL,R,利用本领域公知的简单算法来确定各个角色的访问许可集。在这种情况下,鉴权部分96通过查询角色许可集来确定是否授权用户进行访问。
此外,根据本发明一个实施例,位置敏感-基于角色的访问控制装置还可以包括Hasse图生成部分(未示出),用于根据由位置-角色偏序关系计算部分95计算得到的位置-角色偏序关系,例如根据上述位置-角色偏序关系矩阵RL,R来生成许可Hasse图。在一个示例中,首先根据位置-角色偏序关系矩阵RL,R来计算覆盖矩阵CL,R(参见式(8)),然后基于该覆盖矩阵CL,R、根据上述两个Hasse图绘制规则来绘制许可的Hasse图。
图10示出了可以实现本发明的一个示例性位置敏感-基于角色的访问控制系统100。该访问控制系统100包括客户端101、网络102和106、访问控制装置103、无线定位装置104、位置服务器105、以及诸如数据库107a、打印机107b、信息服务器107c等的目标资源设备。
客户端101例如可以是台式计算机、便携式计算机、手机、个人数字助理等,并且客户端101以有线或无线方式与网络102(稍后将描述)相耦合。客户端101的用户(以下称为用户A,如图所示)通过客户端101来发出对目标资源设备(例如,数据库107a、打印机107b和信息服务器107c等)进行访问的访问请求,该访问请求包含客户端101的用户A的用户ID(标识符)和用户A的角色信息。
网络102例如可以是诸如企业内部网络(Intranet)、局域网(LAN)、因特网之类的计算机网络,或者诸如无线局域网(WLAN)、全球互连微波接入(WiMAX)网络和蜂窝网络之类的无线接入网络。网络102接收从客户端101传送而来的用户的访问请求,并将该访问请求转发到访问控制服务器103(稍后将描述)。
无线定位装置104例如可以是全球定位系统(GPS)或者超声波室内定位系统等,其时刻跟踪该定位装置104的定位范围内的用户(包括用户A)和/或设备的位置,并将各个用户和/或设备的位置传送到位置服务器105。
位置服务器105将从无线定位装置104发送而来的各个用户和/或设备的位置与相应的用户ID(标识符)和/或设备ID相关联地存储。位置服务器105相当于一种存储服务器,或者也可以是非易失性存储器。
访问控制服务器103包括如上所述根据本发明一个实施例的位置敏感-基于角色的访问控制装置。访问控制服务器103在接收到从网络102发送而来的用户A的访问请求之后,基于该访问请求中包含的用户A的用户ID搜索位置服务器105中存储的位置信息以得到用户A的当前位置,并根据用户A的角色信息和当前所处位置来判断是否授权用户A的访问请求。如果用户A的访问请求得到许可,则访问控制服务器103将该访问请求转发到网络106(稍后将描述);否则访问控制服务器103拒绝用户A的访问请求,并经由网络102通过客户端101来通知用户A其访问请求为未得到许可。访问控制服务器103例如由微计算机来实现,该微计算机包括中央处理单元(CPU)、只读存储器(ROM)、随机存取存储器(RAM)、非易失性存储器、和接口。
网络106可以与网络102相同,或者可以是不同的网络。网络106接收从访问控制服务器103传送而来的用户A的访问请求,并将该访问请求转发到其所要去往的目标资源设备。例如,如果用户A希望访问数据库107a中的数据,则网络106将访问请求转发到数据库107a;如果用户A希望利用打印机107b来打印文件,则网络106将访问请求转发到打印机107b;或者如果用户A希望通过信息服务器107c获得诸如Web浏览、IP网上语音(VoIP)、电子邮件等的服务,则网络106将访问请求转发到信息服务器107c。
以上描述了可以实现本发明的位置敏感-基于角色的访问控制系统的一个具体示例,但是应当了解,该示例仅仅是示意性的而非限制性的。例如,在该具体示例中,虽然示出了特定数目的每种网络设备,但是该访问控制系统可以包括任何数目的每种网络设备。
此外,图10所示的示例性位置敏感-基于角色的访问控制系统是一种集中式的访问控制系统,但是可以实现本发明的位置敏感-基于角色的访问控制系统也可以是分布式的。例如,在一个实施例中,每个客户端都可以集成位置敏感-基于角色的访问控制装置。在这种情况下,当用户通过客户端作出访问请求时,客户端中的访问控制装置获取该用户的角色信息以及位置信息,并基于用户的访问请求、用户的角色信息和位置信息来判断是否授权用户的访问。
以上已经根据具体实施例来对本发明进行了描述,但是本领域技术人员应当了解,这些实施例仅仅是示意性的而非限制性的。在本发明的实质范围和精神内,可对特定组件或要素进行许多修改。本发明将包括落在所附权利要求及其等同物的范围内的任何变形例和修改例。
应当了解,这里使用的存储器例如可以是但不限于是电的、磁的、光的、电磁的、红外的或半导体的存储器件、装置、系统、传播介质或计算机存储器。
根据需要可以用硬件、软件、固件或其组合来执行步骤。注意,在不脱离本发明范围的前提下,可向本说明书中给出的流程图添加步骤、从中去除步骤或修改其中的步骤。并且,包含在本说明书中的各种处理并不限于根据描述过程按时间顺序来进行的那些处理,其还可以按需或者根据适于实现该处理的装置的处理能力来并行地或单独地执行上述各种处理。一般来说,流程图只是用来指示用于实现功能的基本操作的一种可能的序列。
在软件环境中实施本发明的情况下,可以使用典型操作系统来控制各种程序的执行。任何适当的编程语言都可用来实现本发明,所述语言包括C、C++、Java、汇编语言等等。可以使用不同的编程技术,例如过程式的或面向对象的。程序可在单个处理器或多个处理器上执行。
还将意识到,根据特定应用的需要,附图中示出的要素中的一个或多个可以按更分离或更集成的方式来实现,或者甚至在某些情况下被去除或被停用。
此外,附图中的任何信号箭头应当被认为仅是示例性的,而不是限制性的,除非另有具体指示。
Claims (23)
1.一种访问控制方法,其中,目标空间被划分为若干位置区域,每一位置区域具有相应的位置敏感许可集,所述目标空间中的用户被划分为一种或多种角色,并且每一所述角色与一所述位置区域相映射,所述方法包括以下步骤:
获取各个所述角色之间的组织关系和表示各个所述位置区域的位置向量;
基于所述位置区域的位置向量分析所述位置区域相互之间的覆盖关系从而建立位置偏序关系;
滤除所述位置偏序关系中的传递覆盖关系以获得位置邻接关系;
将所述各个角色之间的组织关系中的角色邻接关系添加到所述位置邻接关系中从而建立位置-角色邻接关系;
基于所述位置-角色邻接关系来计算位置-角色偏序关系;以及
参考所述位置-角色偏序关系来确定是否授权用户的访问。
2.如权利要求1所述的方法,其中,所述位置偏序关系、所述位置邻接关系、所述位置-角色邻接关系和所述位置-角色偏序关系中的每一个都用矩阵表示。
3.如权利要求1所述的方法,还包括:
接收用户的访问请求、该用户的角色信息、以及该用户的位置信息;并且
在所述授权的步骤中,根据所述用户的访问请求、所述用户的角色信息和所述用户的位置信息,参考所述位置-角色偏序关系来确定是否授权该用户进行访问。
4.如权利要求1所述的方法,其中,参考所述位置-角色偏序关系包括根据所述位置-角色偏序关系来确定各个角色的角色许可集。
5.如权利要求1所述的方法,其中,在所述位置区域呈凸多边形时,所述位置向量是所述位置区域的顶点坐标向量,并且在建立所述位置偏序关系的步骤中,如果一个位置区域的顶点都落在另一个位置区域内,则判定所述一个位置区域被所述另一个位置区域覆盖。
6.如权利要求1所述的方法,其中,在所述位置区域呈矩形时,所述位置向量是所述位置区域的对角向量,并且在建立所述位置偏序关系的步骤中,通过对矩形位置区域的对角向量进行比较来确定这些矩形位置区域的覆盖关系。
7.如权利要求1所述的方法,其中,在所述获取位置邻接关系的步骤中,如果在所述位置偏序关系中,存在第一位置区域覆盖第二位置区域的关系,并且还存在第一位置区域覆盖第三位置区域且第三位置区域覆盖第二位置区域的关系,则确定所述第一位置区域传递覆盖所述第二位置区域。
8.如权利要求1所述的方法,其中,在所述建立位置-角色邻接关系的步骤中,通过遍历所述各个角色之间的组织关系来获取所述角色邻接关系,并根据所述角色与所述位置区域的映射关系将所述角色邻接关系与所述位置邻接关系合并以形成所述位置-角色邻接关系。
10.如权利要求2所述的方法,还包括以下步骤:
基于表示所述位置-角色偏序关系的位置-角色偏序关系矩阵来计算许可覆盖矩阵,并根据该许可覆盖矩阵和Hasse图绘制规则来生成许可Hasse图,并且其中所述许可覆盖矩阵是通过对所述位置-角色偏序关系矩阵进行如下运算来获得的:
许可覆盖矩阵=(RL,R-I)-(RL,R-I)2
其中,RL,R表示所述位置-角色偏序关系矩阵,I表示单位矩阵,(RL,R-I)2表示矩阵(RL,R-I)的逻辑平方。
11.如权利要求1到10中的任意一项所述的方法,其中,所述各个角色之间的组织关系用矩阵、表格或Hasse图表示。
12.一种访问控制装置,其中,目标空间被划分为若干位置区域,每一位置区域具有相应的位置敏感许可集,所述目标空间中的用户被划分为一种或多种角色,并且每一所述角色与一所述位置区域相映射,所述装置包括:
获取部分,被配置为获取各个所述角色之间的组织关系和表示各个所述位置区域的位置向量;
位置偏序关系建立部分,被配置为基于所述位置区域的位置向量来分析所述位置区域相互之间的覆盖关系从而建立位置偏序关系;
位置邻接关系建立部分,被配置为滤除所述位置偏序关系中的传递覆盖关系以建立位置邻接关系;
位置-角色邻接关系建立部分,被配置为将所述各个角色之间的组织关系中的角色邻接关系添加到所述位置邻接关系中从而建立位置-角色的邻接关系;
位置-角色偏序关系计算部分,被配置为基于所述位置-角色邻接关系来计算位置-角色偏序关系;以及
鉴权部分,被配置为参考所述位置-角色偏序关系来确定是否授权用户的访问。
13.如权利要求12所述的装置,其中,所述位置偏序关系、所述位置邻接关系、所述位置-角色邻接关系和所述位置-角色偏序关系中的每一个都用矩阵表示。
14.如权利要求12所述的装置,还包括:
接收部分,用于接收用户的访问请求、该用户的角色信息、以及该用户的位置信息;并且
所述鉴权部分被配置为根据所述用户的访问请求、所述用户的角色信息和所述用户的位置信息,参考所述位置-角色偏序关系来确定是否授权该用户进行访问。
15.如权利要求12所述的装置,其中,所述鉴权部分还被配置为根据所述位置-角色偏序关系来确定各个角色的角色许可集。
16.如权利要求12所述的装置,其中,在所述位置区域呈凸多边形时,所述位置向量是所述位置区域的顶点坐标向量,并且所述位置偏序关系建立部分被配置为,如果一个位置区域的顶点都落在另一个位置区域内则判定所述一个位置区域被所述另一个位置区域覆盖。
17.如权利要求12所述的装置,其中,在所述位置区域呈矩形时,所述位置向量是所述位置区域的对角向量,并且所述位置偏序关系建立部分被配置为通过对矩形位置区域的对角向量进行比较来确定这些位置区域的覆盖关系。
18.如权利要求12所述的装置,其中,所述位置邻接关系建立部分被配置为:如果在所述位置偏序关系中,存在第一位置区域覆盖第二位置区域的关系,并且还存在第一位置区域覆盖第三位置区域且第三位置区域覆盖第二位置区域的关系,则确定所述第一位置区域传递覆盖所述第二位置区域。
19.如权利要求12所述的装置,其中,所述位置-角色邻接关系建立部分被配置为通过遍历所述各个角色之间的组织关系来获取所述角色邻接关系,并根据所述角色与所述位置区域的映射关系将所述角色邻接关系与所述位置邻接关系合并以形成所述位置-角色邻接关系。
21.如权利要求13所述的装置,还包括:
许可Hasse图生成部分,被配置为基于表示所述位置-角色偏序关系的位置-角色偏序关系矩阵来计算许可覆盖矩阵,并根据该许可覆盖矩阵和Hasse图绘制规则来生成许可Hasse图,并且其中,所述许可覆盖矩阵是通过对所述位置-角色偏序关系矩阵进行如下运算来获得的:
许可覆盖矩阵=(RL,R-I)-(RL,R-I)2
其中,RL,R表示所述位置-角色偏序关系矩阵,I表示单位矩阵,(RL,R-I)2表示矩阵(RL,R-I)的逻辑平方。
22.如权利要求12到21中的任意一项所述的装置,其中,所述各个角色之间的组织关系用矩阵、表格或Hasse图表示。
23.一种访问控制系统,包括:
客户端,用户使用该客户端来发出访问请求,该访问请求包括所述用户的角色信息;
无线定位装置,用于确定所述用户所处的位置;以及
如权利要求12所述的访问控制装置,用于根据从所述客户端传送而来的所述用户的角色信息以及从无线定位装置传送而来的所述用户的位置信息来确定是否授权所述用户的访问请求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810132023.2A CN101631021B (zh) | 2008-07-18 | 2008-07-18 | 位置敏感且基于角色的访问控制方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810132023.2A CN101631021B (zh) | 2008-07-18 | 2008-07-18 | 位置敏感且基于角色的访问控制方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101631021A true CN101631021A (zh) | 2010-01-20 |
CN101631021B CN101631021B (zh) | 2014-04-02 |
Family
ID=41575982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810132023.2A Expired - Fee Related CN101631021B (zh) | 2008-07-18 | 2008-07-18 | 位置敏感且基于角色的访问控制方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101631021B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104539612A (zh) * | 2014-12-26 | 2015-04-22 | 北京奇虎科技有限公司 | 终端设备信息安全的设置方法和设备 |
CN105187365A (zh) * | 2015-06-04 | 2015-12-23 | 北京邮电大学 | 基于角色和数据项的访问控制方法及装置 |
CN106529323A (zh) * | 2016-01-21 | 2017-03-22 | 华南师范大学 | 一种多级安全模型访问控制数据融合方法 |
CN106570312A (zh) * | 2016-10-18 | 2017-04-19 | 捷开通讯(深圳)有限公司 | 一种移动医疗数据交互的方法、系统及服务器、移动终端 |
CN107077573A (zh) * | 2014-10-30 | 2017-08-18 | 微软技术许可有限责任公司 | 基于请求者位置的访问控制 |
CN108540427A (zh) * | 2017-03-02 | 2018-09-14 | 株式会社理光 | 冲突检测方法和检测设备、访问控制方法和访问控制装置 |
CN108809990A (zh) * | 2018-06-14 | 2018-11-13 | 北京中飞艾维航空科技有限公司 | 一种众包数据安全加密方法、服务器及存储介质 |
CN112364361A (zh) * | 2020-11-13 | 2021-02-12 | 四川长虹电器股份有限公司 | 一种云平台矩阵式资源访问控制系统及控制方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633085A (zh) * | 2004-12-29 | 2005-06-29 | 北京邮电大学 | 一种基于无等级角色间映射的访问控制方法 |
US20070118877A1 (en) * | 2005-11-22 | 2007-05-24 | Yucel Karabulut | Method and system for secured online collaboration |
-
2008
- 2008-07-18 CN CN200810132023.2A patent/CN101631021B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633085A (zh) * | 2004-12-29 | 2005-06-29 | 北京邮电大学 | 一种基于无等级角色间映射的访问控制方法 |
US20070118877A1 (en) * | 2005-11-22 | 2007-05-24 | Yucel Karabulut | Method and system for secured online collaboration |
Non-Patent Citations (2)
Title |
---|
INDRAKSHI RAY等: "LRBAC: A Location-Aware Role-Based Access Control Model", 《INFORMATION SYSTEMS SECURITY》 * |
张光庭等: "基于角色的OA 系统访问控制模型及其实现", 《小型微型计算机系统》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107077573A (zh) * | 2014-10-30 | 2017-08-18 | 微软技术许可有限责任公司 | 基于请求者位置的访问控制 |
CN104539612A (zh) * | 2014-12-26 | 2015-04-22 | 北京奇虎科技有限公司 | 终端设备信息安全的设置方法和设备 |
CN105187365A (zh) * | 2015-06-04 | 2015-12-23 | 北京邮电大学 | 基于角色和数据项的访问控制方法及装置 |
CN105187365B (zh) * | 2015-06-04 | 2018-09-14 | 北京邮电大学 | 基于角色和数据项的访问控制方法及装置 |
CN106529323A (zh) * | 2016-01-21 | 2017-03-22 | 华南师范大学 | 一种多级安全模型访问控制数据融合方法 |
CN106570312A (zh) * | 2016-10-18 | 2017-04-19 | 捷开通讯(深圳)有限公司 | 一种移动医疗数据交互的方法、系统及服务器、移动终端 |
CN108540427A (zh) * | 2017-03-02 | 2018-09-14 | 株式会社理光 | 冲突检测方法和检测设备、访问控制方法和访问控制装置 |
CN108540427B (zh) * | 2017-03-02 | 2021-09-07 | 株式会社理光 | 冲突检测方法和检测设备、访问控制方法和访问控制装置 |
CN108809990A (zh) * | 2018-06-14 | 2018-11-13 | 北京中飞艾维航空科技有限公司 | 一种众包数据安全加密方法、服务器及存储介质 |
CN108809990B (zh) * | 2018-06-14 | 2021-06-29 | 北京中飞艾维航空科技有限公司 | 一种众包数据安全加密方法、服务器及存储介质 |
CN112364361A (zh) * | 2020-11-13 | 2021-02-12 | 四川长虹电器股份有限公司 | 一种云平台矩阵式资源访问控制系统及控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101631021B (zh) | 2014-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101631021B (zh) | 位置敏感且基于角色的访问控制方法、装置和系统 | |
Wu et al. | Constructing dummy query sequences to protect location privacy and query privacy in location-based services | |
Meddeb | Internet of things standards: who stands out from the crowd? | |
Rong | [Retracted] Design of Ideological and Political Multimedia Network Teaching Resources Integration System Based on Wireless Network | |
Kuruvatti et al. | Empowering 6G communication systems with digital twin technology: A comprehensive survey | |
CN109496414A (zh) | 识别数据将被复制到的网络节点 | |
Min et al. | 3D geo-indistinguishability for indoor location-based services | |
Hernández-Ramos et al. | Protecting personal data in IoT platform scenarios through encryption-based selective disclosure | |
Zhang et al. | Confidential information protection method of commercial information physical system based on edge computing | |
Woolf et al. | A web service model for climate data access on the grid | |
Zhao et al. | EPLA: efficient personal location anonymity | |
Zheng et al. | A homomorphic encryption based location privacy preservation scheme for crowdsensing tasks allocation | |
He | [Retracted] Ideological and Political Teaching Resource Sharing Method Based on Edge Computing | |
Zhang et al. | Characterizing interference in a campus WiFi network via mobile crowd sensing | |
Eicker et al. | On The Design Of An Urban Modeling Platform And Its Application For A New York District Analysis | |
Alam et al. | Reasoning with semantics-aware access control policies for geospatial web services | |
Tripathi et al. | A model for evaluating the impediments to secure and trustworthy IoT environment: a software industry study | |
Davis Jr et al. | Understanding global change: the role of geographic information science in the integration of people and nature | |
Huang et al. | iFIND: a Peer-to-Peer application for real-time location monitoring on the MIT campus | |
Hassani et al. | A context aware framework for mobile crowd-sensing | |
Lv et al. | Blockchain-based communication for digital twins | |
Devarakonda et al. | Modeling the Data Object Routing in Data Aware Networking | |
Paszkiewicz et al. | Software for Integration of Manufacturing Resources in the Hybrid Cloud Model for Industry 4.0 | |
CA2520258A1 (en) | System and method for dynamically generating a user-centric portal | |
Vinu et al. | Tangent Pelican search optimization for block assignment in blockchain based IoT |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140402 Termination date: 20160718 |