CN107688732B - 一种资源权限的配置、获取方法及装置 - Google Patents
一种资源权限的配置、获取方法及装置 Download PDFInfo
- Publication number
- CN107688732B CN107688732B CN201710831310.1A CN201710831310A CN107688732B CN 107688732 B CN107688732 B CN 107688732B CN 201710831310 A CN201710831310 A CN 201710831310A CN 107688732 B CN107688732 B CN 107688732B
- Authority
- CN
- China
- Prior art keywords
- authority
- type
- value
- state code
- variable tmp
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 239000000126 substance Substances 0.000 claims 1
- 238000004364 calculation method Methods 0.000 description 4
- 238000013475 authorization Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种资源权限的配置、获取方法及装置,涉及信息安全领域。本文公开的资源权限的获取方法,包括:根据将要进行的操作类型,将变量tmp的有效值所在的初始位置进行左移;将左移后的变量tmp和获取的权限操作状态码进行与运算;如果运算结果不等于0,确定对资源具有操作权限;如果运算结果等于0,确定对资源没有相应的操作权限;其中,所述权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型数据;所述变量tmp为Integer类型数据,所述变量tmp的有效值所在的初始位置为最后一位。
Description
技术领域
本发明涉及信息安全领域,尤其涉及一种基于位运算实现资源权限的配置获取方案。
背景技术
在信息化蓬勃发展的今天,企业越来越多的业务依赖于信息系统的支撑。信息系统不可避免地涉及到企业业务的核心机密数据,权限控制已成为信息系统实施的一个研究重点。相比技术缺陷给信息安全带来的威胁,系统管理缺陷更容易带来更大的信息安全风险,一套先进的用户授权体系,实现企业信息系统的统一授权,能够提高信息系统的安全性和可控性,降低后者带来的安全风险。
当前流行的权限模型为RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般都是多对多的关系。
发明内容
本文提供一种资源权限的配置、获取方法及装置,可以解决相关技术中信息安全存在的隐患问题。
本文公开了一种资源权限的获取方法,包括:
根据将要进行的操作类型,将变量tmp的有效值所在的初始位置进行左移;
将左移后的变量tmp和获取的权限操作状态码进行与运算;
如果运算结果不等于0,确定对资源具有操作权限;
如果运算结果等于0,确定对资源没有相应的操作权限;
其中,所述权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型数据;
所述变量tmp为Integer类型数据,所述变量tmp的有效值所在的初始位置为最后一位。
可选地,上述方法,还包括:
预先配置操作类型参数,所述操作类型参数为Integer整数,其不同取值分别指示不同的操作类型,
所述操作类型至少包括如下一种或几种:
增加、查询、更新、删除。
可选地,上述方法中,所述根据将要进行的操作类型,将变量tmp的有效值所在的初始位置进行左移,包括:
根据将要进行的操作类型确定操作类型参数的取值X,将变量tmp的有效值所在的初始位置左移X个位置。
其中,X为整数,取值范围可选为0~3。
可选地,上述方法中,所述权限操作状态码用于指示各种操作类型对应的操作权限包括:
通过所述权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,各位的取值为有效值时指示各位对应的操作类型的操作权限为允许操作,各位的取值为非有效值时指示各位对应的操作类型的操作权限为不允许操作。
可选地,上述方法,还包括:
配置任一种操作类型的权限时,根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移;
在配置该种操作类型的权限为允许操作时,将获取的权限操作状态码的值与所述左移后的变量tmp进行或运算,将运算结果作为新的权限操作状态码进行存储;
在配置该种操作类型的权限为不允许操作时,先将所述左移后的变量tmp进行取反操作,再将获取的权限操作状态码的值与取反后的变量tmp进行与运算,将运算结果作为新的权限操作状态码进行存储。
本文还公开了一种资源权限的配置方法,包括:
配置任一种操作类型的权限时,根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移;
在配置该种操作类型的权限为允许操作时,将获取的权限操作状态码的值与所述左移后的变量tmp进行或运算,将运算结果作为新的权限操作状态码进行存储;
其中,所述权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型;
所述变量tmp为Integer类型,所述变量tmp的有效值所在的初始位置为最后一位。
可选地,上述方法,还包括:
在配置该种操作类型的权限为不允许操作时,先将所述左移后的变量tmp进行取反操作,再将获取的权限操作状态码的值与取反后的变量tmp进行与运算,将运算结果作为新的权限操作状态码进行存储。
可选地,上述方法中,所述权限操作状态码用于指示各种操作类型对应的操作权限包括:
通过所述权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,各位的取值为有效值时指示各位对应的操作类型的操作权限为允许操作,各位的取值为非有效值时指示各位对应的操作类型的操作权限为不允许操作。
可选地,上述方法,还包括:
预先配置操作类型参数,所述操作类型参数为Integer整数,其不同取值分别指示不同的操作类型,
所述操作类型至少包括如下一种或几种:
增加、查询、更新、删除。
可选地,上述方法中,所述根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移,包括:
根据配置的操作类型确定操作类型参数的取值X,将变量tmp的有效值所在的初始位置左移X个位置。
本文还公开了一种资源权限的获取装置,包括:
第一单元,根据将要进行的操作类型,将变量tmp的有效值所在的初始位置进行左移;
第二单元,将左移后的变量tmp和获取的权限操作状态码进行与运算;
第三单元,当运算结果不等于0时,确定对资源具有操作权限,当运算结果等于0时,确定对资源没有相应的操作权限;
其中,所述权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型数据;
所述变量tmp为Integer类型数据,所述变量tmp的有效值所在的初始位置为最后一位。
可选地,上述装置,还包括:
第四单元,预先配置操作类型参数,所述操作类型参数为Integer整数,其不同取值分别指示不同的操作类型,所述操作类型至少包括如下一种或几种:
增加、查询、更新、删除。
可选地,上述装置中,述第四单元,预先配置权限操作状态码,配置权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,配置各位的取值为有效值时指示各位对应的操作类型的操作权限为允许操作,配置各位的取值为非有效值时指示各位对应的操作类型的操作权限为不允许操作。
本文还公开了一种资源权限的配置装置,包括:
第一单元,配置任一种操作类型的权限时,根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移;
第二单元,在配置该种操作类型的权限为允许操作时,将获取的权限操作状态码的值与所述左移后的变量tmp进行或运算,将运算结果作为新的权限操作状态码进行存储;
其中,所述权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型;
所述变量tmp为Integer类型,所述变量tmp的有效值所在的初始位置为最后一位。
可选地,上述装置中,所述第二单元,在配置该种操作类型的权限为不允许操作时,先将所述左移后的变量tmp进行取反操作,再将获取的权限操作状态码的值与取反后的变量tmp进行与运算,将运算结果作为新的权限操作状态码进行存储。
可选地,上述装置,还包括:
第三单元,配置权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,配置各位的取值为有效值时指示各位对应的操作类型的操作权限为允许操作,配置各位的取值为非有效值时指示各位对应的操作类型的操作权限为不允许操作。
可选地,上述装置中,所述第三单元,预先配置操作类型参数,所述操作类型参数为Integer整数,其不同取值分别指示不同的操作类型,
所述操作类型至少包括如下一种或几种:
增加、查询、更新、删除。
本申请技术方案运用计算中资源以二进制形式存放的特性,使用位运算设置和获取资源权限,在数据量较大情况下显著提高了运算速度;且算法简单明了,仅使用32位整数中的4位,不但能满足现有需求,而且后期也极易于新需求的扩展。
附图说明
图1为本发明实施例提供的基于ACL控制的RBAC权限模型示意图;
图2为本发明实施例中资源权限的获取方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文将结合具体实施方式对本发明技术方案作进一步详细说明。需要说明的是,在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
本发明申请人提出,可以运用计算中资源以二进制形式存放的特性,使用位运算计算来设置和获取资源权限,可以在数据量较大情况下显著提高运算速度。例如,可以从软件开发者角色考虑,系统软件资源的管理主要就是CRUD操作(C:增加资源,R:查找资源,U:更新资源,D:删除资源);用户级别不同,能够访问的资源级别也不同,设计一套合理的资源权限保存和读取算法,能够起到事半功倍的效果。本申请发明人采用访问控制对象ACL控制角色对资源的操作权限,其模型如图1所示。图中user为用户表、role为角色表、userRole为用户角色表、module为资源表、ACL为访问控制表,其中ACL表记录了角色对某个资源的操作权限,表中主体标志属性代表当前权限为角色还是用户,主体ID属性代表用户或者角色的id,模块ID属性代表权限控制的对应资源,操作权限状态码属性代表用户对资源具有的增加、删除、修改以及查询权限。
基于上述思想,本实施例提供一种资源权限的获取方法,如图2所示,主要包括如下操作:
步骤200,根据将要进行的操作类型,将变量tmp的有效值所在的初始位置进行左移;
其中,变量tmp为Integer类型数据,所述变量tmp的有效值所在的初始位置为最后一位。
步骤201,将左移后的变量tmp和获取的权限操作状态码进行与运算;
其中,权限操作状态码用于指示各种操作类型对应的操作权限,权限操作状态码为Integer类型数据;
步骤202,如果运算结果不等于0,确定对资源具有操作权限;
如果运算结果等于0,确定对资源没有相应的操作权限。
要说明的是,上述方法中涉及操作类型,其需要一个参数来表示。即可以预先配置操作类型参数,该操作类型参数为Integer整数,其不同取值分别指示不同的操作类型。本文涉及的操作类型至少包括如下一种或几种:
增加、查询、更新、删除。
基于上述操作类型参数,就可以根据将要进行的操作类型,将变量tmp的有效值所在的初始位置进行左移,即根据将要进行的操作类型确定操作类型参数的取值X,将变量tmp的有效值所在的初始位置左移X个位置即可。
具体地,权限操作状态码指示各种操作类型对应的操作权限的方式有多种多样。可选地,可以通过权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,各位的取值为有效值(例如取值为1时可认为是有效值)时指示各位对应的操作类型的操作权限为允许操作,各位的取值为非有效值(例如取值为0)时指示各位对应的操作类型的操作权限为不允许操作。
除了述操作外,在获取资源权限之前,还可以包括配置操作。当配置任一种操作类型的权限时,根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移;
在配置该种操作类型的权限为允许操作时,将获取的权限操作状态码的值与所述左移后的变量tmp进行或运算,将运算结果作为新的权限操作状态码进行存储;
在配置该种操作类型的权限为不允许操作时,先将所述左移后的变量tmp进行取反操作,再将获取的权限操作状态码的值与取反后的变量tmp进行与运算,将运算结果作为新的权限操作状态码进行存储。
本实施例还提供一种资源权限的配置方法,主要包括如下操作:
配置任一种操作类型的权限时,根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移;
在配置该种操作类型的权限为允许操作时,将获取的权限操作状态码的值与左移后的变量tmp进行或运算,将运算结果作为新的权限操作状态码进行存储;
其中,权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型;
变量tmp为Integer类型,所述变量tmp的有效值所在的初始位置为最后一位。
另外,在配置该种操作类型的权限为不允许操作时,可以先将左移后的变量tmp进行取反操作,再将获取的权限操作状态码的值与取反后的变量tmp进行与运算,将运算结果作为新的权限操作状态码进行存储。
由于上述配置方法与获取方法可以配合使用,因此,对于各参数的定义也是相同的。例如,权限操作状态码可以通过权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,各位的取值为有效值时指示各位对应的操作类型的操作权限为允许操作,各位的取值为非有效值时指示各位对应的操作类型的操作权限为不允许操作。
同样的,操作类型参数的配置以及根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移的过程均参见上文中的对应内容,故在此不再赘述。
下面结合具体应用说明本申请技术方案的具体实施。
以Java语言为编码描述语言为例,基于ACL控制RBAC权限模型为基础具体说明本申请技术方案的部署实施方式,对于用户类、角色类、资源类以及用户角色类的定义说明因不是本文重点故文中不在描述。此种场景下,配置以及获取资源权限的完整过程包括如下操作:
S1、定义访问控制表中ACL的操作权限状态码,用于指示各种操作类型对应的操作权限,操作权限状态码可配置为Integer类型,由于一个Integer类型有32位,本文中取用Integer类型的后四位分别表示增加、查询、更新和删除操作,后四位的具体取值为1或者0,根据取值可以表示是否允许操作资源,例如1可以表示允许操作资源,0表示不允许操作资源。举例说明,Integer类型的操作权限状态码后四位依次表示增加、查询、更新和删除操作,若操作权限状态码的倒数第一位表示删除操作,倒数第一位的取值为1时表示允许删除操作。
例如,定义访问控制对象ACL类,可采用如下所示的ACL类定义,其中moduleId代表对应的资源,aclState代表资源的操作权限状态码,类型为Integer类型的整数。
访问控制对象ACL类定义:
S2、定义操作类型,为了便于下文描述清楚,将操作类型设置为参数permission,为Integer整数,操作类型主要包括增加、删除、更新、查询4种。本文中,定义0代表增加操作,1代表查询操作(本文中查询操作包含读取资源),2代表更新操作,3代表删除操作。
具体的资源操作类型可采用如下所示的定义。
资源操作类型定义:
S3、其次根据上述定义设置资源的操作权限(即设置操作权限状态码)。可以在访问控制对象ACL中添加“设置方法”,传递参数包含资源操作类型和是否允许操作的信息。根据上述的定义可知操作类型(即参数permission)的值为0(增加)、1(查询)、2(更新)以及3(删除);具体设置操作权限状态码的过程如下:
3.1、定义Integer类型的临时变量tmp其值为1,即临时变量tmp的最后一位取值为1,其他位取值为0;
3.2、将临时变量tmp的有效值所在位左移permission位,即根据操作类型(permission参数),将临时变量tmp的最后一位的取值1进行左移。例如,操作类型为查询,即permission参数的取值为1,将临时变量tmp的最后一位的取值1左移一位即可,此时,临时变量tmp的倒数第二位的取值为1,其他各位的取值为0;
3.3、如果设置为允许操作资源时,将旧的权限操作状态码(即当前存储的权限操作状态码,ACL表中的状态码)的值与tmp进行“或运算”,运算结果即为新的权限操作值;
如果设置为不允许操作资源,先现将tmp进行取反操作,再将旧的权限操作状态码的值与取反后的tmp进行“与运算”,运算结果即为新的权限操作值。
具体地,设置资源操作权限。从面向对象的角度设计,在ACL类中添加“设置资源操作权限方法”,可以采用java语言实现。采用java语言实现设置资源操作权限的过程如下:
S4、获取资源的操作权限。即可以在访问控制对象ACL中添加“读取方法”,传递参数可以包括资源操作类型的信息。根据2的定义可知,传递的操作类型参数permission的值可以为0(表示增加操作)、1(表示查询操作)、2(表示更新操作)以及3(表示删除操作);具体执行如下:
4.1、定义Integer类型的临时变量tmp其值为1,即临时变量tmp的最后一位取值为1,其他位取值为0;
4.2、将临时变量tmp的有效值所在位左移permission位,即根据操作类型(permission参数),将临时变量tmp的最后一位的取值1进行左移。例如,操作类型为更新,即permission参数的取值为2,将临时变量tmp的最后一位的取值1左移两位即可,此时,临时变量tmp的倒数第三位的取值为1,其他各位的取值为0;
4.3、将左移的tmp和当前的权限操作状态码进行“与运算”;
4.4、如果运算结果不等于0,表示对资源有操作权限(即对于permission参数指示的操作类型具有操作权限),返回允许资源操作标识符即可;
如果运算结果等于0,表示对资源没有相应的操作权限(即对于permission参数指示的操作类型不具有操作权限),返回不允许资源操作标识符即可。
具体地,读取资源操作权限。同上述S3一样在ACL类中添加“读取资源操作权限方法”,可以采用java语言实现。采用java语言实现读取资源操作权限的过程如下:
本实施例还提供一种资源权限的获取装置,包括:
第一单元,根据将要进行的操作类型,将变量tmp的有效值所在的初始位置进行左移;
第二单元,将左移后的变量tmp和获取的权限操作状态码进行与运算;
第三单元,当运算结果不等于0时,确定对资源具有操作权限,当运算结果等于0时,确定对资源没有相应的操作权限;
其中,所述权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型数据;
所述变量tmp为Integer类型数据,所述变量tmp的有效值所在的初始位置为最后一位。
在上述装置的架构基础上,还可以包括:第四单元,主要进行各种配置操作。例如,预先配置操作类型参数,操作类型参数为Integer整数,其不同取值分别指示不同的操作类型,操作类型至少包括如下一种或几种:
增加、查询、更新、删除。
第四单元,还可以预先配置权限操作状态码,配置权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,配置各位的取值为有效值时指示各位对应的操作类型的操作权限为允许操作,配置各位的取值为非有效值时指示各位对应的操作类型的操作权限为不允许操作。
由于本实施例提供的资源权限的获取装置可以实现上述实施例中公开的资源权限的获取方法,因此本装置的其他详细操作可以参见上述方法的对应内容,在此不再赘述、
本实施例还一种资源权限的配置装置,主要包括如下各单元。
第一单元,配置任一种操作类型的权限时,根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移;
第二单元,在配置该种操作类型的权限为允许操作时,将获取的权限操作状态码的值与所述左移后的变量tmp进行或运算,将运算结果作为新的权限操作状态码进行存储;
其中,所述权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型;
所述变量tmp为Integer类型,所述变量tmp的有效值所在的初始位置为最后一位。
第二单元,在配置该种操作类型的权限为不允许操作时,先将所述左移后的变量tmp进行取反操作,再将获取的权限操作状态码的值与取反后的变量tmp进行与运算,将运算结果作为新的权限操作状态码进行存储。
可选地,上述装置还可以包括:第三单元,主要进行配置操作。例如。配置权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,配置各位的取值为有效值时指示各位对应的操作类型的操作权限为允许操作,配置各位的取值为非有效值时指示各位对应的操作类型的操作权限为不允许操作。
第三单元,还可以预先配置操作类型参数,所述操作类型参数为Integer整数,其不同取值分别指示不同的操作类型,
所述操作类型至少包括如下一种或几种:
增加、查询、更新、删除。
由于本实施例提供的资源权限的配置装置可以实现上述实施例中公开的资源权限的配置方法,因此本装置的其他详细操作可以参见上述方法的对应内容,在此不再赘述、
从上述实施例可以看出,本申请技术方案在RBAC权限控制模型基础上,采用ACL控制方式,提出一种使用移位操作快速设置和读取角色对资源操作权限的算法。算法巧妙利用了计算机中任何数据都是以二进制形式0和1存储的特性,采用Integer类型整数保存权限,因Integer类型的整数在计算机中占32位,而操作权限只占其中4位,还有28位没有被利用,因此本申请技术方案不但能满足现有需求,极大提高计算机的运算速度,而且后期也极易于新需求扩展。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种资源权限的获取方法,包括:
根据将要进行的操作类型,将变量tmp的有效值所在的初始位置进行左移;
将左移后的变量tmp和获取的权限操作状态码进行与运算;
如果运算结果不等于0,确定对资源具有操作权限;
如果运算结果等于0,确定对资源没有相应的操作权限;
其中,所述权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型数据;
所述变量tmp为Integer类型数据,所述变量tmp的有效值所在的初始位置为最后一位;其中,所述方法还包括:
预先配置操作类型参数,所述操作类型参数为Integer整数,用Integer类型的后四位分别表示以下操作类型:
增加、查询、更新、删除;
其中,所述根据将要进行的操作类型,将变量tmp的有效值所在的初始位置进行左移,包括:
根据将要进行的操作类型确定操作类型参数的取值X,将变量tmp的有效值所在的初始位置左移X个位置。
2.如权利要求1所述的方法,其特征在于,所述权限操作状态码用于指示各种操作类型对应的操作权限包括:
通过所述权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,各位的取值为有效值时指示各位对应的操作类型的操作权限为允许操作,各位的取值为非有效值时指示各位对应的操作类型的操作权限为不允许操作。
3.如权利要求1或2所述的方法,其特征在于,还包括:
配置任一种操作类型的权限时,根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移;
在配置该种操作类型的权限为允许操作时,将获取的权限操作状态码的值与所述左移后的变量tmp进行或运算,将运算结果作为新的权限操作状态码进行存储;
在配置该种操作类型的权限为不允许操作时,先将所述左移后的变量tmp进行取反操作,再将获取的权限操作状态码的值与取反后的变量tmp进行与运算,将运算结果作为新的权限操作状态码进行存储。
4.一种资源权限的配置方法,包括:
配置任一种操作类型的权限时,根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移;
在配置该种操作类型的权限为允许操作时,将获取的权限操作状态码的值与所述左移后的变量tmp进行或运算,将运算结果作为新的权限操作状态码进行存储;
其中,所述权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型;
所述变量tmp为Integer类型,所述变量tmp的有效值所在的初始位置为最后一位;其中,所述权限操作状态码用于指示各种操作类型对应的操作权限包括:
通过所述权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,各位的取值为有效值时指示各位对应的操作类型的操作权限为允许操作,各位的取值为非有效值时指示各位对应的操作类型的操作权限为不允许操作;其中,所述方法还包括:
预先配置操作类型参数,所述操作类型参数为Integer整数,用Integer类型的后四位分别表示以下操作类型:
增加、查询、更新、删除;
其中,所述根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移,包括:
根据配置的操作类型确定操作类型参数的取值X,将变量tmp的有效值所在的初始位置左移X个位置。
5.如权利要求4所述的方法,其特征在于,还包括:
在配置该种操作类型的权限为不允许操作时,先将所述左移后的变量tmp进行取反操作,再将获取的权限操作状态码的值与取反后的变量tmp进行与运算,将运算结果作为新的权限操作状态码进行存储。
6.一种资源权限的获取装置,包括:
第一单元,根据将要进行的操作类型,将变量tmp的有效值所在的初始位置进行左移;
第二单元,将左移后的变量tmp和获取的权限操作状态码进行与运算;
第三单元,当运算结果不等于0时,确定对资源具有操作权限,当运算结果等于0时,确定对资源没有相应的操作权限;
其中,所述权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型数据;
所述变量tmp为Integer类型数据,所述变量tmp的有效值所在的初始位置为最后一位;其中,所述装置还包括:
第四单元,预先配置操作类型参数,所述操作类型参数为Integer整数,用Integer类型的后四位分别表示以下操作类型:
增加、查询、更新、删除;其中所述第一单元还用于:
根据配置的操作类型确定操作类型参数的取值X,将变量tmp的有效值所在的初始位置左移X个位置。
7.如权利要求6所述的装置,其特征在于,
所述第四单元,预先配置权限操作状态码,配置权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,配置各位的取值为有效值时指示各位对应的操作类型的操作权限为允许操作,配置各位的取值为非有效值时指示各位对应的操作类型的操作权限为不允许操作。
8.一种资源权限的配置装置,包括:
第一单元,配置任一种操作类型的权限时,根据配置的操作类型,将变量tmp的有效值所在的初始位置进行左移;
第二单元,在配置该种操作类型的权限为允许操作时,将获取的权限操作状态码的值与所述左移后的变量tmp进行或运算,将运算结果作为新的权限操作状态码进行存储;
其中,所述权限操作状态码用于指示各种操作类型对应的操作权限,所述权限操作状态码为Integer类型;
所述变量tmp为Integer类型,所述变量tmp的有效值所在的初始位置为最后一位;其中,所述装置还包括:
第三单元,配置权限操作状态码的最后四位分别指示四种操作类型对应的操作权限,其中,配置各位的取值为有效值时指示各位对应的操作类型的操作权限为允许操作,配置各位的取值为非有效值时指示各位对应的操作类型的操作权限为不允许操作;其中,
所述第三单元,预先配置操作类型参数,所述操作类型参数为Integer整数,用Integer类型的后四位分别表示以下操作类型:
增加、查询、更新、删除;其中,所述第一单元还用于:
根据配置的操作类型确定操作类型参数的取值X,将变量tmp的有效值所在的初始位置左移X个位置。
9.如权利要求8所述的装置,其特征在于,
所述第二单元,在配置该种操作类型的权限为不允许操作时,先将所述左移后的变量tmp进行取反操作,再将获取的权限操作状态码的值与取反后的变量tmp进行与运算,将运算结果作为新的权限操作状态码进行存储。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710831310.1A CN107688732B (zh) | 2017-09-15 | 2017-09-15 | 一种资源权限的配置、获取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710831310.1A CN107688732B (zh) | 2017-09-15 | 2017-09-15 | 一种资源权限的配置、获取方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107688732A CN107688732A (zh) | 2018-02-13 |
CN107688732B true CN107688732B (zh) | 2020-08-18 |
Family
ID=61155284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710831310.1A Active CN107688732B (zh) | 2017-09-15 | 2017-09-15 | 一种资源权限的配置、获取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107688732B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112702348A (zh) * | 2020-12-23 | 2021-04-23 | 绿瘦健康产业集团有限公司 | 一种系统权限管理方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101621518A (zh) * | 2009-07-20 | 2010-01-06 | 厦门敏讯信息技术股份有限公司 | 一种权限管理方法 |
CN101714172A (zh) * | 2009-11-13 | 2010-05-26 | 华中科技大学 | 一种支持访问控制的索引结构及其检索方法 |
CN102750473A (zh) * | 2012-06-01 | 2012-10-24 | 中兴通讯股份有限公司 | 权限控制方法及装置 |
CN102882834A (zh) * | 2011-07-13 | 2013-01-16 | 阿里巴巴集团控股有限公司 | 一种权限控制方法及装置 |
CN105740724A (zh) * | 2016-01-28 | 2016-07-06 | 浪潮通用软件有限公司 | 一种权限管理的方法及装置 |
CN106570421A (zh) * | 2016-10-28 | 2017-04-19 | 努比亚技术有限公司 | 权限控制装置和方法 |
CN106850623A (zh) * | 2017-02-07 | 2017-06-13 | 浪潮通用软件有限公司 | 一种通用的信息发布权限管理方法 |
-
2017
- 2017-09-15 CN CN201710831310.1A patent/CN107688732B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101621518A (zh) * | 2009-07-20 | 2010-01-06 | 厦门敏讯信息技术股份有限公司 | 一种权限管理方法 |
CN101714172A (zh) * | 2009-11-13 | 2010-05-26 | 华中科技大学 | 一种支持访问控制的索引结构及其检索方法 |
CN102882834A (zh) * | 2011-07-13 | 2013-01-16 | 阿里巴巴集团控股有限公司 | 一种权限控制方法及装置 |
CN102750473A (zh) * | 2012-06-01 | 2012-10-24 | 中兴通讯股份有限公司 | 权限控制方法及装置 |
CN105740724A (zh) * | 2016-01-28 | 2016-07-06 | 浪潮通用软件有限公司 | 一种权限管理的方法及装置 |
CN106570421A (zh) * | 2016-10-28 | 2017-04-19 | 努比亚技术有限公司 | 权限控制装置和方法 |
CN106850623A (zh) * | 2017-02-07 | 2017-06-13 | 浪潮通用软件有限公司 | 一种通用的信息发布权限管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107688732A (zh) | 2018-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107735807B (zh) | 被撤销数据的智能删除 | |
US10841094B2 (en) | Private and public media data in a decentralized system | |
US8655914B2 (en) | System and method for storage operation access security | |
US7792301B2 (en) | Access control and encryption in multi-user systems | |
KR101780891B1 (ko) | 화이트리스트 및 블랙리스트에 기반한 랜섬웨어 차단 시스템 및 방법 | |
US9298941B2 (en) | Secure data copying | |
EP3561636B1 (en) | Record level data security | |
US9460060B2 (en) | System and method for managing dynamic document references | |
US10061932B1 (en) | Securing portable data elements between containers in insecure shared memory space | |
JP5298891B2 (ja) | アクセス制御プログラム、アクセス制御方法、およびアクセス制御装置 | |
US8452740B2 (en) | Method and system for security of file input and output of application programs | |
WO2014209748A1 (en) | Automatic data protection in a computer system | |
US9275249B1 (en) | Accelerated encrypted database operations | |
CN102945356B (zh) | 云环境下搜索引擎的访问控制方法及系统 | |
CN108108633B (zh) | 一种数据文件及其访问方法、装置及设备 | |
CA2773293A1 (en) | Multiple independent encryption domains | |
Desmedt et al. | Function-Based Access Control (FBAC) From Access Control Matrix to Access Control Tensor | |
CN110807205A (zh) | 一种文件安全防护方法及装置 | |
CN107688732B (zh) | 一种资源权限的配置、获取方法及装置 | |
CN107077573A (zh) | 基于请求者位置的访问控制 | |
WO2008147653A1 (en) | Identifying non-orthogonal roles in a role based access control system | |
CN111104693A (zh) | 一种Android平台软件数据破解方法、终端设备及存储介质 | |
CA2620982A1 (en) | Method and system for masking data in a consistent manner across multiple data sources | |
RU2533061C1 (ru) | Система контроля доступа к шифруемым создаваемым файлам | |
Chang | Is distributed ledger technology built for personal data? |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200630 Address after: 215100 No. 1 Guanpu Road, Guoxiang Street, Wuzhong Economic Development Zone, Suzhou City, Jiangsu Province Applicant after: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd. Address before: 450018 Henan province Zheng Dong New District of Zhengzhou City Xinyi Road No. 278 16 floor room 1601 Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |