(计算机软件与理论专业论文)xml数据库访问控制模型研究.pdf_第1页
(计算机软件与理论专业论文)xml数据库访问控制模型研究.pdf_第2页
(计算机软件与理论专业论文)xml数据库访问控制模型研究.pdf_第3页
(计算机软件与理论专业论文)xml数据库访问控制模型研究.pdf_第4页
(计算机软件与理论专业论文)xml数据库访问控制模型研究.pdf_第5页
已阅读5页,还剩46页未读 继续免费阅读

(计算机软件与理论专业论文)xml数据库访问控制模型研究.pdf.pdf 免费下载

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

文档简介

山东大学硕士学位论文 | 皇皇曼皇蔓-i= - - r 一_ - 皇皇皇曼童 摘要 随着x m l 应用范围的不断扩展,越来越多的数据采用x m l 技术来管理, 数据库本身的安全性也日益重要。x m l 数据库安全是一个正在展开的研究方向。 如何实施面向x m l 文档的访问控制策略成为目前研究的热点。 本课题的研究思路就是针对x m l 文档及文档中元素的特性所需求的细粒度 访问控制,充分结合基于角色的访问控制( r b a c ) 模型中灵活方便的角色配置, 在r b a c 的基础上,有效融入对x m l 对象特殊性的支持,基于x m ls c h e m a 技术,设计出一个面向x m l 文档数据库的扩展的r b a c 模型,能够实现x m l , 文档数据库的细粒度访问控制。 本论文首先对在访问控制技术发展过程中最具有代表性的自主访问控制 ( d a c ) 、强制访问控制( m a c ) 和基于角色的访问控制( r b a c ) 三个访问控 制模型进行分析,给出了选择r b a c 模型作为研究的立足点的原因;然后对x m l 及其特性进行了描述,围绕x m l 文档数据安全对x m l 访问控制技术与x m l 安全规范进行了研究分析。x m l 文档访问控制模型的需求是由x m l 文档的特 征决定的,包括x m l 文档的结构、文档的良构和有效性要求等,因此访问控制 模型必须能够满足细粒度的访问控制需求。作者选择在r b a c 9 6 的基础上,对 r b a c 模型进行扩展,针对x m l 文档的细粒度访问控制需求,有效融入对x m l 对象特殊性的支持,设计了面向x m l 文档的r b a c 模型( a c ) 并给出了 形式化定义。在此基础上,进一步设计了x r b a c 模型框架,并采用u m l 静态 视图和功能视图更为直观和深入的描述了y d t b a c 系统的设计,最后结合一个简 化的商业银行企业访问控制应用环境,通过x m ls c h e m a 描述语言具体展示了在 基于舭的框架中实现x r b a c 系统的具体关键性技术。 该访问控制模型不但能够满足x m l 文档的细粒度访问控制需求,而且该模 型结构简单,易于实现,在实际x m l 文档数据库安全控制中具有很好的应用参 考价值。 关键词数据库安全:x m l ;访问控制:安全模型; 山东大学硕士学位论文 a b s t r a c t w i t he x p a n d i n go ft h ex m la p p l i c a t i o n ,m o r ea n dm o r ed a t ai sm a n a g e db y a d o p t i n gx m lt e c h n o l o g y , t h es e c u r i t y o ft h ed a t a b a s ei t s e l fi sa l s ob e c o m i n g i n c r e a s i n g l yi m p o r t a n t x m ld a t a b a s es e c u r i t yi sa no n g o i n gr e s e a r c hd i r e c t i o n a t p r e s e n t ,h o wt op u tt h ea c c e s sc o n t r o lp o l i c yo r i e n t e dx m l d o c u m e n tm t op r a c t i c ei s b e c o m i n gh o ts p o to fs t u d y i n g a i m i n ga tt h ec h a r a c t e r i s t i co ft h ex m ld o c u m e n ta n di t se l e m e n t ,i tn e e d s f i n e g r a i n e dd e g r e ea c c e s sc o n t r 0 1 c o m b i n i n gt h e n i m b l ea n dc o n v e n i e n tr o l e a s s i g n m e n ti nt h er b a cm o d e l ,e f f e c t l ys u p p o r t i n gt h ec h a r a c t e r i s t i co fx m l o b je c t , o w i n gt ox m ls c h e m at e c h n o l o g y ,id e s i g nt h ee x t e n d i n gr b a cm o d e lo r i e n t e d x m ld o c u m e n to nb a s e do fr b a c 9 6 ,t or e a l i z et h ef i n e g r a i n e dd e g r e ea c c e s s c o n t r o lo fx m ld a t ab a s e t h i si st h es t u d yi d e ao fm yt a s k t h i sa r t i c l ef i r s ta n a l y s i sd a c ( d i s c r e t i o n a 秽a c c e s sc o n t r 0 1 ) ,m a c ( m a n d a t o r y a c c e s sc o n t r 0 1 ) a n dr b a c ( r o l eb a s e da c c e s sc o n t r 0 1 ) ,t h i st h r e ea c c e s sc o n t r o lm o d e l s a l er e l a t i v e l yr e p r e s e n t a t i v ei nt h ed e v e l o p m e n to ft h ea c c e s sc o n t r o lt e c h n o l o g y ,g i v e t h ec h o i c eo fr o l e b a s e da c c e s sc o n t r o l ( r b a c ) m o d e la sas t a r t i n gp o i n tf o rr e s e a r c h ; t h e n x m la n di t sc h a r a c t e r i s t i ca r e i n t r o d u c e da n dr e s e a r c h ,e n c l o s i n gx m l d a t a b a s es a f e t y , x m la c c e s sc o n t r o lt e c h n o l o g i e sa n dx m ls a f e t y c r i t e r i o na l e a n a l y s e d x m ld o c u m e n ta c c e s sc o n t r o lm o d e l i ss e t t l e do nt h ec h a r a c t e r i s t i co ft h e x m ld o c u m e n t i n c l u d i n gt h es t r u c t u r eo fx m ld o c u m e n ta n dt h ev a l i d i t yo fx m l , s ot h ea c c e s sc o n t r o lm o d e lm u s tm e e tt h ef i n e g r a i n e dd e g r e e o nt h eb a s i so f r b a c 9 6 ,w i t hs c h e m a - b a s e dt e c h n o l o g ya n dt h ef i n e - g r a i n e da c c e s sc o n t r o ld e m a n d f o rx m ld o c u m e n t s ,a n di tm u s ts u p p o r tt ot h es p e c i f i c a t i o no fx m lo b j e c t i s e f f e c t i v ei n t e g r a t e d ,t h i sp a p e rp u t sf o r w a r dx m l d o c u m e n t so r i e n t e dr b a cm o d e l a n dg i v et h ef o r m a l i z a t i o nd e f i n i t i o n ,n a m e dx r b a c t h e n ,t h i sp a p e rd e s i g nt h e f r 锄eo fx r b a cm o d e lu s i n gu m ls t a t i cv i e wa n df u n c t i o nv i e w f i n a l l y , t h i sp a p e r d e s c :r i b e st h ei m p l e m e n t a t i o no ft h ex r b a cm o d e la b o u tc o m m e r c i a lb a n ka c c e s s c o n t r o lw i t hx m ls c h e m ad e s c r i b i n gl a n g u a g et o f i n i s hk e yt e c h n o l o g ya b o u t x r b a c s y s t e m i i 山东大学硕士学位论文 t h i sa c c e s sc o n t r o lm o d e lc o u l dm e e tt h ed e m a n do faf i n e g r a i n e da c c e s s c o n t r o lf o rx m ld o c u m e n t s t h i sm o d e li ss i m p l ea n de a s yt oi m p l e m e n t ,i th a sg o o d r e f e r e n c ea p p l i e dv a l u ea tp r a c t i c a la p p l i c a t i o n k e yw o r d sd a t a b a s es e c u r i t y ;x m l ;a c c e s sc o n t r o l ;s e c u r i t ym o d e l ; 原创性声明和关于论文使用授权的说明 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下, 独立进行研究所取得的成果。除文中已经注明引用的内容外,本 论文不包含任何其他个人或集体已经发表或撰写过的科研成果。 对本文的研究做出重要贡献的个人和集体,均已在文中以明确方 式标明。本声明的法律责任由本人承担。 论文作者签名:考星皋生 日 期:丞塑:丝:警 关于学位论文使用授权的声明 本人完全了解山东大学有关保留、使用学位论文的规定,同 意学校保留或向国家有关部门或机构送交论文的复印件和电子 版,允许论文被查阅和借阅;本人授权山东大学可以将本学位论 文的全部或部分内容编入有关数据库进行检索,可以采用影印、 缩印或其他复制手段保存论文和汇编本学位论文。 ( 保密论文在解密后应遵守此规定) 论文作者签名:写叁鑫业导师签名 山东大学硕士学位论文 1 1 课题提出的背景 第1 章绪论 信息技术的不断发展已经改变了人类的生活方式,而在我们越来越依赖于信 息技术的同时,信息安全的问题也日益突出。数据库是当今信息社会中数据存储 和处理的核心,其安全性对于整个信息安全极为重要。 随着w e b 技术及其应用的快速发展,x m l 已经成为信息表示和数据交换的 一个重要标准,x m l 技术也越来越广泛的应用于各个领域,x m l 文档数据大量 积累,使得如何管理x m l 文档数据以及x m l 数据库的安全问题日益受到更为 广泛的关注,正成为数据库研究领域中的一个重要挑战。 目前,关于x m l 数据库的安全性,国内外进行了许多研究。例如文 5 】提出 了一个细粒度的访问控制模型,该模型支持不同的访问控制粒度,也支持来自于 祖先节点、d t d ( x m ls c h e m e ) 的权限传播,另外还支持s o f t h a r d 策略。文 6 】将 授权和加密相结合,实现了一个基于层次的密钥管理模式,其密钥的生成和访问 策略相关,能够生成最少数量的密钥,而且实现了分布式协作更新。文 7 】提出了 一个x m l 数据库上的安全视图方法,等等。文献 2 l 】中提出了一种细粒度的访 问控制模型,这个模型定义了针对x m l 文档元素的访问控制权限,但它是基于 自主访问控带j j ( d a c ) 策略的,自主访问控制太弱。自主访问控制的基本思想是受 控对象的拥有者可以决定谁可以如何访问该对象。换句话说,d a c 策略是一种 基于所有者授权的访问控制策略,因此d a c 策略是松散的策略。文【2 6 】还给出 了面向x m l 文档的强制访问控制( m a c ) 模型。高安全等级系统需要强制访问控 制来保证系统内信息的安全,但是强制访问控制策略代价非常大,对系统性能影 响明显,而且灵活性欠缺。d i r n i a n i 和b e r t i n o 等对基于d t d 的面向x m l 文档 的访问控制进行了讨论。由于与d t d 技术相比,x m ls c h e m a 技术有很多明显 的优势,基于x m ls c h e m a 技术的访问控制研究才是发展趋势。 本文选择基于角色的访问控制( i m a c ) 模型作为研究的立足点,进而给出 面向x m l 文档数据库的扩展r b a c 模型。该模型基于s c h e m a 技术,针对x m l 文档的特性,对r b a c 9 6 模型进行了有效的改造和扩展,不但能够满足x m l 文 山东大学硕士学位论文 档的细粒度访问控制需求,而且该模型结构简单,易于实现。 1 2 主要研究内容 本文主要针对x m l 文档数据库的细粒度访问控制技术进行探讨。 第二章首先总结分析了访问控制技术发展过程中比较具有代表性的d a c 、 m a c 和r b a c 三个访问控制模型,对各种模型之间进行了对比,分析了各安全 模型的优势与不足。 第三章对目前越来越广泛应用的x m l 技术及特性进行了介绍,围绕x m l 文档数据安全对x m l 访问控制技术和安全规范进行了研究,然后说明了x m l 访问控制研究的现状和热点。 第四章和第五章是本论文的重点部分。第四章在i a c 9 6 的基础上,对 r b a c 模型进行扩展,针对x m l 文档的细粒度访问控制需求,有效融入对x m l 对象特殊性的支持,给出了面向x m l 文档的r b a c 模型( m a c ) ,对该模型 的进行了形式化定义,包括模型构成、对象定义、访问类型、权限配置和自动约 束代理等。 第五章在第四章给出面向x m l 文档的r b a c 模型的形式化定义的基础上, 进一步对x r b a c 模型的框架结构、系统实现和关键性技术进行研究。采用u m l 设计的静态视图和功能视图更为直观和深入的描述了x r b a c 系统的设计;结合 一个简化的商业银行企业访问控制应用环境,通过x i v i ls c h e m a 描述语言具体展 示了在基于x m l 的框架中实现x r b a c 系统的模型组建定制、模型访问控制数 据的编码和模型约束表达等关键性技术。 第六章对该安全模型存在的不足以及进一步的研究工作进行了总结。 本章小结: 本章首先给出了课题提出的背景,对比之前相关研究课题,提出了基于 s c h e m a 技术,针对x l v l l 文档的特性,对r b a c 9 6 模型进行有效改造和扩展, 以满足x m l 文档的细粒度访问控制需求的访问控制模型的思路;然后简要概括 了本论文各章节主要的研究内容。 山东大学硕士学位论文 第2 章安全模型概述 安全模型也称为策略表达模型,是一种高层抽象、独立于软件实现的概念模 型。在包括数据库系统在内的各种安全系统中,安全模型是用于精确的描述该系 统的安全需求和安全策略的有效方式。目前比较成熟的安全模型大部分是访问控 制策略模型,用于描述和维护系统中数据的保密性和完整性。【l 】 早期的如h r u 模型基于访问控制矩阵实现对访问的控制,是一种基本的自 主访问控制模型,取予模型用图结构来表示系统的授权,a c t e n 模型引入了一个 独立的授权管理图,w o o d 模型是多模式数据库实现授权管理和存取控制的模型, b l p 模型是一个强制访问控制模型,主要用来解决信息保密的问题,在此模型中, 保密性被描述为一组规则,b i b a 模型是用来保护信息完整性的模型,d i o n 模型 结合了b l p 模型中保护数据机密性的策略和b i b a 模型中保护数据完整性的策 略,在该模型中只容许数据在客体之间流动,而不容许数据在客体和主体之间流 动。这些早期的安全策略模型大致可以划分为自主访问控制d a c 和强制访问控 制m a c 两大类。 2 0 世纪9 0 年代初期,访问控制领域中研究者提出了若干策略中立型的模型, 其中最有影响力的是基于角色的访问控制模型r b a c 。r b a c 模型借鉴了许多为 人们熟知的用户组、权限组以及职责分离( s e p a r a t i o no fd u t y ) 的概念,并且以 角色为中心的权限管理更符合公司和企业的实际管理方式,所以其研究和应用发 展非常快,本文的研究也是在r b a c 模型为基础上进行的。 下面,重点分析一下d a c 、m a c 和r b a c 三个访问控制模型。 2 1 自主访问控制d a c 自主访问控制( d i s c r e t i o n a r ya c c e s sc o n t r o l ,d a c ) 是一种通用访问控制策 略。在该策略下决定用户能否访问某数据对象的依据是系统中是否存在明确授 权,如果授权存在则允许访问,否则访问被禁止。每个对象都有且仅有一个属主, 对象属主有权制定该对象的保护策略,有选择的与其他用户共享1 1 1 。 山东大学硕士学位论文 自主访问控制d a c 机制允许对象的属主来制定针对该对象的保护策略【2 j 。 通常d a c 通过授权列表( 或访问控制列表) 来限定哪些主体针对哪些客体可以执 行什么操作,如此将可以非常灵活地对策略进行调整。 自主访问控制中,用户可以针对被保护对象制定自己的保护策略。每个主体 拥有一个用户名并属于一个组或具有一个角色,每个客体都拥有一个限定主体对 其访问权限的访问控制列表a c l ( a c c e s sc o n t r o ll i s o ,每次访问发生时都会基于 访问控制列表检查用户标志以实现对其访问权限的控制。【2 1 根据对象属主管理对象权限的程度,自主访问控制策略可以进一步细分: 1 、严格的自主访问控制( s t r i c td a c ) :对象属主不能让其他用户代理对象 的管理权限,即只有对象属主才能授予对象权限,或从其他用户收回权限。 2 、自由的自主访问控制( 1 i b e r a ld a c ) :对象的所有者不仅可以把对象的权 限授予其他用户,也可以把对象的管理权让其他用户代理。对象的管理权传递的 次数包括一次传递、二次传递与多次传递等多种。多次传递的自由的d a c 策略 虽然允许对象属主把对象的管理权限转让给其他用户,但是属主权不能转让。 3 、属主权可以转让的自主访问控制:在属主权可以转让的自主访问控制策 略中,对象的管理权限与属主权都可以转让。在某些特殊情况下,如系统删除了 某个用户但想保留该用户创建的对象,对象的属主权就应该可以转移给其他用 户。某对象的属主权转让以后,原先的属主就不再拥有该对象的属主权。 存在的问题:d a c 允许使用者在没有系统管理员干涉的情况下对他们所控 制的对象进行权限修改,这就使得d a c 容易受到特洛伊木马的攻击。木马在对 象的属主不知情的情况下,可以直接冒充属主给攻击者授权,或将信息表示成攻 击者可以访问的某种方式,从而绕过访问控制机制,达到窃取或篡改、破坏的目 的。而强制访问控制( m a c ) 可以有效的解决这个问题。 2 2 强制访问控制m a c 与d a c 不同,m a c 策略不再让普通用户进行访问控制的管理,而是把所 有的权限都归于系统集中管理,保证信息的流动始终处于系统的控制之下。强制 访问策略中每个主体和客体均有相应的安全属性,如主体的可信度与客体安全标 签。系统根据安全属性来控制主体对客体的访问。主体的安全属性一般由管理员 山东大学硕士学位论文 皇曼曼曼曼曼曼曼曼量皇量量量量曼曼曼曼曼曼曼曼曼量曼曼鼍曼曼曼皇皇m | mm 一m 皇 nm _ 寡 指定,大量客体的安全属性既可以由管理员直接指定,也可以根据一定的规则自 动生成。一般主体不能随意更改客体的安全属性。 强制访问控制( m a n d a t o r ya c c e s sc o n t r o l ,m a c ) 由b l p ( b e l l 和l a p a d u l a 建立1 模型发展而来,它要求所有用户遵守由数据库管理员建立的规则,是基于 被存取对象的信息敏感程度( 如用标签来表示) 以及这些敏感信息可以赋予该存 取主体的存取权限来进行权限控制的,对于不同类型的信息采取不同层次的安全 策略。主体和客体被赋予不同安全级,安全级包含两个元素:密级和范围。主体 的安全级反映主体的可信度,客体的安全级反映客体所含信息的敏感程度。 其基本思想是通过给主体( 用户) 和客体( 数据对象) 指定安全级,并根据 安全级匹配规则来确定某主体是否被准许访问某客体。安全级l 包括两个元素: 密级( c l a s s i f i c a t i o n ) 和范围( c a t e g o r i e s ) 。主体的安全级反映主体的可信度, 客体的安全级反映客体的敏感度。m a c 主要采用以下规则分别保证信息的机密 性和完整性。为了保证信息的机密性,要求:( 1 ) 无上读,主体仅能读取安全级 别受此主体安全级别支配的客体的信息:( 2 ) 无下写,主体仅能向安全级别支配 此主体安全级别的客体写信息。为了保证信息的完整性,要求:( 1 ) 无下读,主 体仅能读取安全级别支配此主体安全级别的客体的信息:( 2 ) 无上写,主体仅能 向安全级别受此主体安全级别支配的客体写信息。上述规则保证了信息的单向流 动。将m a c 应用于r d b m s 会产生多级关系和引出多实例化问题,故支持m a c 的d b m s 也称为多级安全d b m s 。【3 】 m a c 主要遵照2 个规则实施存取控制。不准上读:主体只能读安全级受其 安全级支配的客体;不准下写:主体只能写安全级支配其安全级的客体。 m a c 基于安全等级实现存取控制,能够防止特洛伊木马和隐通道这些巧妙 的攻击。但强制控制并没有完全解决特洛伊木马问题,还有其他方法可以从 s e c r e t 级程序向u n c l a s s i f i e d 级程序进行信息传递。i a l 2 3 m a c 与d a c d a c 的优点是简单、灵活,在一定程度上实现了多用户环境下的权限隔离 和资源保护,易于扩展和理解:缺点是很难控制已授出去的访问权限,易遭受特 洛伊木马等旁路攻击。为了增强数据库系统的安全性,需要对授权传播进行限制。 山东大学硕士学位论文 h r u 访问控制模型对其进行了改进,其基本思想是采用客体主人自主管理该客 体的访问和安全管理员限制访问权限随意扩散相结合的半自主式的资源管理方 案。 m a c 的优点是能够防止特洛伊木马和隐通道的攻击以及防范用户滥用权 限;缺点是配置粒度大,缺乏灵活性而且强制性太强,使得应用的领域比较窄, 一般只用于军方等具有明显等级观念的行业或领域。美国s e c u r e c o m p u t i n g 公司 对其进行了改进,提出了t e ( t y p ee n f o r c e m e n t ) 控制技术,该技术把主体和客 体分别进行归类,它们之间是否有访问授权由t e 授权表决定。t e 授权表由安 全管理员负责管理和维护。 自主访问控制太弱,然而强制访问控制太强,假如有1 0 0 0 个主体需要访问 1 0 0 0 0 个客体,则须1 0 0 0 万次配置,实现的访问控制工作量很大。所以,强制 访问控制和自主访问控制有时会结合使用以弥补上述不足。例如,系统可能首先 执行强制访问控制来检查用户是否有权限访问一个文件组( 这种保护是强制的, 也就是说这些策略不能被用户更改) ,然后再针对该组中的各个文件制定相关的 访问控制列表( 自主访问控制策略) 。 2 4 基于角色的访问控制r b a c 基于角色的访问控制r b a c ( r o l eb a s e d a c c e s sc o n t r 0 1 ) 的基本思想是通过 将权限授予角色而不是直接授予主体,而主体通过角色指派来得到客体操作权限 从而实现授权。由于角色在系统中具有相对于主体的稳定性,并具有更为直观的 理解,从而大大减少系统安全管理员的工作复杂性和工作量。【8 】【9 1 山东大学硕士学位论文 删t : 图2 1 基于角色的访问控制模型【8 】 f i g u r e2 ir o l eb a s e da c c e s sc o n t r o lm o d e l i m a c 9 6 模型的形式化定义: u ,r ,p 和s ,分别代表用户集合,角色集合,权限集合和会话集合; p a c p r ,一个多对多的权限指派给角色的关系; u a c u x r ,一个多对多的用户指派给角色的关系; r h c r x r ,一个角色层次的偏序关系: u s e r :s u ,一个函数映射,表示每个会话s i 都与一个用户关联,这个关联 一般在会话生命周期中都不会更改; r o l e s :s 一2 r ,一个函数映射,表示每个会话都与一个角色子集关联: r o l e s ( s i ) r l ( 了r r ) ( u s e r ( s i ) ,r ) eu a ) ; c o n s t r a i n t s :约束集合。 r b a c 中涉及的基本元素包括用户( u s e r ) 、角色( r o l e ) 、访问权( p e r m i s s i o n ) 和会话( s e s s i o n s ) 。r b a c 与传统访问控制的差别在于在用户和访问许可权之间 引入了角色这一层。角色是一组用户和一组操作权限的集合,角色中所属的用户 可以有权执行这些操作权限。用户与角色间是多对多的关系,角色与访问许可权 山东大学硕士学位论文 之间也是多对多关系。当用户登录到r b a c 系统时会得到一个会话,这个会话 可能激活的角色是该用户全部角色的一个子集。角色可以根据实际的工作需要生 成或取消,而且用户也可以根据自己的需要动态激活自己拥有的角色,这样避免 了用户无意中危害系统安全,而且容易实施最小特权原则。由于数据库应用层的 角色的逻辑意义更为明显和直接,因此r b a c 非常适用于数据库应用层的安全 模型。 r b a c 的优点主要在以下几个方面: 3 1 ( 1 ) 角色控制相对独立,根据配置可使某些角色接近d a c ,某些角色接近 m r a c 。因此r b a c 既可以构造出m a c 系统,也可以构造出d a c 系统,还可以 构造出同时具备m a c 和d a c 的系统。 ( 2 ) r b a c 是一种策略无关的访问控制技术,它不局限于特定的安全策略, 几乎可以描述任何的安全策略,甚至d a c 和m a c 也可以用r b a c 来描述。 ( 3 ) r b a c 具有自管理的能力。利用r b a c 思想产生出的a r b a c ( a d m i n s t r a t i v er b a c ) 模型能够很好地实现对r b a c 的管理。 本章小结: 本章介绍了自主访问控制( d a c ) 、强制访问控制( m a c ) 和基于角色的访 问控制( r b a c ) 三个最典型的访问控制模型,并对各访问控制模型的优势和不 足进行了对比分析。d a c 容易受到特洛伊木马的攻击,自主访问控制太弱,然 而强制访问控制太强,m a c 实现的访问控制工作量太大,r b a c 模型引入了角 色,由于角色在系统中具有相对于主体的稳定性,并具有更为直观的理解,从而 大大减少系统安全管理员的工作复杂性和工作量,r b a c 模型的突出优势确定了 课题以r b a c 模型为基础进行研究的目标。 山东大学硕士学位论文 第3 章x m l 技术 数据库领域的一个重要发展就是半结构和自描述数据的引入,其中最具有代 表性的就是遵循x m l 格式【2 7 】的数据和这种类型数据的集合。同时,由于x m l 具有良好的可扩展性和平台无关性,x m l 越来越广泛的被应用于应用集成和系 统间通信。这些原因使得x m l 文档中存储的信息量急剧增加,信息的敏感程度 也大幅增强。在这样的背景环境下,x m l 文档的安全问题逐渐凸现出来。【2 8 】关 于x m 的安全,不同的研究组织已经在各个方面都作了不少的工作,甚至出现 了一些x m l 安全方面的标准,例如x m l 签名,x a c m l 等。 3 1x m l 概述 h t m l ( h y p e r t e x tm a r k u pl a n g u a g e ,超文本标记语言) 以其简单易学、灵活通用 的特点在互联网上得到了广泛的应用,使网络用户发布、检索以及交换信息更加 方便。但是随着互联网上的信息日益丰富、资源类型越来越复杂,传统的h t m l 的不足就越发明显。例如,h t m l 只能简单的显示资源内容,无法表达资源内容 的含义;缺乏对一些特殊对象的有效支持:缺乏良好的可扩展性。 实际上h t m l 是s g m l ( s t a n d a r dg e n e r a l i z e dm a r k u pl a n g u a g e ,标准通用标记 语言) 的一个简单子集。s g m l 功能强大,可扩展性也很好,但是由于他过于复 杂,开发成本高,无法再互联网上普及。于是兼有强大的功能、良好的扩展性以 及简单结构的语言- - x m l ( e x t e n s i b l em a r k u pl a n g u a g e ,可扩展的标记语言) 随之 诞生。x m l 是由w 3 c 组织于1 9 9 8 年2 月发布的一个标准,它专注于描述数据 的内容,具有很好的开放性。x m l 和s g m l 都是元置标语言( 可以定义其他置 标语言的语言) ,x m l 是s g m l 的一个子集,x m l 比s g m l 更容易实现,更容 易普及1 2 1 。与h t m l 注重于w e b 上的信息发布不同,x m l 主要是用于在w e b 数据的交换和存储。x m l 技术与数据库领域的许多理论和技术密切相关,如数 据查询与存储技术。 与h t m l 相比,x m l 具有以下优点【1 0 1 : 9 山东大学硕士学位论文 可扩展性:x m l 允许用户根据应用自行定义标签,而不像h t m l 那样使用 固定的标签。 结构化特性:x m l 文档的实现是一种树形的结构,通过标签的嵌套,x m l 可以描述任意层次的文档结构。 可校验性:一个x m l 文件可以包括一个语法描述,使应用程序可以对此文 件进行结构确认。而h t m l 没有提供规范文件以支持应用软件对h t m l 文件进 行结构校验。 可检索性:通过标准的x m l 解析器,可以精确而快速地检索x m l 文档的 内容。 平台无关性:x m l 完全是一种文本的实现方式,不依赖于任何平台。 x m l 的这些优点,使得它非常适合于数据描述和跨平台的数据交换。运用 x m l 可以有效地解决新旧系统、不同应用系统之间或者不同数据源之间的数据 共享与交互的问题。目前x m l 发展非常迅猛,随着j a v a , d h t m l 等对x m l 的 支持,x m l 正在成为w e b 上数据描述和数据交换的标准。 x m l 文档是树型层次结构的,它的基本成员是元素,通过组织元素将许多 相关信息组合成一个文件。【儿1 图3 1 是一个记录公司职工信息的x m l 文档实例 职工x m l 。虽然一个x m l 文档包含的信息都是相互联系的,但是这些信 息的敏感程度可能不相同。例如,职工x m l 中职工的 信息可能比较敏 感,普通用户虽然可以查看职工的 、 等信息,却不能查看职工的 信息,而另一些高级用户却可以查看职工的所有信息。此时,文档中的不 同元素必须被设置成不同的安全属性,以区别对待。因此,我们需要细粒度的访 问控制模型来控制用户对x m l 文档中信息的访问。这个模型不仅要能在文件级 别控制用户对x m l 文档的访问,还要能精确的对文档中的元素甚至是元素的属 性进行访问控制。 科技 处长 8 2 3 2 0 0 0 1 1 8 0 0 0 山东大学硕士学位论文 皇曼鼍曼量皇曼皇曼皇曼曼曼曼量量曼量曼皇舅曼皇量曼鼍i m 一n 一一m 一一m n ln u 鼍曼量量曼葛 办公室 科长 8 2 3 2 0 0 1 5 8 0 0 0 图3 1 职工信息儿描述文件职工x m l f i g u r e3 1x m ld e s c r i b ed o c u m e n t e m p l o y e e x m l x m l 是一套定义良好的作用于简单文本的规则,x m l 文档中主要包含标签 与文本。标签定义了文本健值,它可以包含关于任何主题的数据。而文本则可以 以以下形式存储和表达:存储于磁盘上普通文件;基于唧协议发送的消息; 某一编程语言中的字符串;数据库中的文本b l o b ( b i n a r yl a r g eo b j e c t 的缩写, 意为二进制大对象) ;任何其他文本数据可被使用的地方。 x m l 文档应被视为分级的树结构,如图3 2 所示: t o m w o l f e t h er i g h ts t u f f $ 6 0 0 r o o t l l lil l a u t h 。p il “t o mt h er i g h t w o l f e ”汕”“s 6 0 0 图3 2x m l 文档树形结构【1 l 】 f i g u r e3 2t h et r e es t r u c t u r eo f x m ld o c u m e n t x m l 文档有两个基本要求:格式良好的和有效的。格式良好的x m l 文档 需要遵循一些语法规范,例如,一个x m l 文档中有且只有一个元素完全包含所 有其他的元素,元素可以嵌套但是不可以交叉等等。有效的x m l 文档关联个 关于格式和内容的验证描述文档,并且遵循验证描述文档所规定的结构规则【1 1 1 。 山东大学硕士学位论文 3 2x m l 文档访问控制技术 3 2 1d t d 与s c h e m a d t d 和x m ls c h e m a ( x m l 模式) 【1 3 】【1 4 】【1 5 1 是两个主要的验证描述机制。在 验证和使用x m l 文档之前,x m l 文档必须被x m l 解析器解析。解析器的作用 就是使得x m l 数据结构中包含的数据可以被其他应用程序使用。 3 2 1 1d t d “尽管x m l l 0 提供了一种机制,即d t d ( d o c u m e n tt y p ed e f i n i t i o n ,文档 类型定义) ,来规范x m l 中置标的使用规则,但是,x m l 文档处理的自动化却 要求有一种更为严格、更为全面的解决方案。关于这方面的需求,包括:如何使 一个应用程序的不同模块间能够互相协调,以及对文档结构、属性、数据类型等 的约束等等。w 3 cx m ls c h e m a 工作组正致力于制定定义x m l 文档的结构、内 容和语义的方法。摘自w 3 c x m l 工作进度报告” d t d 源于s g m l 规范,同时也是x m l l 0 规范的重要组成部分,它描述了 x m l 文档结构的一系列规则。d t d 的出现赋予了x m l 文档可扩展性、结构性、 和可验证性。但是,它也有一些缺点,比如它采用了非x m l 的语法规则、不支 持多种多样的数据类型、扩展性较差等等。因此提出了x m ls c h e m a ,在保留并 扩充了d t d 原有的文档结构说明能力的同时,以期解决d t d 与生俱来的种种问 题。 3 2 1 2 s c h e m a 的优点 d t d 出现的时间比较早,许多系统都在使用,但是与之相比,x m ls c h e m a 有许多明显的优点。事实上,s c h e m a 也是x m l 的一种应用,它是将d t d 重新 使用x m l 语言规范来定义。这从某种意义上讲,充分体现了x m l 自描述性。 一致性 学习d t d 时,大家一定己经在抱怨d t d 的书写结构和x m l 文件的结构仿 佛有着天壤之别,后者清晰直观,前者复杂晦涩。s c h e m a 建立在x m l 之上, 它的样子和一般的x m l 文件完全相同,使得x _ m l 达到了从内到外的完美统一。 现在,读者不必再为了搞懂d t d 而去重新学习,节省了宝贵的时间;另一方面, 因为s c h e m a 本身也是一种x m l ,可以被现有的x m l 编辑制作工具所编辑、被 山东大学硕士学位论文 x ,语法分析器所解析、被x m 应用系统所利用,既有投资得到了最大程度 的保护。 扩展性 如果你只是一个文档编辑人员,平常只进行一些文档的操作或w e b 页面的 设计,那么你可能对数据类型不太敏感。但是,没有数据类型,无形之中大大增 加了程序员的开发难度和工作量。虽然d t d 中也定义了一些数据类型,但那都 是针对属性类型而定义的,而且类型非常有限。电子交易过程中不可避免地会出 现大量的数据转换,整型、实型、布尔型、日期型的数据层出不穷,d t d 显然 招架不住。好在s c h e m a 对d i d 进行了扩充,引入了数据类型,很好地解决了这 一问题。 易用性 x m ls c h e m a 取代d t d 的另一个原因要归结于d o m ( d o c u m e n to b j e c t m o d e l ,文档对象模型) 和s a x ( s i m p l e a p i f o rx m l ) ,你不可能期望通过d o m 或s a x 来判定一个元素的属性类型或者某个元素的子元素允许出现的次数( 当 然,这都是x m l 分析器的本职工作) 。但是,一旦有了s c h e m a ,这个问题便不 复存在。 规范性 同d t d 一样,s c h e m a 也提供了一套完整的机制以约束x m l 文档中置标的 使用,但相比之下,后者基于x m l ,更具有规范性。s c h e m a 利用元素的内容和 属性来定义x m l 文档的整体结构,如哪些元素可以出现在文档中、元素间的关 系是什么、每个元素有哪些内容和属性、以及元素出现的顺序和次数等等,一目 了然。 互换性 正如每个人都可定义自己的d t d 一样,读者也可根据需要设计适合自己应 用的s c h e m a ,并且可以同其他人交换彼此的s c h e m a 。利用s c h e m a ,我们能够 书写x m l 文档,验证文档的合法性。另外,通过映射机制,还可以将不同的 s c h e m a 进行转换,以实现更高层次的数据交换。 由于以上原因,现代的x m l 描述都是基于s c h e m a 的。同时,x m l s c h e m a 的改进也导致了灵活的s c h e m a - b a s e d 的访问控制策略的出现。由于d t d 的局限 山东大学硕士学位论文 性,基于d t d 的权限是非模块化的,缺乏可拓展性和可重用性。因为d t d 本身 不是x m l 格式良好的和有效的,关于x m l 文档和d t d 的访问控制策略必须分 开实现。使用s c h e m a ,我们可以用统一的机制定义和实施关于s c h e m a 对象和 x m l 文档对象的权限。另外,在一个分布式环境中,使用纯的x m l 技术可以 方便的集成来自不同服务和部门的授权,因为基于s c h e m a 的策略是可拓展的和 可重用的。 图3 3 是职工x m l ( 图3 1 ) 的x m ls c h e m a 文件职工x s d 。 e l e m e n t t y p en a m e = ”部门”c o n t e n t = ”t e x t o n l y ”d t :t y p e 2 ”s t r i n g ”胗 图3 3 职工信息x m l 模式文件一职工x s d f i g u r e3 3x m ls c h e m ad o c u m e n t

温馨提示

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

评论

0/150

提交评论