您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 国内外标准规范 > 访问控制技术课程学生设计指导书
访问控制技术课程设计学生指导书计算机学院2012年11月1课设目的访问控制技术课程设计是学完了访问控制技术课程之后,进行的一个重要的实践性教学环节。学生通过课程设计能获得综合运用过去所学过的全部课程知识点,培养学生将访问控制的各种技术和方法应用于实际进行实施的能力,为以后做好毕业设计、走上工作岗位进行一次综合训练和准备。它要求学生全面地综合运用本课程及有关先修课程的理论和实践知识,将访问控制基本原理和方法结合实际充分发挥自主创新能力进行各有特色的设计。其目的是:1.通过课程设计大型作业,使学生进一步熟悉访问控制的概念和基本原理;2.培养学生将访问控制的各种技术和方法应用于实际进行实施的能力;3.学生运用访问控制基本原理和方法结合实际充分发挥自主创新能力进行各有特色的设计2课设内容和要求实验1:自主访问控制实验。要求设计若干人机对话界面,通过这些界面定义和配置主体、客体以及权限,然后对主体进行自主授权、传递授权的操作,并能撤销授出的权限。修改主体对客体的访问权限后,观察系统访问成功和不成功的执行情况是否符合安全策略。实验2:多级安全访问控制实验。要求求设计若干人机对话界面,通过这些界面定义、配置和修改主体、客体的安全标记以及访问控制策略,观察系统访问成功和不成功的执行情况是否符合预定的安全策略。实验3:RBAC1访问控制实验。要求设计若干人机对话界面,通过这些界面定义和配置角色、角色层次、用户-角色(授权与回收)、角色-权限(有继承关系不用重定义)多对多关系,然后对主体的访问权限进行控制实验;进一步,修改角色、角色层次、用户-角色、角色-权限多对多关系,重复先前的实验,然后比较访问控制结果。学生可在上述实验1和实验2任选一个,实验3必做,作为本次课程设计题目,具体设计内容如下:一、自主访问控制(1)基本要求对主体、客体、权限进行定义和配置对主体进行自主授权对主体的访问权限进行控制实验对主体进行传递授权的操作,通过实验观察系统的执行情况对访问成功和不成功的两种情形均给出结果(2)原理与方法自主访问控制定义自主访问控制是指对某个客体具有拥有权(或控制权)的主体能够将对该客体的一种访问权或多种访问权自主地授予其它主体,并在随后的任何时刻将这些权限回收。方法自主访问控制的矩阵模型:系统状态用一个有序三元组表示Q=(S,O,A),其中:S—主体的集合,O—客体的集合,A—访问矩阵,行对应于主体,列对应客体。每个主体都附加一个该主体可访问的客体的明细表,每个客体附加一个它可以被访问的主体的明细表。访问控制矩阵行列分别对应主体访问客体的能力表和客体关于主体的授权表。①集中式管理一个主体si在创建某个客体oj后,该主体就获得了对这一客体的c权和其它所有可能权限。c权意味着可以将它对oj所有其它(除c权以外)的访问权限授予系统中任何一个主休,也可以撤销系统中任何主体对oj的其它访问权限。其它主体因为对oj不具有c权,因此即使他们对oj具有某些访问权限,但它们也无权将这些权限转授给别的主体、或撤销别的主体对oj的任何访问权限——在这种管理模式下,对于任一客体oj,哪些主体可以对其进行访问,可以进行什么样的访问,完全由oj的拥有者决定。②分散式管理在分散式管理模式下,客体的拥有者不但可将对该客体的访问权授予其它客体,而且可同时授予他们对该客体相应访问权的控制权(或相应访问权的授予权)。允许传递授权;当一个主体撤销它所授予的对某个客体的某种访问权限时,必须将由于这一授权而引起的所有授权都予以撤销。③受限的分散式管理受限的分散式管理模式,是将系统中对客体的访问权限限制在一定的主体范围内,要求根据客体拥有者的意愿进行。(3)方案设计可供选择的实现方法①主体访问能力表+集中式管理方式②主体访问能力表+分散式管理方式③主体访问能力表+受限的分散式管理方式或者①客体关于主体的授权表+集中式管理方式②客体关于主体的授权表管理方式③客体关于主体的授权表+受限的分散式管理方式或者①访问控制矩阵+集中式管理方式②访问控制矩阵+分散式管理方式③访问控制矩阵+受限的分散式管理方式相关数据结构参考(可增加或修改)主体表:SName:主体名称(主键)Password:登录密码Info:主体信息与描述客体表:OName:客体名称(主键)Info:客体信息与描述能力表:SName:主体名称(主键)OName:客体名称(主键)Right:主体对客体的权利Grantor:该权利的授权者,若主体为客体的创建者则授权者为主体本身相关数据操作参考(可增加或修改)添加新主体添加新客体登录授权权限回收删除客体读客体写客体界面实现参考实验结果通过人机对话界面定义和配置主体、客体以及权限,然后对主体请求访问客体进行自主访问控制。至少进行如下实验:(1)进行自主授权、传递授权的操作(2)撤销授出的权限(3)修改主体对客体的访问权限就上述几种情况,设计3-5种具体的访问请求,观察你的访问控制模块对这些访问请求如何做出回应,分别对系统访问成功和不成功的执行情况,给出是否符合预设的访问控制策略的结论。注意自主访问控制模型实现过程中,要防止不适当的授权循环和正确重复授权,必要时给出警告信息。如:①授权回收时若A授权P给B,B授权P给C,若A回收对B的P授权且没有其他主体将P授权给B,B也需要将对C的P授权回收。实现时如果用递归,效率会很低,可使用迭代和其它优化方法,避免递归调用。②递归循环是指若A授权P给B,B授权P给C,而C又回授权P给B的话,B和C就形成了循环授权,这时需要区别,避免这种情况发生。③重复授权是指A和B均将P授权给C,那么回收权限时A和B分别只能回收自己授出去的权限P。另一种情况,A先将P授权给C,后来某一时刻又将P授权给C,对这种授权可视为非法,拒绝执行。二、基于角色访问控制(1)基本要求对主体、客体、权限进行定义和配置对角色及角色的层次关系进行定义对角色的权限进行定义(有继承关系的就不用重新定义)给出用户-角色多对多关系的配置对用户的角色信息进行修改,通过访问控制实验,体现不同层次的角色访问权限的差别对上述实验情况下访问成功和不成功的两种情形均给出结果(2)原理与方法基于角色的访问控制定义在一个组织机构里系统为不同的工作岗位创造对应的角色,对每一个角色分配不同的操作权限,根据用户在组织机构中的职责或任务为其指派相应的角色,用户通过所分配的角色获得相应的权限,实现对信息资源的访问,即用户—角色—权限模型。RBAC0反应了RBAC的基本需求;U:表示用户集;R:表示角色集;P:表示权限集;S:表示会话集。PAP×R,是权限到角色的多对多的指派UAU×R,是用户到角色的多对多的指派user:S→U,会话和用户的单一映射,user(si)表示创建会话si的用户;roles:S→2R,会话和角色子集的映射,roles(si)表示会话si对应的角色集合;roles(si){r|(user(si),r)∈UA}会话si具有的权限集RBAC1在RBAC0的基础上加上了角色层次,反应了多级安全需求;U、R、P、S、PA、UA和user:S→U的定义与RBAC0相同;RHR×R,是集合R上的偏序关系,称为角色层次关系;roles:S→2R,会话和角色子集的映射函数,但和RBAC0略有不同roles(si){r'|r'≤r且(user(si),r)∈UA}即:会话si对应的角色集可以由建立该会话的用户所属的任何角色或低级角色组成会话si所具有的权限特点:一种中性的策略,具有灵活性以适应变化的需求,可用来描述自主访问控制和强制访问控制。支持最小特权原则,责任分离原则,数据抽象原则。(3)方案设计可供选择的实现方法先构建实现RBAC0,再增加RH角色层次图,完成RBAC1用模型。最后设计一个机构安全策略,通过UA、PA和RH实现其实例。相关数据结构参考(可增加或修改)用户表User:SName:用户名,Password:密码,Info:用户信息)(}),(|{iisrolesrsPArppP)(})',(|rr'{iisrolesrsPArppP且角色表Role:RName:角色名,Info:角色信息权限表Permission:PName:权限名,Info:权限信息URASName:用户名RName:角色名PRARName:角色名PName:权限名RRARNameFather:上级角色名RNameChild:下级角色名以及UA、PA和RH角色层次图可采用树结构,用户角色指派和角色权限指派用链表实现。相关数据操作参考(可增加或修改)添加新角色添加新权限查询用户角色查询用户权限用户角色指派用户角色撤销角色权限指派角色权限撤销角色层次维护-添加下级角色角色层次维护-删除上级角色角色层次维护-删除下级角色界面实现参考实验结果通过人机对话界面定义和配置主体、客体、权限,进而定义角色及角色的层次关系,完成用户角色指派、角色权限指派,然后对主体请求访问客体进行RBAC访问控制。至少进行如下实验:(1)将用户指派到一个角色r,查看该用户获得的权限情况(2)R1、R2互斥,UA={(a,R1),(a,R2),(b,R3),(c,R4),(d,R5)}PA={(P1,R1),(P2,R2),(P3,R3),(P4,R4),(P5,R5),(P6,R6)}。用户a建立sessionS,Ps={p1,p3,p4,p6}或{p2,p5},是否提供选择方式决定R1或R2?(3)对一给定的角色层次,检查其中一角色被指派的权限,通过层次关系继承的权限,以及被指派和继承的权限是否正确?(4)角色层次修改以及自动环路检测能力(5)如u为某角色R的成员,如果角色层次发生变化(增加角色或删除角色),则u建立sessionS,检查Ps=?(6)安全员、管理员、用户、角色以及权限设置与处理是否合乎规范?然后,设计3-5种具体的访问请求,观察你的访问控制模块对这些访问请求如何做出回应,分别对系统访问成功和不成功的执行情况,给出是否符合预设的访问控制策略的结论。注意实现RBAC模型,基本的功能须完成用户角色指派和角色权限指派,其次是角色权限的强回收及角色成员资格的强回收。算法和代码实现方面可进行优化,如不用递归,可有效减短查询时间。特别对角色层次的修改,要防止上级角色被再次添加进角色层次图中成为下级角色,构成一个循环回路。因此,须编程实现角色层次修改以及自动环路检测。3主要参考材料1.访问控制概论洪帆主编华中科技大学出版社2010年8月第1版2.ROLE-BASEDACCESSSCONTROL3.TheARBAC97ModelforRole-BasedAdministrationofRoles4.SecureComputerSystem:UnifiedExpositionAndMulticsInterpretation
本文标题:访问控制技术课程学生设计指导书
链接地址:https://www.777doc.com/doc-2066277 .html