CN1773413B - 角色定权方法 - Google Patents
角色定权方法 Download PDFInfo
- Publication number
- CN1773413B CN1773413B CN 200410046919 CN200410046919A CN1773413B CN 1773413 B CN1773413 B CN 1773413B CN 200410046919 CN200410046919 CN 200410046919 CN 200410046919 A CN200410046919 A CN 200410046919A CN 1773413 B CN1773413 B CN 1773413B
- Authority
- CN
- China
- Prior art keywords
- role
- authority
- user
- submodule
- authorization
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种角色定权方法,目的是针对现有授权方法安全性较差,要么安全性较好但配置与管理过于复杂,以及通用性差的问题。技术方案是在操作系统的强制访问框架MAC之上构建一个RBA实现系统对采用强制访问控制MAC机制的安全操作系统中的主体进行授权和配置管理,RBA实现系统由内核实现模块、RBA配置文件、系统调用接口、库函数和配置与管理工具组成,由内核实现模块采用静态与动态“两级授权”方法实现“最小特权”,通过基于角色的多重继承与多种约束实现“特权分离”,且通过对MAC进行扩展以实现与安全策略的无关性。本发明支持任意的强制访问控制框架和安全策略,良好的“最小特权”和“特权分离”安全性质,简化了安全配置与管理工作。
Description
技术领域
本发明涉及提高计算机安全性的方法,尤其是提高计算机操作系统的安全性和操作系统安全的可管理性的角色定权(Role Based Authorization,缩写为RBA)方法。
背景技术
随着人们对信息安全的日益重视,作为一切应用软件运行基础的操作系统的安全性受到了越来越多的重视。为了提高操作系统的安全性,必须从多个方面对操作系统的安全进行增强,授权方法是保障和提高操作系统安全性的关键技术之一。
所谓授权,是指把操作系统中的权限恰当地赋予操作系统的主体(即用户和应用程序的进程),使得主体能够执行许可的操作以及访问许可的数据。传统的Unix、Linux、FreeBSD等著名的操作系统都是基于用户一组模式对主体授权的,这种授权方法存在如下的问题:
1.授权粒度粗,“最小特权”效果差,安全性差。传统授权模式的授权对象是用户,造成同一用户的所有应用程序都具有同样的权限,而实际上不同应用程序所需要的权限是不相同的,为了保证用户的所有应用程序都能运行,传统授权方法是把用户的所有应用程序的权限取并集赋予用户,这将导致很差的“最小特权”效果,从而导致安全性较差;
2.授权不灵活。传统授权方法将权限与用户ID绑定,规定ID为0的用户是超级用户,而ID号非0的是普通用户,而事实上,由于管理的需要,往往需要转换普通用户与管理员的角色,传统授权方法不支持这种转换;
3.ROOT用户权限过大。传统授权方法定义了一个无所不能的超级用户ROOT,这将给系统安全带来很大的隐患。现在的安全趋势是“特权分离”,即将ROOT用户的授权细分为互相制约的特权子集,由不同的用户分别完成,从而提高安全性。
另外,随着应用的安全需求的日益多样化,作为各种应用运行基础的操作系统,必须提供有效的机制满足多种安全需求(表现为多种不同的安全策略),和灵活可变的安全需求(表现为灵活可变的安全策略)。而传统的Unix、Linux等操作系统的自主访问控制DAC(Discretionary Access Control)安全机制的访问控制粒度粗且不支持安全策略,因此人们在传统的Unix、Linux等操作系统的基础上引入了强制访问控制机制MAC(Mandatory Access Control),以提供细粒度的访问控制并支持多种安全策略和灵活可变的安全策略。MAC框架定义了大量的安全检查函数(被称为钩子函数、Hook函数),在内核代码对内核的对象如Vnode、Proc、Socket等访问之前,都会调用这些安全检查函数进行安全检查,只有通过了安全检查,该次访问才能够进行,而安全策略则可以基于这些安全检查函数来实现自己的安全规则。国际著名的Trusted Solaris以及SELinux等都是采用了MAC的安全操作系统。
但引入MAC的同时也引入了一个新的问题,就是如何安全、方便地对操作系统的主体授权,以及如何方便、简洁地对这些主体和权限进行管理。由于MAC引入了多种动态可变的安全策略,而每个安全策略都定义了自己的一套权限,因此安全操作系统的权限定义以及权限的管理方式相比传统操作系统都截然不同,从而所有引入了MAC的安全操作系统都需要一套全新的授权方法对主体授权和管理。
针对当前操作系统的授权方法既要满足通用性和安全性又要满足安全配置与管理的方便性和易用性。通用性体现在授权方法必须能够满足系统构架的需要,并支持强制访问控制框架和多种灵活的安全策略。安全性主要体现在两个方面,一是“最小特权”原则,即授权方法应支持细粒度的特权划分与管理,从而授予主体实现其功能所需要的最小的特权,二是“特权分离”原则,即授权方法应支持根据职务(Duty)的特权划分,避免集所有特权于一身的超级用户的存在。且授权方法应考虑安全配置与管理的方便性与易用性,一种好的授权方法应该尽可能减小安全配置与管理的复杂程度,从而避免安全配置与管理过程中出现的安全漏洞。
Trusted Solaris(http://www.sun.com/solaris)是由美国SUN公司开发的安全操作系统,它的授权方法是基于角色的,它把权限赋予角色,用户通过使用分配给他们的角色而得到权限,但其权限定义与配置都比较复杂,同时权限定义的粒度较粗,不利于“最小特权”的实现。SELinux(http://www.nsa.gov/selinux)是美国国家安全局开发的一个基于Linux的安全增强操作系统,它的授权方法是基于类型施加(TypeEnforcement,TE)策略进行的,有很强的灵活性和安全性,但其配置与管理非常复杂,单是示例性配置文件就达数十个之多,不利于安全配置与管理。另外,这两个操作系统的授权方法都是与各自实现的安全策略紧密相关的,没有通用性,不能直接用于对其它安全策略或其它操作系统进行授权。
发明内容
本发明要解决的技术问题是针对现有技术方案要么权限定义的粒度较粗做不到“最小特权”造成安全性较差,要么安全性较好但配置与管理过于复杂,以及现有方案通用性差的问题,提出一种角色定权方法:在操作系统的强制访问控制(MAC)框架之上构建一个角色定权(RBA)实现系统,该系统与安全策略无关,可以适用于任何实现了强制访问控制(MAC)框架的操作系统(如Linux、TrustedBSD等);该系统对当前采用强制访问控制MAC机制的安全操作系统中的主体进行授权和配置管理,通过静态与动态“两级授权”方法实现“最小特权”,保证高安全性,通过基于角色的多重继承与多种约束实现“特权分离”,在进一步提高安全性的同时大大降低配置与管理的复杂度,且对强制访问控制(MAC)进行了扩展以实现与安全策略的无关性。
本发明角色定权(RBA)实现系统由内核实现模块、角色定权(RBA)配置文件、系统调用接口、库函数和配置与管理工具组成。内核实现模块由静态授权与管理模块、动态授权模块和强制访问控制(MAC)扩展模块组成,这些模块构建在操作系统提供的强制访问控制(MAC)框架之上。
静态授权与管理模块由用户角色关联子模块、角色定制子模块、可执行文件授权子模块、会话角色设置子模块、角色与权限约束子模块组成。在对用户进行安全配置与管理时由静态授权与管理模块完成“两级授权”中的第一次授权-静态授权,即由静态授权与管理模块静态地确定用户的权限,完全基于角色进行,把权限赋予角色,用户通过与角色关联获得相应角色的权限,方法是管理员使用配置与管理工具通过系统调用接口调用静态授权与管理模块的服务:在操作系统初始化时,静态授权与管理模块调用强制访问控制(MAC)扩展模块计算多重继承的角色的权限;静态授权与管理模块调用强制访问控制(MAC)扩展模块处理系统的权限相关信息。
动态授权模块由进程动态权限计算子模块组成。在用户执行应用程序时由动态授权模块完成“两级授权”中的第二次授权-动态授权,此时综合考虑用户、应用程序进程的父进程以及应用程序可执行文件这三者的权限,用户的权限为静态授权与管理模块为用户会话设置的角色对应的权限,该角色的权限在系统初始化时已经计算得到;应用程序进程的父进程的权限可以直接得到,而应用程序可执行文件的权限则由管理员通过静态授权与管理模块授予;动态授权模块根据用户的权限、父进程的权限以及应用程序可执行文件的权限动态计算得到一个最适合的权限赋予应用程序进程,方法是当父进程派生(fork)子进程并由子进程执行一个应用程序时,由动态授权模块对子进程授权,动态授权模块调用强制访问控制(MAC)扩展模块中的接口,利用静态授权与管理模块提供的可执行文件的权限和用户当前会话的权限,再加上父进程的权限计算子进程的权限,并将其授予子进程。
强制访问控制(MAC)扩展模块中设计了两个强制访问控制接口-授权权限操作接口和授权权限计算接口:
为了支持通用的安全策略,本发明将授权的权限定义为操作系统的强制访问控制(MAC)框架的安全标记,强制访问控制(MAC)扩展模块利用操作系统的强制访问控制(MAC)框架与底层的安全策略通信,将上层的权限标记操作与计算请求分解为对各个安全策略安全标记的操作与计算的多个请求,并调用相关安全策略完成,方法是使用授权权限操作接口对这些标记进行操作,操作方法有:
1)权限标记的初始化与销毁方法,各安全策略在实现时调用操作系统提供的内存分配与释放接口函数为权限标记分配和释放空间;
2)权限标记复制方法,各安全策略在实现时调用操作系统提供的内存拷贝接口函数将一个权限标记的内容复制到另一个权限标记中;
3)权限标记内外部表示形式转化方法,在操作系统内部,权限标记以二进制形式表示,为了在配置文件中存储权限标记,也为了让管理员容易理解安全标记,需要将权限标记转换为供管理员阅读的字符串这种外部表示形式,以及把字符串转换为系统的内部表示形式。安全策略在实现该方法时,根据自己对安全标记含义的理解进行转换;
授权权限计算接口在静态授权时完成权限的相加与相减,计算出所有角色的权限供动态授权模块使用;在动态授权时进行动态权限计算。为了保证安全,角色定权(RBA)配置文件仅对内核实现模块可见,它记录了所有的配置与管理信息,包括所有角色信息、用户与角色的关联信息及所有的约束信息。角色定权(RBA)配置文件包括三类:
1.角色配置文件,记录系统中所有角色的信息,每个记录表示一个角色,每个角色由角色名、角色ID、角色权限、角色描述、角色间的继承关系和角色约束等信息域组成。
2.用户-角色配置文件,记录系统中所有用户与角色的关联关系,每个记录代表一个用户。每个用户由用户名、用户ID、用户关联的多个角色的信息,每个角色信息由角色ID、角色的时间约束组成。
3.各策略的权限配置文件,为了支持策略的动态加入与退出,为每个策略创建一个与其策略名同名的配置文件,记录该策略的权限配置信息。由于安全策略只与角色关联,所以安全策略配置文件记录了系统中的角色对应的安全策略权限,一个记录表示一个角色,由角色ID、策略描述和策略权限三个信息域组成。
系统调用接口是内核实现模块与操作系统核外应用程序和配置与管理工具的通信接口,用来请求静态授权与管理模块的服务,这些服务包括:
1.用户角色关联子模块的系统服务,包括为用户增强和删除一个关联的角色、获取和设置用户关联的角色、获取和设置用户与角色的时间约束。
2.角色定制子模块的系统服务,包括新增和删除一个角色、获得和设置角色的属性(ID、名字、权限、描述、约束)、获取和设置角色的时间约束。
3.可执行文件授权模块的系统服务,包括获取和设置可执行文件的权限。
4.会话角色设置模块的系统服务,包括获取和设置当前用户会话对应的角色。
库函数的功能与系统调用接口一一对应,但库函数对系统调用接口进行了封装,因此其提供的接口更方便使用。
配置与管理工具是一个图形化的工具,供管理员通过系统调用和库函数提供的接口对用户和可执行文件静态授权。
本发明最终的授权对象是用户的应用程序进程,因为进程是操作系统中最小的资源和权限实体,对进程授权能够达到最好的“最小特权”效果。本发明使用“两级授权”方法通过两次授权来最终确定应用程序进程的权限:第一次授权为静态授权,在对用户进行安全配置与管理时由静态授权与管理模块静态地确定用户的权限,完全基于角色进行,把权限赋予角色,用户通过与角色关联获得相应角色的权限;第二次授权为动态授权,在用户执行应用程序时由动态授权模块根据用户的权限、父进程的权限以及应用程序可执行文件的权限动态计算得到一个最适合的权限赋予应用程序进程。
静态授权与管理模块中的用户角色关联子模块由用户角色关联函数、用户-角色链表初始化函数、用户-角色链表组成,它建立用户与角色的关联或解除用户与角色的关联。用户-角色链表记录了系统中每个用户所关联的角色。安全管理员通过角色定权(RBA)的系统调用接口调用用户角色关联函数对用户与角色的关联信息进行配置与管理,包括为一个用户增、删、改关联的角色,用户角色关联函数同步更新内核中的用户-角色链表和用户-角色配置文件。用户-角色链表初始化函数在操作系统初始化的时候读取用户-角色配置文件,读入所有的用户ID、它们各自关联的角色ID和角色约束,建立用户-角色关联链表。
静态授权与管理模块中的角色定制子模块由角色配置函数、角色-权限链表初始化函数、角色-权限链表组成,管理员通过角色定权(RBA)的系统调用接口调用角色配置函数对角色进行配置与管理,包括定义一个新角色、删除已有角色及获得和设置已有角色的权限,并在初始化时计算所有角色的权限。角色配置函数同步更新内核中的角色-权限链表和角色配置文件与各策略的权限配置文件。定义一个新角色时,本发明使用多重继承的方法来确定该角色的权限,即通过继承多个已有角色的权限来定义新角色的权限。继承分正继承与负继承两种,正继承一个角色是指把该角色的权限加入到已有的权限中,而负继承一个角色是指从已有权限中减去该角色的权限。任何角色初始时都缺省拥有缺省角色的权限。角色定制子模块根据用户通过系统调用接口传来的请求将相应的角色信息写到角色配置文件中或从角色配置文件中删除相应的角色信息。在操作系统初始化时,角色定制子模块根据角色的继承关系调用强制访问控制(MAC)扩展模块中的授权权限计算接口计算出所有角色的权限,供动态授权模块使用。计算方法是:如果要计算角色A的权限,首先按顺序计算出角色A继承的所有角色的权限,对于角色A继承的某个角色B,如果B继承了其它角色,则需要先计算出B的权限。计算出A继承的所有角色的权限后,将A的权限初始化为系统缺省角色权限,再逐个分析A所继承的所有角色并更新A的权限,如果A正继承某角色B,则A的权限被更新为A+B,如果A负继承某角色B的权限,则A的权限被更新为A-B。角色-权限链表初始化函数负责在操作系统初始化的时候初始化角色-权限链表,初始化过程分三步进行:第一步读取角色配置文件,读入所有角色的角色名、ID、角色描述信息、所继承的角色ID和时间约束信息,将它们填入角色授权链表,第一步不计算角色的权限,只是简单地记录角色的已有权限和其所继承的角色ID;第二步读取现有系统中各安全策略的配置文件,将它们描述的角色的权限填入角色授权链表中相应的角色中,若某策略没有定义角色的权限,则该角色对应于该策略的权限自动被分配系统预定义的缺省角色权限;第三步计算所有角色的权限,由于角色之间存在多重继承,因此角色-权限链表初始化函数调用强制访问控制(MAC)扩展模块中的授权权限计算接口计算出所有角色的最终权限。
静态授权与管理模块中的可执行文件授权子模块由可执行文件授权函数组成,为操作系统中应用程序的可执行文件指定权限,供动态授权模块使用。可执行文件的权限是静态权限,如果操作系统支持扩展文件属性,则可执行文件授权子模块调用扩展文件属性接口函数将可执行文件的静态权限写到磁盘上。如果操作系统不支持扩展文件属性,则可执行文件授权子模块将管理员通过角色定权(RBA)系统调用为可执行文件授予的静态权限记录在磁盘上的另一个配置文件中,并对这个文件进行安全保护。
静态授权与管理模块中的会话角色设置子模块由登录角色选择界面、会话角色设置函数、会话权限设置函数组成,它的功能是为用户的一次会话设定一个合适的角色。由于一个用户可能关联多个角色,用户登录时,如果通过了用户名和口令的验证,就会通过角色定权(RBA)系统调用接口调用会话角色设置函数设置用户当前会话的角色。会话角色设置函数首先显示登录角色选择界面,登录角色选择界面读取用户-角色链表显示当前登录用户关联的所有角色,并由用户选择一个角色作为本次会话使用的角色(又称活跃角色),接着会话角色设置函数调用会话权限设置函数,由会话权限设置函数设置会话进程的权限。
静态授权与管理模块中的角色与权限约束子模块由角色与权限约束检查函数组成,其功能是施加多重约束,保证系统的安全性,该子模块在管理员通过角色定权(RBA)系统调用请求服务时检查这些服务请求是否满足多重安全约束,只有满足了安全约束的服务请求才能够被其它静态授权与管理模块响应。角色与权限约束检查函数作用于用户角色关联子模块、角色定制子模块和会话角色设置子模块,规定上述三个子模块必须满足的约束。如果角色定权(RBA)系统调用接口对上述三个模块的调用不满足约束条件,则角色与权限约束检查函数将强制系统调用返回错误。安全约束有:
1.该子模块定义了五个系统角色,即系统缺省角色、安全管理员角色、系统管理员角色、审计管理员角色和一个隐藏角色(即系统的守护程序(Daemon)的初始角色)。为了保证系统的安全性与可用性,这些角色不能被修改和删除,该约束施加于角色定制子模块。
2.所有的安全配置与管理工作,包括角色管理工作、用户-角色管理工作和应用程序文件设置工作,都只能由使用安全管理员角色登录的用户完成,以任何其它角色登录的用户都没有权限进行这些管理工作,该约束施加于用户角色关联子模块、角色定制子模块、可执行文件授权子模块和会话角色设置子模块。
3.为了实现“特权分离”,该子模块规定任一管理员角色所特有的权限(即只能被某个管理员角色所使用的权限,如只能被系统管理员角色所使用的关闭系统的权限)不能被分配给其它的管理员角色和普通的用户角色,这一点可以通过与这些特有的权限绑定所有者ID(基于角色ID的访问控制方式),或者在配置与管理的系统调用中限制该权限只能被赋予特定的角色(基于角色权限的访问控制方式),或者在安全策略中限制该权限只能被赋予特定的角色(基于安全策略的限制方式)来实现。该约束施加于角色定制子模块。
4.“特权分离”的第二个要求是,安全管理员角色、系统管理员角色、审计管理员角色这三个管理员角色中的任意两个都不能同时被赋予同一个用户。由于普通用户角色不具有管理员角色所特有的权限,所以这个约束可以防止一个用户具有两个或两个以上的管理员特权。角色定权(RBA)通过角色间的约束实现了这个要求,该约束施加于用户角色关联子模块。
5.除了上述“特权分离”的角色约束外,该子模块还规定了角色的时间约束,主要包括三类时间约束,都施加于会话角色设置子模块:
1)角色的有效时间长度约束,规定了该角色可以使用的时间范围。
2)角色的有效激活时间长度约束,规定了某用户可以使用该角色的总时间长度。
3)允许使用该角色登录的时间段约束,规定了允许用户使用该角色登录的时间段。
在用户登录时,当用户名和口令验证通过后,在通过系统调用接口调用用户会话设置函数设置用户会话角色时,角色与权限约束检查函数将检查时间约束,包括该角色的总的可用时间段约束、每天的可用时间段约束和可用总时间约束,只有上述约束都符合,才允许使用该角色登录。
为了保证“最小特权”效果,应该允许同一个用户的运行不同应用程序的进程以及不同用户的运行同一应用程序的进程的权限都可以不相同。本发明动态授权模块进行二次动态授权的方法是当父进程派生(fork)子进程来执行一个应用程序时,子进程的权限在缺省情况下与父进程一样;当子进程通过执行(exec)系统调用加载应用程序可执行文件映象时,则通过动态授权模块对子进程授权。动态授权模块的进程动态权限计算子模块调用静态授权与管理模块中的可执行文件授权子模块获得该子进程加载的应用程序可执行文件的权限,调用会话角色设置子模块获得用户当前会话的角色权限,结合该子进程的父进程的权限计算出应授予子进程的权限。进程动态权限计算子模块调用强制访问控制(MAC)扩展模块中的授权权限计算接口进行具体的权限计算,授权权限计算接口将调用各个安全策略的动态权限计算方法分别由各个安全策略计算出应授予子进程的权限中对应于本策略的权限,再由授权权限计算接口将其合成最终的权限。
为了实现通用性,角色定权(RBA)的实现系统构建于操作系统提供的强制访问控制(MAC)框架之上,为了实现与安全策略的无关性,本发明对强制访问控制(MAC)进行了扩展。强制访问控制(MAC)扩展模块中设计了授权权限操作接口和授权权限计算接口,操作系统的安全策略只要实现了强制访问控制(MAC)扩展模块中的接口,其所定义的权限就可以被用来进行授权,而角色定权(RBA)实现系统本身包括配置文件都不用进行任何修改。
为了支持通用的安全策略,本发明将授权的权限定义为操作系统的强制访问控制(MAC)框架的安全标记,并使用授权权限操作接口对这些标记进行操作,操作方法有:
1)权限标记的初始化与销毁方法,各安全策略在实现时调用操作系统提供的内存分配与释放接口函数为权限标记分配和释放空间。
2)权限标记复制方法,各安全策略在实现时调用操作系统提供的内存拷贝接口函数将一个权限标记的内容复制到另一个权限标记中。
3)权限标记内外部表示形式转化方法,在操作系统内部,权限标记以二进制形式表示,为了在配置文件中存储权限标记,也为了让管理员容易理解安全标记,需要将权限标记转换为供管理员阅读的字符串这种外部表示形式,以及把字符串转换为系统的内部表示形式。安全策略在实现该方法时,根据自己对安全标记含义的理解进行转换。
授权权限计算接口在静态授权时完成权限的相加与相减,计算出所有角色的权限供动态授权模块使用;动态授权时进行动态权限计算。
强制访问控制(MAC)扩展模块中的接口只在操作系统初始化、管理员对主体的权限进行配置与管理和用户执行一个应用程序时才被使用,对系统性能的影响微乎其微。
采用本发明可以达到以下的技术效果:
1.本发明支持任意的强制访问控制框架和安全策略,从而可以方便直接地在Trusted Solaris、SELinux等安全操作系统中实现,且本发明不仅支持角色的多重继承,即一个角色可以不受限地继承多个角色的权限,还支持角色之间的约束,即可以设定角色之间必须满足的条件,本发明的这种安全配置与管理模式可以应用到任意的信息系统中,具有良好的通用性。
2.良好的“最小特权”安全性质。本发明综合考虑了用户权限划分与程序权限划分这两个正交的权限划分方式为相同用户的不同应用进程分配不同的权限,从而获得了良好的“最小特权”性质,大大提高了操作系统的安全性。而一般的授权方法只有一次授权,即对用户的静态授权,用户的所有进程的权限都完全相同,其“最小特权”特性远远比本发明差。
3.良好的“特权分离”安全性质。在传统的Unix类操作系统中,root用户的权限是至高无上的,这一点造成了大量的安全问题。本发明把root用户的权限细分为安全管理员、系统管理员和审计管理员三个特权角色,通过角色约束规定一个用户不能同时具有两个或两个以上的特权角色,从而实现了特权分离,进一步提高了安全性。
4.大大简化了安全配置与管理工作。本发明支持多角色、角色的多重继承与角色约束,引入角色的多重继承与角色约束大大简化了安全管理的复杂程度,角色的多重继承大大简化了角色的定义,角色约束包括特权分离约束和角色的时间约束,进一步增加了系统的安全性。且第一次对用户的静态授权对应的安全配置与管理是完全基于角色进行的,即把权限赋予角色,用户通过与角色关联获得相应角色的权限,这种基于角色的配置与管理方式可以大大简化配置与管理的复杂性。
5.本发明对操作系统的性能影响几乎可以忽略不计。由于本发明并不处于操作系统任务执行与调度的关键路径上,而且相对强制访问控制框架的接口方法而言,本发明扩展方法的调用频率极低,所以其对操作系统的整体性能几乎没有影响。进程动态权限计算子模块只在用户运行一个应用程序时才被调用一次,对整个操作系统的性能影响几乎可以忽略不计。
6.增强了操作系统使用的灵活性。由于本发明基于角色对用户授权,使得系统中不再存在超级用户与普通用户之分,例如任意拥有系统管理员角色的用户都可以进行系统管理工作,从而增强了使用的灵活性。
附图说明
图1为RBA实现结构图;
图2为RBA静态授权与管理模块结构图;
图3为RBA动态授权模块结构图。
具体实施方式
如图1所示,其中虚线框中的内容为RBA实现系统。RBA实现系统由RBA配置文件、内核实现模块、系统调用接口、库函数和配置与管理工具组成。
内核实现模块由静态授权与管理模块、动态授权模块和MAC扩展模块组成,这些模块工作在操作系统的强制访问控制框架MAC之上。
管理员可以使用配置与管理工具通过系统调用接口调用静态授权与管理模块的服务,对用户进行静态授权和管理,用户的静态授权信息存储在RBA配置文件中。静态授权与管理模块调用MAC扩展模块处理系统的权限相关信息,包括分配和释放权限标记的存储空间、将权限标记进行内外部转换等。在操作系统初始化时,静态授权与管理模块还调用MAC扩展模块的授权权限计算接口计算多重继承的角色的权限。
RBA最终的授权对象是进程,当父进程fork子进程并由子进程执行一个应用程序时,RBA自动调用动态授权模块对子进程授权。动态授权模块调用MAC扩展模块中的接口,利用静态授权与管理模块提供的可执行文件的权限和用户当前会话的权限,再加上父进程的权限计算子进程的权限,并将其授予子进程。
系统的权限定义为系统中所有安全策略的安全标记,MAC扩展模块利用操作系统的MAC框架与底层的安全策略通信,将上层的权限标记操作与计算请求分解为对各个安全策略安全标记的操作与计算的多个请求,并调用相关安全策略完成。
图2是RBA静态授权与管理模块的实现结构图,RBA的静态授权与管理模块由用户角色关联子模块、角色定制子模块、会话角色设置子模块、角色与权限约束子模块和可执行文件授权子模块组成。
用户角色关联子模块由用户-角色链表、用户-角色链表初始化函数和用户角色关联函数组成。用户-角色链表记录了系统中每个用户所关联的角色。安全管理员通过RBA的系统调用接口调用用户角色关联函数对用户与角色的关联信息进行配置与管理,包括为一个用户增、删、改关联的角色,用户角色关联函数同步更新内核中的用户-角色链表和用户-角色配置文件。用户-角色链表初始化函数在操作系统初始化的时候读取用户-角色配置文件,读入所有的用户ID、它们各自关联的角色ID和角色约束,建立用户-角色关联链表。
角色定制子模块由角色-权限链表、角色-权限链表初始化函数和角色配置函数构成。管理员通过RBA的系统调用接口调用角色配置函数对角色进行配置与管理,包括角色的增、删、改等。角色配置函数同步更新内核中的角色-权限链表和角色配置文件与各策略的权限配置文件。
角色-权限链表初始化函数负责在操作系统初始化的时候初始化角色-权限链表,初始化过程分三步进行:第一步初始化读取角色配置文件,读入所有角色的角色名、ID、角色描述信息、所继承的角色ID和时间约束信息,将它们填入角色授权链表。第一步初始化时不计算角色的权限,只是简单地记录角色的已有权限和其所继承的角色ID。第二步初始化读取现有系统中各安全策略的配置文件,将它们描述的角色的权限填入角色授权链表中相应的角色中。若某策略没有定义某个角色的权限,则该角色对应于该策略的权限自动被分配系统预定义的缺省角色权限。第三步初始化计算所有角色的权限,由于角色之间存在多重继承,因此初始化函数需要调用MAC扩展模块中的授权权限计算方法计算出所有角色的最终权限。
会话角色设置子模块由登录角色选择界面、会话角色设置函数和会话权限设置函数组成,用户登录时,如果通过了用户名和口令的验证,就会通过RBA系统调用接口调用会话角色设置函数设置用户当前会话的角色。会话角色设置函数首先显示登录角色选择界面,登录角色选择界面读取用户-角色链表显示当前登录用户关联的所有角色,并由用户选择一个角色作为本次会话使用的角色(又称活跃角色),接下来会话角色设置函数调用会话权限设置函数,由后者设置会话进程的权限。
角色与权限约束检查子模块由角色与权限约束检查函数组成,这些检查函数作用于用户角色关联子模块、角色定制子模块和会话角色设置子模块,规定上述三个子模块必须满足的约束。如果RBA系统调用接口对上述三个模块的调用不满足约束条件,则角色与权限约束检查函数将强制系统调用返回错误。
在用户登录时,当用户名和口令验证通过后,在通过RBA系统调用接口调用用户会话设置函数设置用户会话角色时,角色与权限约束检查函数将检查时间约束,包括该角色的总的可用时间段约束、每天的可用时间段约束和可用总时间约束,只有上述约束都符合,才允许使用该角色登录。
可执行文件授权子模块由可执行文件授权函数组成,管理员可以通过RBA系统调用接口调用可执行文件授权函数对可执行文件授权,可执行文件授权函数调用操作系统的扩展文件属性接口函数实现可执行文件授权信息的持久存储。
图3为RBA的动态授权模块结构图。当父进程fork子进程来执行一个应用程序时,子进程的权限缺省情况下与父进程一样,但是当该进程通过exec系统调用加载应用程序可执行文件映象时,RBA将自动调用动态授权模块对子进程授权。动态授权模块由进程动态权限计算子模块组成,该子模块将调用静态授权与管理模块中的可执行文件授权模块获得该子进程加载的应用程序可执行文件的权限,调用会话角色设置子模块获得用户当前会话的角色权限,再结合该子进程的父进程的权限计算出应授予子进程的权限。进程动态权限计算子模块调用MAC扩展模块中的授权权限计算接口进行具体的权限计算,授权权限计算接口将调用各个安全策略的动态权限计算方法分别由各个安全策略计算出应授予子进程的权限中对应于本策略的权限,再由授权权限计算接口将其合成最终的权限。
本发明已经应用于银河麒麟安全操作系统中,大大提高安全性的同时具有很低的安全配置与管理复杂度。银河麒麟的安全性符合公安部安全行业标准GA/T388-2002“计算机信息系统安全等级保护-操作系统技术”第三级安全标记保护级的要求,第三方安全攻击测试表明,银河麒麟操作系统的实用抗攻击能力大大超过Linux、FreeBSD等操作系统。同时银河麒麟的安全配置与管理的复杂度极低,系统预设的角色已经能满足一般的需求,如果需要定义新的角色,只要继承一个已有角色并进行适当的权限调整即可。
Claims (9)
1.一种角色定权方法,其特征在于在操作系统的强制访问控制(MAC)框架之上构建一个角色定权(RBA),实现系统对采用强制访问控制(MAC)的安全操作系统中的主体进行授权和配置管理,角色定权(RBA)实现系统由内核实现模块、角色定权(RBA)配置文件、系统调用接口、库函数和配置与管理工具组成,由内核实现模块采用静态与动态“两级授权”方法实现“最小特权”,通过基于角色的多重继承与多种约束实现“特权分离”,且通过对强制访问控制(MAC)进行扩展以实现与安全策略的无关性;内核实现模块由静态授权与管理模块、动态授权模块和强制访问控制(MAC)扩展模块组成,这些模块构建在操作系统提供的强制访问控制(MAC)框架之上:
1.1.静态授权与管理模块由用户角色关联子模块、角色定制子模块、可执行文件授权子模块、会话角色设置子模块、角色与权限约束子模块组成;在对用户进行安全配置与管理时由静态授权与管理模块完成“两级授权”中的第一次授权-静态授权,由静态授权与管理模块静态地确定用户的权限,完全基于角色进行,把权限赋予角色,用户通过与角色关联获得相应角色的权限,方法是管理员使用配置与管理工具通过系统调用接口调用静态授权与管理模块的服务:在操作系统初始化时,静态授权与管理模块调用强制访问控制(MAC)扩展模块计算多重继承的角色的权限,静态授权与管理模块调用强制访问控制(MAC)扩展模块处理系统的权限相关信息;
1.2.动态授权模块由进程动态权限计算子模块组成;在用户执行应用程序时由动态授权模块完成“两级授权”中的第二次授权-动态授权,此时综合考虑用户、应用程序进程的父进程以及应用程序可执行文件这三者的权限,用户的权限为静态授权与管理模块为用户会话设置的角色对应的权限,该角色的权限在系统初始化时已经计算得到;应用程序进程的父进程的权限可以直接得到,而应用程序可执行文件的权限则由管理员通过静态授权与管理模块授予;动态授权模块根据用户的权限、父进程的权限以及应用程序可执行文件的权限动态计算得到一个最适合的权限赋予应用程序进程,方法是当父进程派生子进程并由子进程执行一个应用程序时,由动态授权模块对子进程授权,动态授权模块调用强制访问控制(MAC)扩展模块中的接口,利用静态授权与管理模块提供的可执行文件的权限和用户当前会话的权限,再加上父进程的权限计算子进程的权限,并将其授予子进程;
1.3.强制访问控制(MAC)扩展模块中设计了两个强制访问控制接口-授权权限操作接口和授权权限计算接口:
1.3.1.为了支持通用的安全策略,将授权的权限定义为操作系统的强制访问控制(MAC)框架的安全标记,强制访问控制(MAC)扩展模块利用操作系统的强制访问控制(MAC)框架与底层的安全策略通信,将上层的权限标记操作与计算请求分解为对各个安全策略安全标记的操作与计算的多个请求,并调用相关安全策略完成,方法是使用授权权限操作接口对这些标记进行操作,操作方法有:
1.3.1.1权限标记的初始化与销毁方法,各安全策略在实现时调用操作系统提供的内存分配与释放接口函数为权限标记分配和释放空间;
1.3.1.2权限标记复制方法,各安全策略在实现时调用操作系统提供的内存拷贝接口函数将一个权限标记的内容复制到另一个权限标记中;
1.3.1.3权限标记内外部表示形式转化方法,在操作系统内部,权限标记以二进制形式表示,为了在配置文件中存储权限标记,也为了让管理员容易理解安全标记,将权限标记转换为供管理员阅读的字符串这种外部表示形式,以及把字符串转换为系统的内部表示形式;安全策略在实现该方法时,根据自己对安全标记含义的理解进行转换;
1.3.2.授权权限计算接口在静态授权时完成权限的相加与相减,计算出所有角色的权限供动态授权模块使用;在动态授权时进行动态权限计算。
2.如权利要求1所述的角色定权方法,其特征在于所述角色定权(RBA)配置文件仅对内核实现模块可见,记录了所有的配置与管理信息,包括所有角色信息、用户与角色的关联信息及所有的约束信息,共有三类:
2.1.角色配置文件,记录系统中所有角色的信息,每个记录表示一个角色,每个角色由角色名、角色ID、角色权限、角色描述、角色间的继承关系和角色约束信息域组成;
2.2.用户-角色配置文件,记录系统中所有用户与角色的关联关系,每个记录代表一个用户,每个用户由用户名、用户ID、用户关联的多个角色的信息,每个角色信息由角色ID、角色的时间约束组成;
2.3.各策略的权限配置文件,为了支持策略的动态加入与退出,为每个策略创建一个与其策略名同名的配置文件,记录该策略的权限配置信息,由于安全策略只与角色关联,所以安全策略配置文件记录了系统中的角色对应的安全策略权限,一个记录表示一个角色,由角色ID、策略描述和策略权限三个信息域组成。
3.如权利要求1所述的角色定权方法,其特征在于所述系统调用接口是内核实现模块与操作系统核外应用程序和配置与管理工具的通信接口,用来请求静态授权与管理模块的服务,这些服务包括:
3.1.用户角色关联子模块的系统服务,包括为用户增加和删除一个关联的角色、获取和设置用户关联的角色、获取和设置用户与角色的时间约束;
3.2.角色定制子模块的系统服务,包括新增和删除一个角色,获得和设置角色的属性,所述属性为ID、名字、权限、描述、约束,获取和设置角色的时间约束;
3.3.可执行文件授权模块的系统服务,包括获取和设置可执行文件的权限;
3.4.会话角色设置模块的系统服务,包括获取和设置当前用户会话对应的角色。
4.如权利要求1所述的角色定权方法,其特征在于所述用户角色关联子模块由用户角色关联函数、用户-角色链表初始化函数、用户-角色链表组成,它建立用户与角色的关联或解除用户与角色的关联;用户-角色链表记录了系统中每个用户所关联的角色;安全管理员通过角色定权(RBA)的系统调用接口调用用户角色关联函数对用户与角色的关联信息进行配置与管理,包括为一个用户增、删、改关联的角色,用户角色关联函数同步更新内核中的用户-角色链表和用户-角色配置文件;用户-角色链表初始化函数在操作系统初始化的时候读取用户-角色配置文件,读入所有的用户ID、它们各自关联的角色ID和角色约束,建立用户-角色关联链表。
5.如权利要求1所述的角色定权方法,其特征在于所述角色定制子模块由角色配置函数、角色-权限链表初始化函数、角色-权限链表组成,管理员通过角色定权(RBA)的系统调用接口调用角色配置函数对角色进行配置与管理,包括定义一个新角色、删除已有角色及获得和设置已有角色的权限,并在初始化时计算所有角色的权限;角色配置函数同步更新内核中的角色-权限链表和角色配置文件与各策略的权限配置文件;定义一个新角色时,使用多重继承的方法来确定该角色的权限,通过继承多个已有角色的权限来定义新角色的权限;继承分正继承与负继承两种,正继承一个角色是指把该角色的权限加入到已有的权限中,而负继承一个角色是指从已有权限中减去该角色的权限;任何角色初始时都缺省拥有缺省角色的权限;角色定制子模块根据用户通过系统调用接口传来的请求将相应的角色信息写到角色配置文件中或从角色配置文件中删除相应的角色信息;在操作系统初始化时,角色定制子模块根据角色的继承关系调用强制访问控制(MAC)扩展模块中的授权权限计算接口计算出所有角色的权限,供动态授权模块使用;计算方法是:如果要计算角色A的权限,首先按顺序计算出角色A继承的所有角色的权限,对于角色A继承的某个角色B,如果B继承了其它角色,则需要先计算出B的权限;计算出A继承的所有角色的权限后,将A的权限初始化为系统缺省角色权限,再逐个分析A所继承的所有角色并更新A的权限,如果A正继承某角色B,则A的权限被更新为A+B,如果A负继承某角色B的权限,则A的权限被更新为A-B;角色-权限链表初始化函数负责在操作系统初始化的时候初始化角色-权限链表,初始化过程分三步进行:第一步读取角色配置文件,读入所有角色的角色名、ID、角色描述信息、所继承的角色ID和时间约束信息,将它们填入角色授权链表,第一步不计算角色的权限,只是简单地记录角色的已有权限和其所继承的角色ID;第二步读取现有系统中各安全策略的配置文件,将它们描述的角色的权限填入角色授权链表中相应的角色中,若某策略没有定义角色的权限,则该角色对应于该策略的权限自动被分配系统预定义的缺省角色权限;第三步计算所有角色的权限,由于角色之间存在多重继承,因此角色-权限链表初始化函数调用强制访问控制(MAC)扩展模块中的授权权限计算接口计算出所有角色的最终权限。
6.如权利要求1所述的角色定权方法,其特征在于所述静态授权与管理模块中的可执行文件授权子模块由可执行文件授权函数组成,它为操作系统中应用程序的可执行文件指定权限,供动态授权模块使用;可执行文件的权限是静态权限,如果操作系统支持扩展文件属性,则可执行文件授权子模块调用扩展文件属性接口函数将可执行文件的静态权限写到磁盘上;如果操作系统不支持扩展文件属性,则可执行文件授权子模块将管理员通过角色定权(RBA)系统调用为可执行文件授予的静态权限记录在磁盘上的另一个配置文件中,并对这个文件进行安全保护。
7.如权利要求1所述的角色定权方法,其特征在于所述会话角色设置子模块由登录角色选择界面、会话角色设置函数、会话权限设置函数组成,它的功能是为用户的一次会话设定一个合适的角色;由于一个用户可能关联多个角色,用户登录时,如果通过了用户名和口令的验证,就会通过角色定权(RBA)系统调用接口调用会话角色设置函数设置用户当前会话的角色;会话角色设置函数首先显示登录角色选择界面,登录角色选择界面读取用户-角色链表显示当前登录用户关联的所有角色,并由用户选择一个角色作为本次会话使用的角色-活跃角色,接着会话角色设置函数调用会话权限设置函数,由会话权限设置函数设置会话进程的权限。
8.如权利要求1所述的角色定权方法,其特征在于所述角色与权限约束子模块由角色与权限约束检查函数组成,其功能是施加多重约束,保证系统的安全性,该角色与权限约束子模块在管理员通过角色定权(RBA)系统调用请求服务时检查这些服务请求是否满足多重安全约束,只有满足了安全约束的服务请求才能够被其它静态授权与管理模块响应;角色与权限约束检查函数作用于用户角色关联子模块、角色定制子模块和会话角色设置子模块,规定上述三个子模块必须满足的约束;如果角色定权(RBA)系统调用接口对上述三个模块的调用不满足约束条件,则角色与权限约束检查函数将强制系统调用返回错误;安全约束有:
8.1.该角色与权限约束子模块定义了五个系统角色,所述五个系统角色为系统缺省角色、安全管理员角色、系统管理员角色、审计管理员角色和一个隐藏角色,所述隐藏角色为系统的守护程序的初始角色;为了保证系统的安全性与可用性,这些角色不能被修改和删除,该约束施加于角色定制子模块;
8.2.所有的安全配置与管理工作,包括角色管理工作、用户-角色管理工作和应用程序文件设置工作,都只能由使用安全管理员角色登录的用户完成,以任何其它角色登录的用户都没有权限进行这些管理工作,该约束施加于用户角色关联子模块、角色定制子模块、可执行文件授权子模块和会话角色设置子模块;
8.3.为了实现“特权分离”,该角色与权限约束子模块规定任一管理员角色所特有的权限不能被分配给其它的管理员角色和普通的用户角色,这一点通过与这些特有的权限绑定所有者ID,或者在配置与管理的系统调用中限制该权限只能被赋予特定的角色,或者在安全策略中限制该权限只能被赋予特定的角色来实现;该约束施加于角色定制子模块;“特权分离”的第二个要求是,安全管理员角色、系统管理员角色、审计管理员角色这三个管理员角色中的任意两个都不能同时被赋予同一个用户;由于普通用户角色不具有管理员角色所特有的权限,所以这个约束可以防止一个用户具有两个或两个以上的管理员特权;角色定权(RBA)通过角色间的约束实现了这个要求,该约束施加于用户角色关联子模块;
8.4.除了上述“特权分离”的角色约束外,该角色与权限约束子模块还规定了角色的时间约束,在用户登录时,当用户名和口令验证通过后,在通过系统调用接口调用用户会话设置函数设置用户会话角色时,角色与权限约束检查函数将检查时间约束,包括该角色的总的可用时间段约束、每天的可用时间段约束和可用总时间约束,只有这些约束都符合,才允许使用该角色登录,包括三类时间约束,都施加于会话角色设置子模块:
8.4.1.角色的有效时间长度约束,规定了该角色可以使用的时间范围;
8.4.2.角色的有效激活时间长度约束,规定了某用户可以使用该角色的总时间长度;
8.4.3.允许使用该角色登录的时间段约束,规定了允许用户使用该角色登录的时间段。
9.如权利要求1所述的角色定权方法,其特征在于所述动态授权模块进行二次动态授权的方法是当父进程派生子进程来执行一个应用程序时,子进程的权限在缺省情况下与父进程一样;当子进程通过执行系统调用加载应用程序可执行文件映象时,则通过动态授权模块对子进程授权;动态授权模块的进程动态权限计算子模块调用静态授权与管理模块中的可执行文件授权子模块获得该子进程加载的应用程序可执行文件的权限,调用会话角色设置子模块获得用户当前会话的角色权限,结合该子进程的父进程的权限计算出应授予子进程的权限;进程动态权限计算子模块调用强制访问控制(MAC)扩展模块中的授权权限计算接口进行具体的权限计算,授权权限计算接口将调用各个安全策略的动态权限计算方法分别由各个安全策略计算出应授予子进程的权限中对应于本策略的权限,再由授权权限计算接口将其合成最终的权限。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410046919 CN1773413B (zh) | 2004-11-10 | 2004-11-10 | 角色定权方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410046919 CN1773413B (zh) | 2004-11-10 | 2004-11-10 | 角色定权方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1773413A CN1773413A (zh) | 2006-05-17 |
CN1773413B true CN1773413B (zh) | 2010-04-14 |
Family
ID=36760420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200410046919 Expired - Fee Related CN1773413B (zh) | 2004-11-10 | 2004-11-10 | 角色定权方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1773413B (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101577622B (zh) * | 2009-06-24 | 2012-07-04 | 贵阳易特软件有限公司 | 一种层次分区共享组访问控制的方法 |
CN102592076B (zh) * | 2011-12-20 | 2015-01-07 | 北京神州绿盟信息安全科技股份有限公司 | 一种数据防篡改的方法及装置 |
US20130263237A1 (en) * | 2012-03-30 | 2013-10-03 | Ebay Inc. | User authentication and authorization using personas |
US9230089B2 (en) | 2012-07-16 | 2016-01-05 | Ebay Inc. | User device security manager |
CN102904892A (zh) * | 2012-10-17 | 2013-01-30 | 浪潮(北京)电子信息产业有限公司 | 一种云计算数据中心操作系统的安全模型及策略 |
CN103188269B (zh) * | 2013-04-08 | 2016-12-28 | 汉柏科技有限公司 | 云平台中用户访问权限的控制方法 |
CN103440176B (zh) * | 2013-09-13 | 2016-08-31 | 北京经纬恒润科技有限公司 | 一种实时操作系统中内存的保护方法及装置 |
CN104133726A (zh) * | 2014-08-13 | 2014-11-05 | 浪潮电子信息产业股份有限公司 | 一种进程上下文强制访问控制方法 |
CN105989276B (zh) * | 2015-02-12 | 2019-01-15 | 阿里巴巴集团控股有限公司 | Rbac权限体系中的角色优化方法和装置 |
CN106230818A (zh) * | 2016-08-01 | 2016-12-14 | 浪潮(苏州)金融技术服务有限公司 | 一种信息管理系统的资源授权方法 |
CN106650500B (zh) * | 2016-12-28 | 2020-04-14 | 广州杰赛科技股份有限公司 | 用户权限修改方法和系统 |
CN107133516B (zh) * | 2017-04-24 | 2020-10-30 | 深信服科技股份有限公司 | 一种权限控制方法和系统 |
CN107103230A (zh) * | 2017-04-24 | 2017-08-29 | 深信服科技股份有限公司 | 一种权限控制方法和系统 |
CN107071040B (zh) * | 2017-04-24 | 2020-05-01 | 深信服科技股份有限公司 | 一种基于文件描述符和会话的权限控制方法和系统 |
CN107018140B (zh) * | 2017-04-24 | 2021-06-04 | 深信服科技股份有限公司 | 一种权限控制方法和系统 |
CN107094140B (zh) * | 2017-04-24 | 2021-01-19 | 深信服科技股份有限公司 | 一种基于会话的权限控制方法和系统 |
CN107105036B (zh) * | 2017-04-24 | 2020-10-23 | 深信服科技股份有限公司 | 一种用于服务器的活动溯源方法和系统 |
CN107292198A (zh) * | 2017-07-09 | 2017-10-24 | 成都牵牛草信息技术有限公司 | 快捷功能设置方法 |
CN107508800A (zh) * | 2017-08-03 | 2017-12-22 | 成都牵牛草信息技术有限公司 | 系统中设置邮箱内容和即时通讯内容的操作时间段的方法 |
CN108038367B (zh) * | 2017-12-07 | 2021-02-26 | 上海摩软通讯技术有限公司 | 用户设备的权限管理的控制方法及系统 |
CN110598412B (zh) * | 2018-06-12 | 2021-12-14 | 杨力祥 | 将权力信息隔离并依托它进行权力检查的方法及计算装置 |
CN110826088A (zh) * | 2019-11-13 | 2020-02-21 | 国网浙江省电力有限公司宁波供电公司 | 一种t-rbacg的访问控制模型构建方法 |
CN111064718B (zh) * | 2019-12-09 | 2022-08-02 | 国网河北省电力有限公司信息通信分公司 | 一种基于用户上下文及策略的动态授权方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6088679A (en) * | 1997-12-01 | 2000-07-11 | The United States Of America As Represented By The Secretary Of Commerce | Workflow management employing role-based access control |
WO2004074993A2 (en) * | 2003-02-14 | 2004-09-02 | Bea Systems Inc. | System and method for hierarchical role-based entitlements |
CN1537262A (zh) * | 2001-05-24 | 2004-10-13 | �Ҵ���˾ | 带有活动角色的基于角色的访问控制模型的方法和系统 |
-
2004
- 2004-11-10 CN CN 200410046919 patent/CN1773413B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6088679A (en) * | 1997-12-01 | 2000-07-11 | The United States Of America As Represented By The Secretary Of Commerce | Workflow management employing role-based access control |
CN1537262A (zh) * | 2001-05-24 | 2004-10-13 | �Ҵ���˾ | 带有活动角色的基于角色的访问控制模型的方法和系统 |
WO2004074993A2 (en) * | 2003-02-14 | 2004-09-02 | Bea Systems Inc. | System and method for hierarchical role-based entitlements |
Also Published As
Publication number | Publication date |
---|---|
CN1773413A (zh) | 2006-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1773413B (zh) | 角色定权方法 | |
CN105046146B (zh) | 一种安卓系统的资源访问方法 | |
US8181243B2 (en) | Computer readable medium for resolving permission for role activation operators | |
Morin et al. | Security-driven model-based dynamic adaptation | |
US20060193467A1 (en) | Access control in a computer system | |
TW200830141A (en) | Analyzing access control configurations | |
CN102902911A (zh) | 一种在Java虚拟机中安全运行第三方代码的方法 | |
WO2010028583A1 (zh) | 基于权限组件对工作流组件中的权限管理的方法及装置 | |
CN104021335A (zh) | 基于可扩展密码服务框架的密码服务方法 | |
Grummt et al. | Fine-grained access control for EPC information services | |
KR100343069B1 (ko) | 다중 등급 보안 방식에 의한 강제적 객체접근 제어 방법및 이를 프로그램화하여 수록한 컴퓨터로 읽을 수 있는기록매체 | |
Montanari et al. | Flexible security policies for mobile agent systems | |
Giuri | Role-based access control on the Web using Java | |
Ulltveit-Moe et al. | Mobile security with location-aware role-based access control | |
Xu et al. | Towards session-aware RBAC administration and enforcement with XACML | |
Hung et al. | Activity-based access control model to hospital information | |
Fernandez et al. | Securing design patterns for distributed systems | |
Benantar et al. | Use of DSOM before/after metaclass for enabling object access control | |
Luo et al. | Based on RBAC Security Design of University Management System | |
Anderson | Privacy Policy Languages: XACML vs EPAL | |
Lv et al. | A multi-level cross-domain access control model based on role mapping | |
Lin et al. | Workflow and role based access control model for cloud manufacturing | |
Hale et al. | A ticket-based access control architecture for object systems | |
Chen et al. | On designing access control aspects for web applications | |
Knecht et al. | Implementing SAMOS in Mandala |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100414 Termination date: 20111110 |