上海电力学院信息安全概论课程实验报告题目:多级访问控制实验姓名:张皓翔学号:20142201院系:计算机科学与技术学院专业年级:信息安全系2014级2015年11月8日1、PMI试验1)证书申请实验【实验目的】属性集(如角色、访问权限或组成员等)和一些与持有者相关的数据结构。由于这些属性集能够定义系统中用户的权限,因此可以把作为一种授权机制的属性证书看作是权限信息的载体。该实验的目的让用户对属性证书对资源权限的申请有一个感性的认识。【实验预备知识点】1、什么是PMI?PMI,即特权管理基础设施,是属性权威、属性证书、属性证书库等部件的集合体。它以PKI体系为基础,向用户和应用程序提供授权服务管理。2、属性证书使用的先决条件是什么?PMI是最新发展起来的一种新的信息安全基础设施,它建立在PKI身份验证基础之上,即用数字证书确定用户的真实身份,然后在用户真实身份的基础上用证书的形式绑定用户拥有的属性。【实验步骤】填写申请证书的信息,权限、资源、证书名、功能描述等,单击证书申请按钮进行证书申请。右侧系统日志窗口中将显示出现的正常、警告或者错误信息,若证书申请不成功,试根据该日志信息分析原因。图1-1证书申请页面【实验思考题】1、在本实验环境中,为什么要使用HTTPS连接?PMI申请流程与PKI证书申请过程有什么联系与区别?建立在HTTPS双向认证的基础之上,通过SSL的握手过程,让系统和用户都明了和确认了彼此的身份。PKI证书申请过程和PMI申请流程不太一样,身份证书的申请涉及到需要用户填写很多相关的用户身份信息,以及该证书的使用目的等等,而属性证书的申请主要是用户提出对某一项资源申请拥有某一项权限。2在本实验环境中,属性证书为什么分为长期证书与短期证书它们除了有效期外还有什么不同?短期证书和长期证书在属性证书的extension扩展域也是不同的,当属性证书中不包含noRevAvail扩展时,那么属性证书颁发者隐含地表示了支持证书撤销状态检查,并必须为属性证书验证者提供相应得检查属性证书撤销状态的方法。对于短期证书来说,那么就要包含noRevAvail扩展,即使用从不撤销方案。2)证书管理实验【实验目的】在PMI系统中,对用户证书申请的管理是通过RA实现的,而对属性证书的签发、撤销,以及权限的变更则是通过AA来完成的。本实验通过属性证书的三种存在状态以及相应拥有的权限的操作帮助用户理解RA、AA的功能和联系。【实验预备知识点】1、AA的职责有哪些?属性证书权威中心AA是一个属性证书的颁发机构。它负责为合法用户生成属性证书,为管理中心生成策略证书,并将它们发布到数据中心。2、为什么要进行属性证书撤销?属性证书有效期类型和撤销方式之间有什么联系?属性证书与身份证书在某些方面存在着很大相似性,它同样必须拥有撤销证书的功能。属性证书的撤销是针对那些长期证书,就是有效期比证书撤销列表的发布时间要长的证书,对应的这些证书在其证书扩展域中一定不包含noRevAvail扩展项,而对于短期证书而言,其证书扩展域中就要包含noRevAvail扩展项,从而这张证书不需要撤销支持。【实验步骤】1、在查找信息框中,可以分别请求列出属于该用户的未签发的、已签发的和已撤销的属性证书。2、在属性证书列表中,对于列出的未签发的属性证书,双击证书名,可以打开“管理证书”面板,模拟RA撤销该属性证书的申请或者向AA提交签发证书的请求过程;对于列出的AA已签发的属性证书,单击证书名可以看到该属性证书的证书类型、属性证书签发者AA的指纹信息、证书的有效期、证书序列号以及该证书对应用户的权限信息等,此外,用户还可以对已经签发的属性证书进行证书撤销请求。如果是有效期为一天的短期证书,这里不允许撤销;对于长期证书,可以使用以下三种作为证书的撤销原因:关系变更,废弃证书,收回权限。3、右侧系统日志窗口中将显示出现的正常、警告或者错误信息,若操作不成功,试根据该日信息分析原因。【实验思考题】1、为什么实验系统中短期证书不可以撤销?撤销的属性证书可以激活吗?因为属性证书的有效期一般都比较短,而短期证书的有效期比属性证书撤销列表的发布时间还要短,所以不需要进行撤销。2、被撤销的属性证书还可以再激活吗一般被撤销的属性证书不会选择激活的方式,而是重新申请一张新的属性证书。证书应用实验【实验目的】通过本实验,学生基本掌握属性证书的使用流程,掌握在用户身份信息的基础上,系统策略决策点和策略执行点对用户访问请求的判决和执行过程,特别是系统是如何验证属性证书的。【实验预备知识点】1、获得属性证书的方式有哪些?推模式与拉模式。【实验步骤】1、本实验中,学生可以了解并验证自己的身份信息以及签发身份证书的CA的相关信息。2、单击查看按钮可以了解已签发过的属性证书的个数和每个属性证书的属性概要介绍。将鼠标移至该证书名称上就可以看到。如果用户还没有进行证书申请实验,或者还没有向AA请求签发属性证书,系统会提示先进行证书申请和管理实验。3、单击使用证书按钮,确定使用该属性证书。4、单击公司职员信息表,或者其他两个资源信息表,向AEF发出信息访问请求,5、此时右侧系统日志中显示相应的AEF和ADF交互信息,包括验证过程,最后系统会提示判决结果。如果允许访问,则反馈对应于该用户权限范围内的资源表信息,反之警告用户拒绝访问。6、对于那些可以修改的资源,双击显示该资源的具体信息,在具体信息的下方就可以进行修改,完成后点击确定按钮保存即可。7、可以通过点击重选证书按钮选择不同的属性证书进行对比验证。【实验思考题】1、多级安全访问控制系统中,获取属性证书的两种方式之间有什么区别?推模式,它是由客户提供属性证书。这种模式意味着客户需要存储和处理自己的所有属性证书,一般放在安全存储器内。另一种方法是―拉的模式,即接收者向服务器请求合适的属性证书。这需要存在一个新的服务器来存储所有的属性证书。2、对访问请求的具体判决流程是怎样的?服务器收到访问请求首先会送到PEP,即策略执行点,然后PEP将请求发给PDP(策略决策点),由策略决策点进行相关的验证,验证完毕将结果允许访问或者拒绝访问返回给PEP,由PEP执行下一步的操作。【注意】1、为了保护用户的身份信息不被他人非法使用,在退出多级安全访问控制实验时务必在浏览器中删除用户的私钥证书信息。2、XACML系统实验1)策略定制实验【实验目的】系统管理人员通过制定策略文件实现对系统的访问控制。本实验的目的就是让用户了解XACML策略文件的大致结构,并学习制定策略的内容【实验原理】策略描述了特定主体对特定资源的某个操作是否允许。策略包括:一组规则、规则组合算法的标识符、一组义务和一个目标。每条规则由条件、结果和目标组成。每个策略只有一个目标,用于确定所到来的请求和该策略是否相关。策略和请求的相关性决定了是否要为请求评估该策略。这是通过定义目标中的三类属性(主体、资源、动作)及其属性值来实现的。目标中不一定都有这三类属性。将这些属性的值与请求中具有相同属性的值进行比较,如果匹配(对其应用某些函数之后,将会看到它们是否匹配),则认为该策略是相关的,并对其进行评估【实验预备知识点】1、XML文件的格式。XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。2、XACML有哪几个主要的参与者?PDP(策略决策点)、PEP(策略执行点)以及策略库等。【实验步骤】1、确认已经通过证书验证试验进入XMACL实验系统。2、设定主体限制。主体部分可以有四种属性可以设置。你可以设置一种或多种,请将设置的属性前的选择框打钩。对应的属性可以在资源表中选择员工表来查看系统中预先设定的员工角色信息。1、定制资源限制。2、定制URL类型的策略。在资源类型下拉框中选择URL;在URL输入框中填写URL的值,如:。1、定制资源表访问类型的策略。在资源类型下拉框中选择“工资表”或“员工表”;接着在需要定制的列名前面打勾。2、定制动作限制。选择的“读取”或“写入”。3、设定策略头属性。填写“策略ID”和“描述”,策略ID唯一标示该策略,类型为URI,必须以字母开头,可以用’:’分隔。如:“URL:SJTU”。4、生成策略。单击按钮,向服务器提交参数,生成策略。5、如果你的输入正确,服务器生成策略内容,客户端会弹出策略编辑对话框,你可以手动修改策略文件的内容。可以观察到,策略文件是一种xml格式的文件。6、单击按钮将策略保存到策略库中,或者单击按钮放弃保存该策略。【实验思考题】1、将生成的策略内容拷贝到本地的文本编辑器上,察看策略内容;结合实验系统的XACML介绍,观察策略的各部分。2、如果需要定制的策略描述为:“允许Dave读取URL”,策略该如何定制?3、如果2中的策略改为“禁止Dave读取URL”,该如何修改生成的策略文件?2)策略管理实验【实验目的】策略制定之后就存放在策略库中,策略管理实验可以让你了解策略库,以及熟悉策略库的管理。【实验原理】策略库是XACML系统中重要的一环,负责存放管理员已经制定完成的策略。管理员通过策略库的管理,可以控制系统所实施的策略。【实验步骤】1、激活策略。在“待激活策略”列表中选择策略ID,实验系统在右侧显示策略的相关信息。单击按钮,向服务器提交激活请求。服务器响应后,自动将该策略添加到以激活列表中。2、禁止策略。在“已激活策略”列表中选择相应的策略ID。单击按钮,向服务器提交禁止策略请求。服务器响应后,自动将该策略添加到待激活列表中。3、删除策略。在“待激活策略”或“已激活策略”列表中选择相应的策略ID。单击按钮,在列表中删除策略。4、查看策略。在“待激活策略”或“已激活策略”列表中选择相应的策略ID。单击按钮,在弹出的“查看策略”窗口中查看内容。在IE浏览器中,会显示xml的层次结构。5、修改策略。在“待激活策略”或“已激活策略”列表中选择相应的策略ID。单击按钮,在弹出的“策略编辑”窗口中修改相应内容。6、添加自定义策略。单击按钮,在弹出的“策略编辑”窗口中输入相应的内容,单击“保存”将策略添加到策略库中。建议在外部编辑器中编辑好策略再添加到“策略编辑”对话框中。【实验思考题】1、XACML为什么需要“策略库”?PDP在做策略评估时需要知道有哪些策略可以用于评估,所以需要一个策略仓库来存储策略信息。此外,策略库的存在,可以使管理员方便的控制系统的访问策略。3)策略验证实验【实验目的】理解PEP、PDP的角色,熟悉PEP、PDP交互的流程以及策略是如何验证的。【实验原理】当PEP接收到用户的访问请求时,就会收集相关信息,接着向PDP询问用户的这次访问是否被允许。PDP接收到PEP的请求时,就到策略库中查找适用的策略,如果匹配,则返回策略评估的结果,否则返回“NotApplicable”。【实验预备知识点】1、PDP、PEP的概念?PDP(策略决策点):在XACML中负责策略的评估,并返回评估结果。PEP(策略执行点):在XACML中负责策略请求的生成,已经最终策略评估的执行。2、PEP、PDP的交互过程?交互过程:授权请求到达策略执行点(PEP)。PEP创建一个XACML请求并发送到策略决策点(PDP),后者评估请求并返回一个响应。3、PEP请求的构成。请求由主体、资源、动作3部分组成。【实验步骤】1、制定请求。a)选择“主体”、“动作”以及“资源类型”。b)根据请求的资源类型,设置资源的其他相关属性。单击按钮,在弹出窗口中分别填写“健”和“值”。i、URL类型的资源:键=“URL”。值为任意的URL。ii、工资表类型的资源:键=“column”。值为访问的工资表中的列,列名和值的对照表如下:列名员工时间基本工资加班工资扣税总计值useridtimebaseottaxtotaliii、员工表类型的资源:键=“column”。值为访问的工资表中的列,列名和值的对照表如下:列名ID名称入职时间职位工作地点部门值IDnameemployTimepositionloca