系统的安全性和保密性设计.doc
《系统的安全性和保密性设计.doc》由会员分享,可在线阅读,更多相关《系统的安全性和保密性设计.doc(4页珍藏版)》请在咨信网上搜索。
1、l 系统的访问控制技术8 . 2 访问控制技术ISO所定义的5 大安全服务功能是:认证、访问控制、数据保密性、数据完整性和防止否认服务。其中访问控制服务在系统安全体系结构中起着不可替代的作用。 访问控制是通过某种途径显式地准许或限制访问能力及范围的一种方法。它是针对越权使用资源的防御措施,通过限制对关键资源的访问,防止非法用户的侵入或因为合法用户的不慎操作而造成的破坏从而保证系统资源受控地、合法地被使用。用户只能在自己的权限内访问系统资源,不得越权访问。访问控制技术通常和身份认证密切联系,但并不能取代身份认证,它是建立在身份认证的基础之上的,通俗地说,身份认证解决的是你是谁,你是否真的具有你所
2、声称的身份”,而访问控制技术解决的是你能做什么,你有什么样的权限”这个问题。 访问控制系统一般包括主体(subject)、客体(object)及安全访问政策几个实体。访问控制的目的是:限制主体对访问客体的访问权限,从而使计算机系统在合法范围内使用;决定用户能做什么,也决定代表一定用户利益的程序能做什么。8 . 2 . 1 访问控制的实现方法访问控制的常见实现方法有访问控制矩阵、访问能力表、访问控制表和授权关系表等几种。1 访问控制矩阵 从数学角度看,访问控制可以表示为一个矩阵的形式,其中行表示客体(各种资源),列表示主体(通常为用户),行和列的交叉点表示某个主体对某个客体的访问权限(如读、写、
3、执行、修改、删除等)。2 访问能力表 访问控制矩阵虽然直观,但并非每个主体和客体之间都存在着权限关系,相反,实际的系统中虽然可能有很多的主体和客体,但主体和客体之间的权限关系可能并不多,这样就存在着很多空白项。为了减轻系统的开销与浪费,我们从主体(行)出发,用访问能力表达矩阵某一行的信息;也可以从客体(列)出发,用访问控制表(Access Control List)表达矩阵某一列的信息。能力(capacity)是受一定机制保护的客体标志,标记了客体以及主体(访问者)对客体的访问权限。只有当一个主体对某个客体拥有访问的能力时,它才能访问这个客体。在访问能力表中,由于它着眼于某一主体的访问权限,并
4、以主体为出发点描述控制信息,所以很容易获得一个主体所被授权可以访问的客体及其权限,但如果要求获得对某一特定客体有特定权限的所有主体就比较困难。在一个安全系统中,正是客体本身需要得到可靠的保护,访问控制服务应该能够控制可访问某一客体的主体集合,并能够授予或取消主体的访问权限,于是出现了以客体为出发点的实现方式 ACL(访问控制表),现代的操作系统大都采用基于ACL 的方法。3 访问控制表访问控制表是目前采用最多的一种实现方式。它可以对某一特定资源指定任意一个用户的访问权限,还可以将有相同权限的用户分组,并授予组的访问权,ACL的优点在于它的表述直观、易于理解,而目比较容易查出对某一特定资源拥有访
5、问权限的所有用户,以便有效实施授权管理。在一些实际应用中还对ACL 进行了扩展,从而进一步控制用户的合法访问时间,是否需要审计等。尽管ACL灵活方便,但将它应用到网络规模较大、需求复杂的企业内部网络时,就暴露出了一些问题:1.ACL需对每个资源指定可以访问的用户或组以及相应的权限。当网络中资源很多时,需要在ACL设定大量的表项。而且,当用户的职位、职责发生变化时,为反映这些变化,管理员需要修改用户对所有资源的访问权限。另外,在许多组织中,服务器一般是彼此独立的,各自设置自己的ACL ,为了实现整个组织范围内的一致的控制政策,需要各管理部门的密切合作。所有这些,都会使得访问控制的授权管理变得费力
6、而繁琐,且容易出错。2.单纯使用ACL ,不易实现最小权限原则及复杂的安全政策。4 授权关系表授权关系表弥补了基于ACL 和基于访问能力表的方法的不足,它的每一行(或称一个元组)都表示主体和客体的一个权限关系。如果该表按客体进行排序就拥有访问能力表的优势,如果按主体进行排序就拥有了访问控制表的好处。这种实现方式也特别适合采用关系数据库。8 . 2 . 2 访问控制策略自主访问控制、强制访问控制和基于角色的访问控制是系统中常用的3种访问控制策略,其中前两种(DAC 和MAC )属于传统的访问控制策略。以上每种策略不是绝对互斥的,我们可以把几种策略综合起来应用,以获得更好、更安全的系统保护效果。当
7、使用多重策略的时候,只有各种策略的交集策略被允许,访问才被许可。当然,在某些场合下,也可能存在着一些冲突,比如被某一策略许可的访问被另一策略所禁止,这样就产生了冲突,这种情况需要在管理层通过协商来协调。1 自主访问控制自主访问控制(DAC)是目前计算机系统中使用最多的访问控制机制,它是在确认主体身份以及(或)它们所属组的基础上对访问进行限制的一种方法,称其为自主型是因为在DAC 系统中,一个拥有一定访问权限的主体可以直接或间接地将权限传给其他主体。其基本思想是:允许某个主体显式地指定其他主体对该主体所拥有的信息资源是否可以访问以及可执行的访问类型。Windows、UNIX系统都采用了自主型的访
8、问控制技术。自主访问控制根据访问者的身份和授权来决定访问模式,主体访问者对访问的控制有一定的权利。但正是这种权利使得信息在移动过程中的访问权限关系会被改变。如用户A 可以将其对客体目标O 的访问权限传递给用户B ,从而使不具备对0 访问权限的B 也可以访问O ,这样就很容易产生安全漏洞,所以自主访问控制的安全级别很低。2 强制访问控制强制访问控制是“强加”给访问主体的,即系统强制主体服从访问控制政策。MAC 主要用于多层次安全级别的军事应用当中,它预先将主体和客体分级,即定义用户的可信任级别及信息的重要程度(安全级别,比如可以分成绝密级、机密级、秘密级、无密级等),然后根据主体和客体的级别标记
9、来决定访问模式,用户的访问必须遵守安全政策划分的安全级别以及有关访问权限的设定。当用户提出访问请求时,系统对主客体两者进行比较以确定访问是否合法。在典型应用中,MAC 的访问控制关系可以分为两种:用上读下写来保证数据完整性以及利用下读上写来保证数据的保密性。它们都是通过梯度安全标签来实现信息的单向流通的。强制访问控制(MAC)的优势最主要在于它能阻止“特洛伊木马”。一个“特洛伊木马”是在一个执行某些合法功能的程序中隐藏的代码,它利用运行此程序的主体权限违反安全策略,通过伪装成有用的程序在进程中泄漏信息。一个“特洛伊木马”能够以直接与非直接泄漏两种方式泄漏信息。对于前者,“特洛伊木马”使信息的安
10、全表示不正确并泄漏给非授权用户;对于后者,“特洛伊木马”通过编制返回给一个主体的合法信息中的方式非直接泄露信息,例如,可能表面上某些提问需要回答,而实际上用户回答的内容被传送给了“特洛伊木马”。阻止“特洛伊木马”的策略是基于非循环信息流,所以在一个级别上读信息的主体一定不能在另一个违反非循环规则的安全级别上写。同样,在一个安全级别上写信息的主体一定不能在另一个违反非循环规则的安全级别上读。由于MAC 策略是通过梯度安全标签实现信息的单向流通,因而它可以很好地阻止“特洛伊木马”的泄密。强制访问控制(MAC)的主要缺陷在于实现工作量太大、管理不便、不够灵活,而且MAC 由于过于偏重保密性,对其他方
11、面如系统连续工作能力、授权的可管理性等考虑不足。3 基于角色的访问控制20 世纪如年代出现的一种基于角色的访问控制(RBAC)技术有效地克服了传统访问控制技术的不足,可以减少授权管理的复杂性,降低管理开销,而且还能为管理者提供一个比较好的安全实现政策的环境,从而成为了实施面向企业的安全策略的一种有效的访问控制方式。角色是一个或一群用户在组织内可执行的操作组合。用户在一定的部门中具有一定的角色,其所执行的操作与其所扮演的角色的职能相匹配,这正是基于角色的访问控制的基本特征、即依据RBAC 策略,系统定义了各种角色,每种角色可以完成一定的职能,不同的用户根据其职能被赋予相应的角色,一旦某个用户成为
12、某个角色的成员,则此用户可以完成该角色所具有的职能。RBAC 根据用户在组织内所处的角色进行授权与访问控制。也就是说,传统的访问控制直接将访问主体(发出访问操作、存取要求的主动方)和客体(被调用的程序或欲存取的数据访问)相联系,而RBAC在中间加入了角色,通过角色沟通主体与客体。在RBAC 中,用户标识对于身份认证以及审计记录是十分有用的,但真正决定访问权限的是用户对应的角色标识。由于用户与客体无直接联系,他只有通过角色才能享有该角色所对应的权限,从而访问相应的客体,因此用户不能自主地将访问权限授予别的用户,这是RBAC与DAC的根本区别。RBAC 与MAC 的区别在于:MAC 是基于多级安全
13、需求的,而RBAC 则不是,因为军用系统主要关心的是防止信息从高安全级流向低安全级,即限制“谁可以读写什么信息”,而RBAC 的系统主要关心的是保护信息的完整性,即“谁可以对什么信息执行何种动作”角色控制比较灵活,根据配制可以使某些角色接近DAC ,而某些角色更接近于MAC。角色由系统管理员定义,角色成员的增减也只能由系统管理员来执行,即只有系统管理员有权定义和分配角色,而且授权规定是强加给用户的,用户只能被动接受,不能自主地决定,用户也不能自主地将访问权限转而赋予他人,这是一种非自主型访问控制。最后要指出的是角色和组的区别。组通常仅仅作为用户的集合,而角色一方面是用户的集合,另一方面又是权限
14、的集合,作为中间媒介将用户和权限连接起来。当然角色可以在组的基础上实现,这样就对保持原有系统非常有利。此时角色就成为了一个策略部件,与组织的授权、责任关系相联系,而组成为实现角色的工具,两者间是策略与实现机制的关系。l 数据的完整性8 . 4 数据完整性数据完整性要求禁止未经授权的数据篡改,它同数据机密性紧密相连,也是更进一步的信息安全目标。保护数据完整性的方法有很多:可以通过访问控制的方法阻止数据未经授权的篡改;可以通过时间戳来判断数据最后一次修改的时间;可以通过数据校验或消息摘要的方法来判断数据是否已经被篡改。Biba 修改了Bell-Lapadula 模型,针对数据完整性建立了Biba
15、数据完整性模型。本节首先简要介绍Biba模型,然后详细介绍报文摘要算法。8 . 4 . 1 Biba完整性模型Biba模型规定:( l )如果主体的安全级别高于或等于客体的安全级别,那么主体可以对该客体写访问。( 2 )如果一个主体仅可以读访问一个客体。则对于另外一个客体p 来说,如果p 的安全级别低于或等于o的级别,那么该主体对于p 可以有写访问的权限。Biha 模型可以概括为:( l )读访问策略同Bell-Lapadula模型一样:( 2 )主体不能够更改安全级别比它高的客体。这也就保证高级别客体的完整性。Biba 模型同Bell-Lapadula模型一样,虽然都可以从理论上证明其安全性
16、,但在实际应用中很难完全满足模型的要求,所以Biba 模型也仅是一个理论上的模型。8 . 4 . 2 杂凑函数与消息摘要所谓杂凑函数H 是一个公开的函数,杂凑函数可以将任意长的消息M 映射为较短的、固定长度的一个值H(M),我们称H(M)为杂凑码或消息摘要。因为杂凑码是消息中所有比特的函数,所以杂凑函数可以提供错误检测的能力,改变消息中任何一个比特或几个比特都会使杂凑码发生改变。这种错误检测方法可以判断数据是否被篡改,从而保护数据的完整性。使用杂凑函数提供消息认证有5 种基本方法:(l)消息与杂凑码链接后使用对称加密算法加密,所用密钥仅为收发双方共享。这种方法可以确保接收的消息来源于消息发送方
17、,且没有被篡改,同时这种方法还能够提供数据机密性保障。(2)用对称加密算法仅对杂凑码加密。这种方法同(l)类似,有更快的速度但不提供数据机密性保障。(3)采用非对称加密算法,使用发送方的私钥对杂凑码进行加密。由于只有发送方能够产生这样的消息,所以这种方法可以提供数字签名功能。(4)消息发送方同时使用对称加密和非对称加密两种算法,在(3)的基础上使用对称密钥加密消息和使用私钥变换过的杂凑码。这种方法同时提供数字签名和数据加密的功能。(5)消息收发双方共享-特定秘密S,消息发送方将消息M和秘密S链接在一起并产生杂凑值,发送消息时仅发送M和杂凑值。由于发送过程中不含有S,即使该消息被截获,由于杂凑值
18、并非仅仅由M产生,而消息截获者不知道S的内容,所以仍然无法篡改消息内容。我们可以通过杂凑算法来判断数据是否已经被篡改。设计巧妙的杂凑函数可以保证:(l)不同的数据几乎不可能具有相同的摘要。(2)通过消息摘要难以猜测消息本身。我们可以通过这个杂凑函数来为数据打上标记,如果有人篡改了数据,消息摘要就会变化,新的消息摘要会与篡改前生成的摘要不同。通过比较摘要是否发生变化就可以判断数据是否已经被篡改。12 . 4 . 2 数据库的完整性设计数据库完整性是指数据库中数据的正确性和相容性。数据库完整性由各种各样的完整性约束来保证,因此可以说数据库完整性设计就是数据库完整性约束的设计。数据库完整性约束可以通
19、过DBMS或应用程序来实现,基于DBMS的完整性约束作为模式的一部分存入数据库中。通过DBMS实现的数据库完整性按照数据库设计步骤进行设计,而由应用软件实现的数据库完整性则纳入应用软件设计。1 数据库完整性设计原则在实施数据库完整性设计时,需要把握以下基本原则。( l )根据数据库完整性约束的类型确定其实现的系统层次和方式,并提前考虑对系统性能的影响。一般情况下,静态约束应尽量包含在数据库模式中,而动态约束由应用程序实现。( 2 )实体完整性约束、参照完整性约束是关系数据库最重要的完整性约束,在不影响系统关键性能的前提下需尽量应用。用一定的时间和空间来换取系统的易用性是值得的。( 3 )要慎用
20、目前主流DBMS 都支持的触发器功能,一方面由于触发器的性能开销较大;另一方面,触发器的多级触发不好控制,容易发生错误,非用不可时,最好使用Before型语句级触发器。( 4 )在需求分析阶段就必须制定完整性约束的命名规范,尽量使用有意义的英文单词、缩写词、表名、列名及下划线等组合,使其易于识别和记忆。如果使用CASE 工具,一般有默认的规则,可在此基础上修改使用。( 5 )要根据业务规则对数据库完整性进行细致的测试,以尽早排除隐含的完整性约束间的冲突和对性能的影响。( 6 )要有专职的数据库设计小组,自始至终负责数据库的分析、设计、测试、实施及早期维护。数据库设计人员不仅负责基于DBMS 的
21、数据库完整性约束的设计实现,还要负责对应用软件实现的数据库完整性约束进行审核。( 7 )应采用合适的CASE工具来降低数据库设计各阶段的工作量。好的CASE 工具能够支持整个数据库的生命周期,这将使数据库设计人员的工作效率得到很大提高,同时也容易与用户沟通。2 数据库完整性的作用数据库完整性对于数据库应用系统非常关键,其作用主要体现在以下几个方面。( 1 )数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据。( 2 )利用基于DBMS的完整性控制机制来实现业务规则,易于定义,容易理解,而且可以降低应用程序的复杂性,提高应用程序的运行效率。同时,基于DBMS 的完整性控制机
22、制是集中管理的,因此比应用程序更容易实现数据库的完整性。( 3 )合理的数据库完整性设计,能够同时兼顾数据库的完整性和系统的效能。例如装载大量数据时,只要在装载之前临时使基于DBMS 的数据库完整性约束失效,此后再使其生效,就能保证既不影响数据装载的效率又能保证数据库的完整性。( 4 )在应用软件的功能测试中,完善的数据库完整性有助于尽早发现应用软件的错误。( 5 )数据库完整性约束可分为6 类:列级静态约束、元组级静态约束、关系级静态约束、列级动态约束、元组级动态约束和关系级动态约束。动态约束通常由应用软件来实现。不同DBMS 支持的数据库完整性基本相同,Oracle 支持的基于DBMS 的
23、完整性约束如所示。3 数据库完整性设计示例一个好的数据库完整性设计,首先需要在需求分析阶段确定要通过数据库完整性约束实现的业务规则。然后在充分了解特定DBMS 提供的完整性控制机制的基础上,依据整个系统的体系结构和性能要求,遵照数据库设计方法和应用软件设计方法,合理选择每个业务规则的实现方式。最后,认真测试,排除隐含的约束冲突和性能问题。基于DBMS 的数据库完整性设计大体分为以下几个阶段。l )需求分析阶段经过系统分析员、数据库分析员和用户的共同努力,确定系统模型中应该包含的对象,如人事及工资管理系统中的部门、员工和经理等,以及各种业务规则。在完成寻找业务规则的工作之后,确定要作为数据库完整
24、性的业务规则,并对业务规则进行分类。其中作为数据库模式一部分的完整性设计按下面的过程进行,而由应用软件来实现的数据库完整性设计将按照软件工程的方法进行2 )概念结构设计阶段概念结构设计阶段是将依据需求分析的结果转换成一个独立于具体DBMS 的概念模型,即实体关系图在概念结构设计阶段就要开始数据库完整性设计的实质阶段,因为此阶段的实体关系将在逻辑结构设计阶段转化为实体完整性约束和参照完整性约束,到逻辑结构设计阶段将完成设计的主要工作。3 )逻辑结构设计阶段此阶段就是将概念结构转换为某个DBMS 所支持的数据模型,并对其进行优化,包括对关系模型的规范化。此时,依据DBMS 提供的完整性约束机制,对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 系统 安全性 保密性 设计
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。