CN105429972A - 资源访问控制方法及设备 - Google Patents
资源访问控制方法及设备 Download PDFInfo
- Publication number
- CN105429972A CN105429972A CN201510760340.9A CN201510760340A CN105429972A CN 105429972 A CN105429972 A CN 105429972A CN 201510760340 A CN201510760340 A CN 201510760340A CN 105429972 A CN105429972 A CN 105429972A
- Authority
- CN
- China
- Prior art keywords
- main body
- belonging
- territory
- access type
- described main
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种资源访问控制方法及设备;通过根据所述主体的名称确定所述主体所属的域,并根据所述客体的名称确定所述客体所属的组;根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;根据所述访问类型及所述第一可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型;实现了基于主体所属的域和客体所属的组来进行访问控制。
Description
技术领域
本发明实施例涉及访问控制技术,尤其涉及一种资源访问控制方法及设备。
背景技术
访问控制是计算机保护中极其重要的一环,它是在身份识别的基础上,根据访问发起者的身份对提出的资源访问请求加以控制。
在访问控制中,需要进行访问控制的各种资源称为客体,如文件、端口等;访问发起者称为主体,如进程、用户等。并且,访问控制规则定义了主体与客体间可能的相互作用途径。现有技术中,一种常见的访问控制方案为强制访问控制(MAC,MandatoryAccessControl)。在MAC中每一个客体(例如,文件)和主体(例如,用户)都被赋予了一定的安全级别,系统通过比较主体与客体的安全级别来界定主体是否可以访问该客体。例如,若系统的访问控制规则为下读(readdown)和上写(writeup),则表示用户的安全级别大于文件的安全级别时,用户可以对文件进行读操作,当用户的安全级别小于文件的安全级别时,用户可以对文件进行写操作。
但是,现有技术中,存在MAC控制过于简单,无法实现基于主体和客体的分组进行访问控制的问题。
发明内容
本发明提供一种资源访问控制方法及设备,用以解决现有技术中MAC控制过于简单,无法实现基于主体和客体的分组进行访问控制的问题。
第一方面,本发明实施例提供一种资源访问控制方法,所述方法的执行主体为计算机或通信设备,所述方法包括:
获取主体对客体的访问请求;
根据所述访问请求,确定所述主体的名称、所述客体的名称以及所述主体对所述客体的访问类型;
根据所述主体的名称确定所述主体所属的域,并根据所述客体的名称确定所述客体所属的组;
根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;
根据所述访问类型及所述第一可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型。
结合第一方面,在第一方面的第一种可能实现的方式中,所述根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型之前,还包括:
获取用户输入的设置信息,所述设置信息包括所述主体所属的域、所述客体所属的组及所述第一可执行访问类型;
根据所述设置信息,将所述主体所属的域对所述客体所属的组的可执行访问类型设置为所述第一可执行访问类型。
本实施例中,通过设置信息,设置主体所属的域对客体所属的组的可执行访问类型;使得可以设置根据主体所属的域和客体所属的组来进行访问控制时,具体的控制策略。
结合第一方面的第一种可能实现的方式,在第一方面的第二种可能实现的方式中,所述根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,包括:
根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,并根据所述第一表项确定所述第一可执行访问类型;所述第一表项包括所述客体所属的组、所述主体所属的域和所述第一可执行访问类型;
相应的,所述根据所述设置信息,将所述主体所属的域对所述客体所属的组的可执行访问类型设置为第一可执行访问类型,包括:
根据所述设置信息,生成所述第一表项,并将所述第一表项添加至所述访问控制表。
本实施例中,提供了通过查找访问控制表来确定所述主体所属的域对所述客体所述的组的可执行访问类型的方式。
结合第一方面的第二种可能实现的方式,在第一方面的第三种可能实现的方式中,所述第一表项中的各信息为数值型的信息;所述根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,包括:
将所述主体所属的域及所述客体所属的组转换为数值型的信息;
根据数值型的所述主体所属的域及所述客体所属的组,查找所述访问控制表,确定所述第一表项。
本实施例中,由于数值的比较效率要远远高于字符串,且所占空间也要更少;因此,通过将访问控制表的表项中的信息转换为数值型的信息,可以提高查找访问控制表的效率表的效率,减小存储访问控制表所占的存储空间。
结合第一方面或第一方面的第一种至第三种任一种可能实现的方式,在第一方面的第四种可能实现的方式中,所述根据所述主体的名称确定所述主体所属的域,根据所述客体的名称确定所述客体所属的组之前,还包括:
根据所述主体的名称和所述客体的名称,确定所述主体的名称对所述客体的名称的第二可执行访问类型;
根据所述访问类型及所述第二可执行访问类型,确定不允许所述主体对所述客体执行所述访问类型。
本实施例中,通过首先根据所述主体的名称和所述客体的名称,确定所述主体的名称对所述客体的名称的第二可执行访问类型;当根据所述第二可执行访问类型,确定不允许所述主体对所述客体执行所述访问类型时,再根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;实现了在根据组及域进行访问权限判断的基础上,优先根据客体的名称来进行访问权限的判断;提高了对于可以直接通过名称进行访问权限判断的效率。
结合第一方面或第一方面的第一种至第四种任一种可能实现的方式,在第一方面的第五种可能实现的方式中,所述获取主体对客体的访问请求之后,还包括:
根据所述访问请求,确定所述客体的类别;
相应的,所述根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,包括:
根据所述主体所属的域、所述客体所属的组及所述客体的类别,确定所述主体所属的域对所述客体所属的组的所述第一可执行访问类型。
本实施例中,通过根据所述主体所属的域、所述客体所属的组及所述客体的类别,确定所述主体所属的域对所述客体所属的组的所述第一可执行访问类型;可以实现基于客体的类别来区分不同类别的客体的可执行访问类型。
第二方面,本发明实施例提供一种设备,所述设备为计算机或通信设备,所述设备包括:
获取模块,用于获取主体对客体的访问请求;
确定模块,用于根据所述访问请求,确定所述主体的名称、所述客体的名称以及所述主体对所述客体的访问类型;根据所述主体的名称确定所述主体所属的域,并根据所述客体的名称确定所述客体所属的组;根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;
判断模块,用于根据所述访问类型及所述第一可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型。
结合第二方面,在第二方面的第一种可能实现的方式中,所述获取模块,还用于获取用户输入的设置信息,所述设置信息包括所述主体所属的域、所述客体所属的组及所述第一可执行访问类型;
所述设备,还包括:设置模块,用于根据所述设置信息,将所述主体所属的域对所述客体所属的组的可执行访问类型设置为所述第一可执行访问类型。
结合第二方面的第一种可能实现的方式,在第二方面的第二种可能实现的方式中,所述确定模块根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,具体包括:
根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,并根据所述第一表项确定所述第一可执行访问类型;所述第一表项包括所述客体所属的组、所述主体所属的域和所述第一可执行访问类型;
相应的,所述设置模块,具体用于根据所述设置信息,生成所述第一表项,并将所述第一表项添加至所述访问控制表。
结合第二方面的第二种可能实现的方式,在第二方面的第三种可能实现的方式中,所述第一表项中的各信息为数值型的信息;所述确定模块根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,具体包括:
将所述主体所属的域及所述客体所属的组转换为数值型的信息;
根据数值型的所述主体所属的域及所述客体所属的组,查找所述访问控制表,确定所述第一表项。
结合第二方面或第二方面的第一种至第三种任一种可能实现的方式,在第二方面的第四种可能实现的方式中,所述确定模块,还用于根据所述主体的名称和所述客体的名称,确定所述主体的名称对所述客体的名称的第二可执行访问类型;
所述判断模块,还用于根据所述访问类型及所述第二可执行访问类型,确定不允许所述主体对所述客体执行所述访问类型。
结合第二方面或第二方面的第一种至第四种任一种可能实现的方式,在第二方面的第五种可能实现的方式中,所述确定模块,还用于根据所述访问请求,确定所述客体的类别;
所述确定模块根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,具体包括:
根据所述主体所属的域、所述客体所属的组及所述客体的类别,确定所述主体所属的域对所述客体所属的组的所述第一可执行访问类型。
本发明实施例提供的一种资源访问控制方法及设备;通过根据所述主体的名称确定所述主体所属的域,并根据所述客体的名称确定所述客体所属的组;根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;根据所述访问类型及所述第一可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型;实现了基于主体所属的域和客体所属的组来进行访问控制。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明资源访问控制方法实施例一的流程图;
图2为本发明资源访问控制方法实施例二的流程图;
图3为本发明设备实施例一的结构示意图;
图4为本发明设备实施例二的结构示意图;
图5为本发明设备实施例三的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的应用场景可以为:对计算机或通信设备中的资源的访问控制;访问控制中对主体进行了分组(划分出不同的域),对客体也进行了分组(划分出不同的组);并基于域与组进行访问控制。例如,属于管理域的用户A,不应该对属于开发域的用户B所撰写的专利交底书有读或写的权限;而属于该开发域的用户C,具有对该专利交底书读的权限,而不具有对该专利交底书写的权限。又例如,属于Web域的进程A,不应该对属于硬件域的硬件I/O有添加或删除的权限;而属于设备域的进程B,具有对该硬件I/O的添加或删除的权限。
需要说明的是,所述通信设备可以为路由器、交换机、移动通信网络的基站、基站控制器、网关等设备。
图1为本发明资源访问控制方法实施例一的流程图;如图1所示,本实施例的方法可以包括:
步骤101、获取主体对客体的访问请求;
步骤102、根据所述访问请求,确定所述主体的名称、所述客体的名称以及所述主体对所述客体的访问类型;
步骤103、根据所述主体的名称确定所述主体所属的域,并根据所述客体的名称确定所述客体所属的组;
步骤104、根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;
步骤105、根据所述访问类型及所述第一可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型。
本实施例中,通过根据所述主体的名称确定所述主体所属的域,并根据所述客体的名称确定所述客体所属的组;根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;根据所述访问类型及所述第一可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型;实现了基于主体所属的域和客体所属的组来进行访问控制。
图2为本发明资源访问控制方法实施例二的流程图;如图2所示,本实施例的方法可以包括:
步骤201、获取主体对客体的访问请求;
例如,在计算机系统中,当某个进程(主体)试图打开指定的文件(客体)时,可以通过在操作系统内核中拦截获取进程对文件的访问控制请求。
步骤202、根据所述访问请求,确定所述主体的名称、所述客体的名称以及所述主体对所述客体的访问类型;
可选的,当所述主体为用户时,所述主体的名称可以为用户名;例如,张三、李四;当所述主体为进程时,所述主体的名称可以为进程对应的可执行文件的全路径;例如,D:\ProgramFiles\MicrosoftOffice2003\Visio11。
可选的,所述客体为文件时,所述客体的名称可以为文件名(例如,工作表)或文件的全路径名(例如,F:\工作目录\工作表);当所述客体为端口时,所述客体的名称可以为端口号。
可选的,当所述客体为文件时,所述访问类型可以为读、写等;可选的,当所述客体为端口时,所述访问类型可以为添加、删除等。
可选的,所述主体的名称可以根据访问请求中携带的相关信息确定。以Linux系统为例,进程到文件的访问请求中,会携带进程的内存结构(包含进程ID、进程所属的用户、进程全路径等),可以通过该结构获取进程的全路径名称作为进程的名称。
步骤203、根据所述主体的名称和所述客体的名称,确定所述主体的名称对所述客体的名称的第二可执行访问类型;
可选的,步骤203具体可以为:根据所述主体的名称和所述客体的名称,查询第一访问控制表确定所述第一访问控制表的第二表项,并根据所述第二表项确定所述第二可执行访问类型;所述第二表项包括所述主体的名称、所述客体的名称和所述第二可执行访问类型。其中,所述第一访问控制表可以如表1所示;
表1
主体的名称 | 客体的名称 | 可执行访问类型 |
张三 | 工资表 | 读 |
李四 | 考勤表 | 读、写 |
…… | …… | …… |
例如,假设所述主体的名称为“张三”、所述客体的名称为“工资表”,则所述第二可执行访问类型为“读”;假设所述主体的名称为“李四”、所述客体的名称为“考勤表”,则所述第二可执行访问类型为“读、写”。
可选的,步骤201之后还可以包括:根据所述访问请求,确定所述客体的类别。
可选的,所述客体的类别可以为:文件、端口等。
可选的,所述客体的类别可以根据访问请求中携带的相关信息确定。以Linux系统为例,进程打开文件的访问请求中,会携带客体的内存结构,可以通过该结构获取所述客体的类别为文件。又例如,进程绑定到某个端口的访问请求中,会携带客体的内存结构,可以通过该结构获取所述客体的类别为端口。
进一步的,根据访问控制的具体客体类别不同,还可以进一步细化客体的类别。所述客体的类别还可以为文件的类型;例如,word文件、excel文件、visio文件等。
相应的,所述根据所述主体的名称和所述客体的名称,确定所述主体的名称对所述客体的名称的第二可执行访问类型,包括:
根据所述主体的名称、所述客体的名称及所述客体的类别,确定所述主体的名称对所述客体的名称的第二可执行访问类型。
进一步可选的,所述第一访问控制表可以如表2所示;
表2
主体的名称 | 客体的名称 | 客体的类别 | 可执行访问类型 |
张三 | 工资表 | 文件 | 读 |
李四 | 考勤表 | 文件 | 读、写 |
王五 | 各部门计划 | 目录 | 打开、删除 |
…… | …… | …… | …… |
可选的,可以将所述第一访问控制表中的每一个表项的信息都转换为数值型的信息;例如可以使用如下方式:对于主体的名称或客体的名称可以采取哈希运算,对于所述客体的类别可以采用枚举方式,对于可执行访问类型可以采用位图方式。
采用上述方式将表2中的信息转换后,如表3所示;
表3
主体的名称 | 客体的名称 | 客体的类别 | 可执行访问类型 |
847490 | 128059 | 1 | 1 |
899369 | 167754 | 1 | 3(二进制的11) |
916662 | 976803 | 2 | 3 |
…… | …… | …… | …… |
相应的,所述根据所述主体的名称和所述客体的名称,查询第一访问控制表确定第二表项,包括:
将所述主体的名称和所述客体的名称转换为数值型的信息;
根据数值型的所述主体的名称和所述客体的名称,查找所述第一访问控制表,确定所述第二表项。
可选的,所述第一访问控制表在初始化之后,不允许对所述第一访问控制表进行更新(例如,添加表项、删除表项、修改表项)。
步骤204、根据所述访问类型及所述第二可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型;
若否,则执行步骤205;若是,则结束。
可选的,步骤204具体可以为:确定所述访问类型是否属于所述第二访问类型;若是,则确定允许所述主体对所述客体执行所述访问类型;若否,则确定不允许所述主体对所述客体执行所述访问类型。
步骤205、根据所述主体的名称确定所述主体所属的域,并根据所述客体的名称确定所述客体所属的组;
可选的,步骤205具体可以为:根据所述主体的名称,查询主体-域表,确定所述主体-域表的第三表项,并根据所述第三表项确定所述主体所属的域;根据所述客体的名称,查询客体-组表确定所述客体-组表的第四表项,并根据所述第四表项确定所述客体所属的组;所述第三表项包括所述主体的名称和所述主体所属的域;所述第四表项包括所述客体的名称和所述客体所属的组。其中,所述客体-组表可以如表4所示,所述主体-域表可以如表5所示;
表4
客体的名称 | 组 |
专利交底书 | 开发 |
源代码 | 测试 |
…… | …… |
表5
主体的名称 | 域 |
张三 | 研发 |
李四 | 行政 |
王五 | 市场 |
…… | …… |
例如,假设所述客体的名称为“工资表”,则所述客体所属的组为“财务”;假设所述主体的名称为张三,则所述主体所属的域“研发”。
与步骤203类似,所述客体-组表及所述主体-域表中表项的信息也可以为数值型信息。例如,对于域或组可以采用枚举方式转换为数值型信息。
相应的,所述根据所述主体的名称,查询主体-域表,确定第三表项,包括:
将所述主体的名称转换为数值型的信息;
根据数值型的所述主体的名称,查找所述主体-域表,确定所述第三表项。
相应的,所述根据所述客体的名称,查询客体-组表,确定第四表项,包括:
将所述客体的名称转换为数值型的信息;
根据数值型的所述客体的名称,查找所述客体-组表,确定所述第四表项。
步骤206、根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;
可选的,步骤206具体可以为:根据所述主体所属的域、所述客体所属的组查找第二访问控制表,确定所述第二访问控制表的第一表项,并根据所述第一表项确定所述第一可执行访问类型;所述第一表项包括所述客体所属的组、所述主体所属的域和所述第一可执行访问类型;其中,所述第二访问控制表可以如表6所示;
表6
域 | 组 | 可执行访问类型 |
研发 | 技术交底书 | 读、写 |
测试 | 源代码 | 读 |
…… | …… | …… |
例如,假设所述主体所属的域为“研发”、所述客体所属的组为“技术交底书”,则所述第一可执行访问类型为“读、写”;假设所述主体所属的域为“测试”、所述客体所属的组为“源代码”,则所述第一可执行访问类型为“读”。
若所述步骤201之后还包括根据所述访问请求,确定所述客体的类别,则。
相应的,根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,包括:
根据所述主体所属的域、所述客体所属的组及所述客体的类别,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型。
进一步可选的,所述第二访问控制表可以如表7所示;
表7
域 | 组 | 客体的类别 | 可执行访问类型 |
研发 | 技术交底书 | 文件 | 读、写 |
测试 | 源代码 | 文件 | 读 |
…… | …… | …… | …… |
与步骤203类似,所述第二访问控制表中表项的信息也可以为数值型信息。
相应的,根据所述主体所属的域、所述客体所属的组查找第二访问控制表,确定所述第二访问控制表的第一表项,并根据所述第一表项确定所述第一可执行访问类型,包括:
将所述主体所属的域及所述客体所属的组转换为数值型的信息;
根据数值型的所述主体所属的域及所述客体所属的组,查找所述访问控制表,确定所述第一表项。
步骤207、根据所述访问类型及所述第一可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型。
可选的,步骤207具体可以为:确定所述访问类型是否属于所述第一访问类型;若是,则确定允许所述主体对所述客体执行所述访问类型;若否,则确定不允许所述主体对所述客体执行所述访问类型。
可选的,本实施例中,步骤201之前还可以包括:
步骤2011、获取用户输入的第一设置信息,所述第一设置信息包括所述主体所属的域、所述客体所属的组及所述第一可执行访问类型;
步骤2012、根据所述第一设置信息,将所述主体所属的域对所述客体所属的组的可执行访问类型设置为所述第一可执行访问类型。
可选的,步骤2012具体可以为:根据所述第一设置信息,生成所述第一表项,并将所述第一表项添加至所述第二访问控制表(即,在第二访问控制表中新增表项);或者,根据所述第一设置信息,将所述第一表项的可执行访问类型更新为所述第一可执行访问类型(即,在第二访问控制表中修改已有表项)。
可选的,步骤2011之前还可以包括:获取用户输入的第二设置信息,所述第二设置信息包括所述主体的名称、所述主体所属的域、所述客体的名称和所述客体所属的组;根据所述第二设置信息,生成所述第三表项和所述第四表项,并将所述第三表项添加至所述主体-域表,将所述第四表项添加至所述客体-组表。
需要说明的是,本实施例中,还可以根据用户输入删除所述第二访问控制表、所述主体-域表或所述客体-组表中的表项。
可选的,步骤2012之后,还可以包括:
步骤2013、获取用户输入的第一查询信息,所述第一查询信息包括所述主体所属的域、所述客体所属的组;根据所述第一查询信息,确定第一查询结果,所述第一查询结果包括所述第一可执行访问类型;并将所述第一查询结果显示给所述用户。
步骤2014、获取用户输入的第二查询信息,所述第二查询信息包括所述主体的名称;根据所述第二查询信息,确定第二查询结果,所述第二查询结果包括所述主体所属的域;并将所述第二查询结果显示给所述用户。
步骤2015、获取用户输入的第三查询信息,所述第三查询信息包括所述客体的名称;根据所述第三查询信息,确定第三查询结果,所述第三查询结果包括所述客体所属的组;并将所述第三查询结果显示给所述用户。
需要说明的是,步骤2013、步骤2014、步骤2015之间并没有先后顺序的显示,且当查询结果(例如,第一查询结果)为经一转换方式转换后获得的数值型的信息时,可以将数值型的信息进行与该转换方式对应的逆转换之后,再显示给用户。
本实施例中,通过首先根据所述主体的名称和所述客体的名称,确定所述主体的名称对所述客体的名称的第二可执行访问类型;当根据所述第二可执行访问类型,确定不允许所述主体对所述客体执行所述访问类型时,再根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;实现了在根据组及域进行访问权限判断的基础上,优先根据客体的名称来进行访问权限的判断;提高了对于可以直接通过名称进行访问权限判断的效率。
需要说明的是,所述第一访问控制表、所述第二访问控制表、主体-域表、客体-组表可以存储在磁盘中,并在操作系统运行时,将其加载到内存中,以提高查找的效率。
需要说明的是,步骤201-步骤208可以在操作系统的内核中执行。
图3为本发明设备实施例一的结构示意图,所述设备为计算机或通信设备;如图3所示,本实施例的设备可以包括:获取模块301、确定模块302和判断模块303。其中,获取模块301,用于获取主体对客体的访问请求;确定模块302,用于根据所述访问请求,确定所述主体的名称、所述客体的名称以及所述主体对所述客体的访问类型;根据所述主体的名称确定所述主体所属的域,并根据所述客体的名称确定所述客体所属的组;根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;判断模块303,用于根据所述访问类型及所述第一可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型。
本实施例的设备,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图4为本发明设备实施例二的结构示意图,如图4所示,本实施例的设备在图3所示设备结构的基础上,进一步的,还可以包括设置模块304。其中,获取模块301,还用于获取用户输入的设置信息,所述设置信息包括所述主体所属的域、所述客体所属的组及所述第一可执行访问类型;设置模块304,用于根据所述设置信息,将所述主体所属的域对所述客体所属的组的可执行访问类型设置为所述第一可执行访问类型。
可选的,确定模块302根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,具体包括:
根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,并根据所述第一表项确定所述第一可执行访问类型;所述第一表项包括所述客体所属的组、所述主体所属的域和所述第一可执行访问类型;
相应的,设置模块304,具体用于根据所述设置信息,生成所述第一表项,并将所述第一表项添加至所述访问控制表。
可选的,所述第一表项中的各信息为数值型的信息;确定模块302根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,具体包括:
将所述主体所属的域及所述客体所属的组转换为数值型的信息;
根据数值型的所述主体所属的域及所述客体所属的组,查找所述访问控制表,确定所述第一表项。
可选的,确定模块302,还用于根据所述主体的名称和所述客体的名称,确定所述主体的名称对所述客体的名称的第二可执行访问类型;
判断模块303,还用于根据所述访问类型及所述第二可执行访问类型,确定不允许所述主体对所述客体执行所述访问类型。
可选的,确定模块302,还用于根据所述访问请求,确定所述客体的类别;
确定模块302根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,具体包括:
根据所述主体所属的域、所述客体所属的组及所述客体的类别,确定所述主体所属的域对所述客体所属的组的所述第一可执行访问类型。
本实施例的设备,可以用于执行图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图5为本发明设备实施例三的结构示意图,所述设备为计算机或通信设备;如图5所示,本实施例的设备可以包括:处理器501和存储器502。该设备还可以包括通信接口503。通信接口503可以和处理器501相连。其中,通信接口503用于发送数据或信息,通信接口503还用于接收数据或信息,存储器502存储执行指令,当设备运行时,处理器501与存储器502之间通信,处理器501调用存储器502中的执行指令,用于执行以下操作:
获取主体对客体的访问请求;
根据所述访问请求,确定所述主体的名称、所述客体的名称以及所述主体对所述客体的访问类型;
根据所述主体的名称确定所述主体所属的域,并根据所述客体的名称确定所述客体所属的组;
根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;
根据所述访问类型及所述第一可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型。
可选的,所述根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型之前,还包括:
获取用户输入的设置信息,所述设置信息包括所述主体所属的域、所述客体所属的组及所述第一可执行访问类型;
根据所述设置信息,将所述主体所属的域对所述客体所属的组的可执行访问类型设置为所述第一可执行访问类型。
可选的,所述根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,包括:
根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,并根据所述第一表项确定所述第一可执行访问类型;所述第一表项包括所述客体所属的组、所述主体所属的域和所述第一可执行访问类型;
相应的,所述根据所述设置信息,将所述主体所属的域对所述客体所属的组的可执行访问类型设置为第一可执行访问类型,包括:
根据所述设置信息,生成所述第一表项,并将所述第一表项添加至所述访问控制表。
可选的,所述第一表项中的各信息为数值型的信息;所述根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,包括:
将所述主体所属的域及所述客体所属的组转换为数值型的信息;
根据数值型的所述主体所属的域及所述客体所属的组,查找所述访问控制表,确定所述第一表项。
可选的,所述根据所述主体的名称确定所述主体所属的域,根据所述客体的名称确定所述客体所属的组之前,还包括:
根据所述主体的名称和所述客体的名称,确定所述主体的名称对所述客体的名称的第二可执行访问类型;
根据所述访问类型及所述第二可执行访问类型,确定不允许所述主体对所述客体执行所述访问类型。
可选的,所述获取主体对客体的访问请求之后,还包括:
根据所述访问请求,确定所述客体的类别;
相应的,所述根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,包括:
根据所述主体所属的域、所述客体所属的组及所述客体的类别,确定所述主体所属的域对所述客体所属的组的所述第一可执行访问类型。
本实施例的设备,可以用于执行图图1或2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (12)
1.一种资源访问控制方法,其特征在于,所述方法的执行主体为计算机或通信设备,所述方法包括:
获取主体对客体的访问请求;
根据所述访问请求,确定所述主体的名称、所述客体的名称以及所述主体对所述客体的访问类型;
根据所述主体的名称确定所述主体所属的域,并根据所述客体的名称确定所述客体所属的组;
根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;
根据所述访问类型及所述第一可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型。
2.根据权利要求1所述的方法,其特征在于,所述根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型之前,还包括:
获取用户输入的设置信息,所述设置信息包括所述主体所属的域、所述客体所属的组及所述第一可执行访问类型;
根据所述设置信息,将所述主体所属的域对所述客体所属的组的可执行访问类型设置为所述第一可执行访问类型。
3.根据权利要求2所述的方法,其特征在于,所述根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,包括:
根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,并根据所述第一表项确定所述第一可执行访问类型;所述第一表项包括所述客体所属的组、所述主体所属的域和所述第一可执行访问类型;
相应的,所述根据所述设置信息,将所述主体所属的域对所述客体所属的组的可执行访问类型设置为第一可执行访问类型,包括:
根据所述设置信息,生成所述第一表项,并将所述第一表项添加至所述访问控制表。
4.根据权利要求3所述的方法,其特征在于,所述第一表项中的各信息为数值型的信息;所述根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,包括:
将所述主体所属的域及所述客体所属的组转换为数值型的信息;
根据数值型的所述主体所属的域及所述客体所属的组,查找所述访问控制表,确定所述第一表项。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述主体的名称确定所述主体所属的域,根据所述客体的名称确定所述客体所属的组之前,还包括:
根据所述主体的名称和所述客体的名称,确定所述主体的名称对所述客体的名称的第二可执行访问类型;
根据所述访问类型及所述第二可执行访问类型,确定不允许所述主体对所述客体执行所述访问类型。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述获取主体对客体的访问请求之后,还包括:
根据所述访问请求,确定所述客体的类别;
相应的,所述根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,包括:
根据所述主体所属的域、所述客体所属的组及所述客体的类别,确定所述主体所属的域对所述客体所属的组的所述第一可执行访问类型。
7.一种设备,其特征在于,所述设备为计算机或通信设备,所述设备包括:
获取模块,用于获取主体对客体的访问请求;
确定模块,用于根据所述访问请求,确定所述主体的名称、所述客体的名称以及所述主体对所述客体的访问类型;根据所述主体的名称确定所述主体所属的域,并根据所述客体的名称确定所述客体所属的组;根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型;
判断模块,用于根据所述访问类型及所述第一可执行访问类型,确定是否允许所述主体对所述客体执行所述访问类型。
8.根据权利要求7所述的设备,其特征在于,所述获取模块,还用于获取用户输入的设置信息,所述设置信息包括所述主体所属的域、所述客体所属的组及所述第一可执行访问类型;
所述设备,还包括:设置模块,用于根据所述设置信息,将所述主体所属的域对所述客体所属的组的可执行访问类型设置为所述第一可执行访问类型。
9.根据权利要求8所述的设备,其特征在于,所述确定模块根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,具体包括:
根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,并根据所述第一表项确定所述第一可执行访问类型;所述第一表项包括所述客体所属的组、所述主体所属的域和所述第一可执行访问类型;
相应的,所述设置模块,具体用于根据所述设置信息,生成所述第一表项,并将所述第一表项添加至所述访问控制表。
10.根据权利要求9所述的设备,其特征在于,所述第一表项中的各信息为数值型的信息;所述确定模块根据所述主体所属的域、所述客体所属的组查找访问控制表,确定所述访问控制表的第一表项,具体包括:
将所述主体所属的域及所述客体所属的组转换为数值型的信息;
根据数值型的所述主体所属的域及所述客体所属的组,查找所述访问控制表,确定所述第一表项。
11.根据权利要求7-10任一项所述的设备,其特征在于,所述确定模块,还用于根据所述主体的名称和所述客体的名称,确定所述主体的名称对所述客体的名称的第二可执行访问类型;
所述判断模块,还用于根据所述访问类型及所述第二可执行访问类型,确定不允许所述主体对所述客体执行所述访问类型。
12.根据权利要求7-11任一项所述的设备,其特征在于,所述确定模块,还用于根据所述访问请求,确定所述客体的类别;
所述确定模块根据所述主体所属的域和所述客体所属的组,确定所述主体所属的域对所述客体所属的组的第一可执行访问类型,具体包括:
根据所述主体所属的域、所述客体所属的组及所述客体的类别,确定所述主体所属的域对所述客体所属的组的所述第一可执行访问类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510760340.9A CN105429972B (zh) | 2015-11-10 | 2015-11-10 | 资源访问控制方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510760340.9A CN105429972B (zh) | 2015-11-10 | 2015-11-10 | 资源访问控制方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105429972A true CN105429972A (zh) | 2016-03-23 |
CN105429972B CN105429972B (zh) | 2019-05-24 |
Family
ID=55507914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510760340.9A Active CN105429972B (zh) | 2015-11-10 | 2015-11-10 | 资源访问控制方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105429972B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881219A (zh) * | 2018-06-14 | 2018-11-23 | 郑州云海信息技术有限公司 | 一种基于强制访问控制的文件权限管理方法及系统 |
CN112202727A (zh) * | 2020-09-11 | 2021-01-08 | 苏州浪潮智能科技有限公司 | 一种服务端验证用户管理方法、系统、终端及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101034990A (zh) * | 2007-02-14 | 2007-09-12 | 华为技术有限公司 | 权限管理方法及装置 |
US20120005235A1 (en) * | 2009-04-02 | 2012-01-05 | Fredrik Ahlin | Method for managing a directory, controller, system including servers, and computer program |
CN103268455A (zh) * | 2013-05-09 | 2013-08-28 | 华为技术有限公司 | 数据的访问方法及装置 |
CN103620616A (zh) * | 2013-03-28 | 2014-03-05 | 华为技术有限公司 | 一种访问控制权限管理方法和装置 |
CN104735091A (zh) * | 2015-04-17 | 2015-06-24 | 三星电子(中国)研发中心 | 一种基于Linux系统的用户访问控制方法和装置 |
-
2015
- 2015-11-10 CN CN201510760340.9A patent/CN105429972B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101034990A (zh) * | 2007-02-14 | 2007-09-12 | 华为技术有限公司 | 权限管理方法及装置 |
US20120005235A1 (en) * | 2009-04-02 | 2012-01-05 | Fredrik Ahlin | Method for managing a directory, controller, system including servers, and computer program |
CN103620616A (zh) * | 2013-03-28 | 2014-03-05 | 华为技术有限公司 | 一种访问控制权限管理方法和装置 |
CN103268455A (zh) * | 2013-05-09 | 2013-08-28 | 华为技术有限公司 | 数据的访问方法及装置 |
CN104735091A (zh) * | 2015-04-17 | 2015-06-24 | 三星电子(中国)研发中心 | 一种基于Linux系统的用户访问控制方法和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881219A (zh) * | 2018-06-14 | 2018-11-23 | 郑州云海信息技术有限公司 | 一种基于强制访问控制的文件权限管理方法及系统 |
CN112202727A (zh) * | 2020-09-11 | 2021-01-08 | 苏州浪潮智能科技有限公司 | 一种服务端验证用户管理方法、系统、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105429972B (zh) | 2019-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105677250B (zh) | 对象存储系统中的对象数据的更新方法和更新装置 | |
US11055297B2 (en) | Scalable dynamic acronym decoder | |
CN102831069B (zh) | 内存处理方法、内存管理设备 | |
CN103544077A (zh) | 数据处理方法及装置、共享存储设备 | |
US8650166B1 (en) | Systems and methods for classifying files | |
CN101840471B (zh) | 文档权限控制方法和装置 | |
CN101944124A (zh) | 分布式文件系统管理方法、装置以及对应的文件系统 | |
CN105677904B (zh) | 基于分布式文件系统的小文件存储方法及装置 | |
CN103377336A (zh) | 一种计算机系统用户权限的控制方法和系统 | |
CN104461685A (zh) | 虚拟机处理方法和虚拟计算机系统 | |
CN106155596A (zh) | 数据写入方法及装置 | |
CN106708443A (zh) | 数据读写方法及装置 | |
CN101960442A (zh) | 使用虚拟技术输入/输出数据的方法和设备 | |
CN104537012B (zh) | 数据处理方法和装置 | |
CN103678360A (zh) | 一种分布式文件系统的数据存储方法和装置 | |
CN105429972A (zh) | 资源访问控制方法及设备 | |
KR101291123B1 (ko) | 휴대 단말의 어플리케이션 관리 제어 방법 및 장치와 그 방법을 실행하기 위한 프로그램이 기록된 기록 매체 | |
CN103049546B (zh) | 一种管理、访问系统日志的方法和装置 | |
CN112785248B (zh) | 人力资源数据跨组织交互方法、装置、设备和存储介质 | |
US8688657B1 (en) | Systems and methods for data loss prevention | |
US10339099B2 (en) | Techniques for leveraging a backup data set for eDiscovery data storage | |
CN105426131A (zh) | 一种kv存储实现方法和装置 | |
CN103095759A (zh) | 恢复资源环境的方法及设备 | |
US9286302B2 (en) | Inode reuse systems and methods | |
CN105303208B (zh) | 一种ic卡管理方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |