系统的安全性和保密性设计 参考内容_第1页
系统的安全性和保密性设计 参考内容_第2页
免费预览已结束,剩余2页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

l系统的访问控制技术8.2访问控制技术ISO定义的五种安全服务是身份验证、访问控制、数据机密性、数据完整性和拒绝防护服务。访问控制服务在系统安全体系结构中起着不可替代的作用。访问控制是一种通过某种方式明确授予或限制访问能力和范围的方法。这是针对未经授权使用资源的防御措施。通过限制对关键资源的访问,可以防止非法用户的入侵或合法用户粗心操作造成的损害,从而确保系统资源的受控和合法使用。用户只能在他们自己的权限内访问系统资源,并且不允许超出他们的权限。访问控制技术通常与身份认证密切相关,但它不能取代身份认证。它基于身份认证。一般来说,身份认证解决了“你是谁,你是否真的拥有你声称的身份”的问题,而访问控制技术解决了“你能做什么,你有什么权限”的问题。访问控制系统一般包括主体、客体和安全访问策略实体。访问控制的目的是:限制主体对访问对象的访问,使计算机系统能够在合法范围内使用;决定用户能做什么,代表特定用户兴趣的程序能做什么。8.2.1访问控制的实现方法访问控制的常用实现方法包括访问控制矩阵、访问能力表、访问控制表和授权关系表。1.访问控制矩阵从数学角度来看,访问控制可以用矩阵的形式来表示,其中行代表对象(各种资源),列代表主题(通常是用户),行和列的交集代表访问权限(如读、写、执行、修改、删除等)。)主语对宾语。2.访问表虽然访问控制矩阵是直观的,但不是每个主体和对象都有权限关系。相反,虽然实际系统中可能有许多主体和对象,但主体和对象之间可能没有多少权限关系,因此有许多空白项目。为了减少系统的开销和浪费,我们从主体(行)开始,利用访问能力来表示矩阵的一行信息。您还可以使用访问控制列表来表示从对象(列)开始的矩阵列的信息。容量是受某种机制保护的对象标志,标志着对象和主体(访问者)对对象的访问权限。只有当一个主体能够访问一个对象时,它才能访问该对象。在访问能力表中,因为它关注某个主体的访问权限,并描述基于该主体的控制信息,所以很容易获得主体被授权访问的对象及其权限,但是很难获得对特定对象具有特定权限的所有主体。在安全系统中,需要可靠保护的是对象本身。访问控制服务应该能够控制能够访问某个对象的主体集,并且能够授予或取消主体的访问权限。因此,基于对象的实现方法访问控制表应运而生。大多数现代操作系统都采用基于ACL的方法。3.访问控制表访问控制表是目前使用最广泛的实现。它可以将任何用户的访问权限分配给特定资源,还可以将具有相同权限的用户分组并授予组访问权限。ACL的优点是它的表达直观且易于理解,而它的目的是更容易找出所有有权访问特定资源的用户,从而有效地实现授权管理。在一些实际应用中,ACL被扩展以进一步控制用户的合法访问时间以及是否需要审计。尽管ACL灵活方便,但在应用于网络规模大、需求复杂的企业内部网络时,暴露出一些问题:1.ACL应该指定可以访问的用户或组以及每个资源的相应权限。当网络中有许多资源时,需要在ACL中设置大量条目。此外,当用户的职位和职责发生变化时,管理员需要修改用户对所有资源的访问权限,以反映这些变化。此外,在许多组织中,服务器通常彼此独立,并各自设置自己的ACL。为了在整个组织中实现一致的控制政策,需要所有管理部门的密切合作。所有这些都会使访问控制的授权管理变得费力和繁琐,并且容易出错。2.简单地使用ACL不容易实现最小权限原则和复杂的安全策略。4.授权关系表授权关系表弥补了基于ACL和基于访问能力表的方法的不足。授权关系表的每一行(或元组)表示主体和对象之间的授权关系。如果按对象排序,它有访问能力表的优势;如果按主题排序,它有访问控制表的优势。这个实现也特别适合使用关系数据库。8.2.2访问控制策略自主访问控制、强制访问控制和基于角色的访问控制是系统中三种常用的访问控制策略,其中前两种是传统的访问控制策略。上述每一种策略都不是绝对相互排斥的。我们可以整合多种策略来获得更好、更安全的系统保护效果。当使用多个策略时,只有当允许不同策略的交集策略时,才允许访问。当然,在某些情况下,也可能存在一些冲突,例如一个策略允许的访问被另一个策略禁止,从而导致冲突,这需要管理层通过协商来协调。1.自主访问控制自主访问控制是目前计算机系统中最常用的访问控制机制。这是一种在确认受试者和/或其所属群体身份的基础上限制访问的方法。之所以称之为自治,是因为在数模转换器系统中,具有特定访问权限的主体可以直接或间接将权限转移给其他主体。基本思想是允许一个主体明确指定其他主体是否可以访问该主体拥有的信息资源以及可以执行的访问类型。视窗系统和UNIX系统都采用了自主访问控制技术。自主访问控制根据访问者的身份和授权决定访问模式,主体访问者拥有一定的访问控制权限。然而,正是这种权利改变了信息在移动过程中的访问权。例如,用户A可以将其对对象目标O的访问权限转移给用户B,这样对0没有访问权限的B也可以访问O,容易产生安全漏洞,所以自主访问控制的安全级别很低。2.强制访问控制强制访问控制是对访问主体的“强制”,即系统强制主体遵守访问控制策略。媒体访问控制主要用于多级安全的军事应用。它预先对主体和客体进行分类,即定义用户的可信度和信息的重要性(安全级别,如最高机密级别、秘密级别、秘密级别、非秘密级别等)。),然后根据主客体的级别标志确定访问模式。用户的访问权限必须符合安全策略和相关访问权限设置划分的安全级别。当用户提出访问请求时,系统会比较主体和客体,以确定访问是否合法。在典型的应用中,媒体访问控制关系可分为两种类型:高读/低写以确保数据完整性,低读/高写以确保数据机密性。它们都通过梯度安全标签实现单向信息流。强制访问控制的主要优点是可以防止“特洛伊木马”。“特洛伊木马”是隐藏在执行特定法律功能的程序中的代码。它利用主要权限运行这个程序来违反安全策略,并通过伪装成一个有用的程序来泄露信息。“特洛伊木马”可以直接或间接泄露信息。对于前者,“特洛伊木马”使信息的安全表示不正确并泄露给未经授权的用户;对于后者,“特洛伊木马”不会通过编译返回给主题的法律信息来直接公开信息。例如,似乎有些问题需要回答,但实际上用户回答的内容会被传输到“特洛伊木马”上。防止“特洛伊木马”的策略基于非循环信息流,因此在一个级别读取信息的主体不得在违反非循环规则的另一个安全级别写入信息。同样,在一个安全级别写信息的主体不得在违反非循环规则的另一个安全级别读信息。由于媒体访问控制策略通过梯度安全标签实现单向信息流通,可以很好地防止“木马”泄露秘密。强制访问控制的主要缺陷在于工作量大、管理不方便和不灵活。此外,MAC过于注重保密性,没有充分考虑系统的持续工作能力和授权的可管理性等其他方面。3.基于角色的访问控制基于角色的访问控制(RBAC)技术出现在20世纪的年代,有效地克服了传统访问控制技术的缺点,可以降低授权管理的复杂性,降低管理开销,还可以为管理者提供更好的环境来实施安全策略,从而成为一种有效的实现面向企业的安全策略的访问控制方法。角色是一个或一组用户可以在组织内执行的操作的组合。用户在特定的部门中有特定的角色,他们执行的操作与他们所扮演的角色的功能相匹配。这是基于角色的访问控制的基本特征,即根据RBAC策略,系统定义了各种角色,每个角色可以完成一定的功能,不同的用户根据他们的功能被分配相应的角色。一旦用户成为某个角色的成员,用户就可以完成该角色的功能。RBAC根据用户在组织中的角色执行授权和访问控制。换句话说,传统的访问控制将访问主体(发出访问操作和访问请求的活动方)与对象(被调用的程序或要访问的数据访问)直接连接起来,而RBAC在中间添加了一个角色,通过该角色来传达主体和对象。在RBAC,用户身份对于身份认证和审计记录非常有用,但真正决定访问权限的是用户相应的角色身份。由于用户和对象之间没有直接的联系,所以他只能通过角色享受与角色相对应的权利,从而访问相应的对象。因此,用户不能自主地将访问权限授予其他用户,这是RBAC和数模转换器的根本区别。RBAC和停战委员会的区别在于,停战委员会是基于多级安全要求,而RBAC不是,因为军事系统主要关注防止信息从高安全级别流向低安全级别,即限制“谁可以读/写什么信息”,而RBAC系统主要关注保护信息的完整性,即“谁可以对什么信息执行什么操作”。角色控制相对灵活,允许一些角色根据配置接近数模转换器,一些角色接近媒体访问控制。角色由系统管理员定义,角色成员的增减只能由系统管理员执行,也就是说,只有系统管理员有权定义和分配角色,授权规则是强加给用户的。用户只能被动接受,不能自主决定,也不能自主将访问权转让给他人。这是一种非自主访问控制。最后,我想指出角色和群体之间的区别。组通常只是一组用户,而角色一方面是一组用户,另一方面是一组权限,将用户和权限作为中间媒介连接起来。当然,角色可以在组的基础上实现,这对于维护原始系统非常有利。此时,角色成为一个战略组成部分,它与组织的授权和责任关系相联系,并形成实现角色的工具。两者的关系是战略与实施机制的关系。l数据完整性8.4数据完整性数据完整性要求禁止未经授权的数据篡改。它与数据保密性密切相关,也是进一步的信息安全目标。保护数据完整性的方法有很多:访问控制可以用来防止未经授权的数据篡改;时间戳可用于判断数据上次修改的时间。数据是否被篡改可以通过数据验证或消息摘要来判断。Biba改进了Bell-Lapadula模型,建立了Biba数据完整性模型。本节首先简要介绍了Biba模型,然后详细介绍了消息摘要算法。8.4.1比比诚信模式Biba模型规定:(1)如果对象的安全级别高于或等于对象的安全级别,则对象可以对该对象进行写访问。(2)如果主体只能读取和访问对象。然后,对于另一个对象p,如果p的安全级别低于或等于o的级别,则主体可以对p进行写访问。比哈模式可以总结如下:(1)读取访问策略与贝尔-拉普杜拉模型相同:(2)主体不能改变比其安全级别更高的对象。这也确保了高级对象的完整性。像贝尔-拉普杜拉模型一样,比比模型可以从理论上证明其安全性,但在实际应用中很难完全满足模型的要求,所以比比模型只是一个理论模型。8.4.2哈希函数和消息摘要所谓的散列函数H是一个公共函数。哈希函数可以将任意长度的消息M映射到一个较短的固定长度值H(M)。我们称之为散列码或消息摘要。因为哈希代码是消息中所有位的函数,所以哈希函数可以提供错误检测功能。更改消息中的任何一位或多位都会更改哈希代码。这种错误检测方法可以判断数据是否被篡改,从而保护数据的完整性。使用哈希函数提供消息身份验证有五种基本方法:(1)在消息与哈希码链接后,使用对称加密算法对其进行加密,使用的密钥仅由发送方和接收方共享。这种方法可以确保接收到的消息来自消息发送者,并且没有被篡改。同时,该方法还可以提供数据保密性保护。(2)只有哈希码用对称加密算法加密。该方法与(1)相似,速度更快,但不提供数据机密性保护。(3)使用非对称加密算法,使用发送方的私钥对哈希代码进行加密。因为只有发送者可以生成这样的消息,所以该方法可以提供数字签名功能。(4)消息的发送者使用对称加密和非对称加密算法。在(3)的基础上,对称密钥用于加密消息和用私钥转换的散列码。这种方法提供了数字签名和数据加密功能。(5)消息发送者和接收者共享特定的秘密S。消息发送者将消息M和秘密S链接在一起并生成散列值。发送消息时,只发送M和哈希值。由于在发送过程中没有S,即使消息被拦截,哈希值也不仅仅是由M生成的,而且消息拦截器不知道S的内容,所以消息内容不能被篡改。我们可以通过哈希算法判断数据是否被篡改。设计良好的哈希函数可确保:不同的数据几乎不可能有相同的摘要。(2)很难通过消息摘要猜测消息本身。我们可以通过这个散列函数来标记数据。如果有人篡改数据,消息摘要将会改变,新的消息摘要将不同于篡改前生成的摘要。数据是否被篡改可以通过比较摘要是否改变来判断。12.4.2数据库完整性设计数据库完整性是指数据库中数据的正确性和兼容性。数据库完整性是由各种完整性约束来保证的,所以可以说数据库完整性设计就是数据库完整性约束的设计。数据库完整性约束可以由数据库管理系统或应用程序实现。基于数据库管理系统的完整性约束作为模式的一部分存储在数据库中。数据库管理系统实现的数据库完整性是按照数据库设计步骤进行设计的,而应用软件实现的数据库完整性则融入到应用软件设计中。1.数据库完整性设计原则在实现数据库完整性设计时,需要掌握以下基本原则。(1)根据数据库完整性约束的类型,确定系统级别和实现方式,并

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论