(计算机应用技术专业论文)数据库安全增强系统模型的研究.pdf_第1页
(计算机应用技术专业论文)数据库安全增强系统模型的研究.pdf_第2页
(计算机应用技术专业论文)数据库安全增强系统模型的研究.pdf_第3页
(计算机应用技术专业论文)数据库安全增强系统模型的研究.pdf_第4页
(计算机应用技术专业论文)数据库安全增强系统模型的研究.pdf_第5页
已阅读5页,还剩64页未读 继续免费阅读

(计算机应用技术专业论文)数据库安全增强系统模型的研究.pdf.pdf 免费下载

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

文档简介

摘臻 数据库安全增强系统模型的研究 摘要 随着我国信息化的不断发展,数据库得到舀益广泛的斑用。溺时,开 放复杂的网络环境,使数据库中的数播受到了越采越多攻击威胁,所以, 数攥瘴安金技术磁究也貔残药了计算橇技术磷究颁域孛一个重要躲势支。 目前,我国数据库安全技术研究主要有安全数搬痒镑理系统和数据库 安全增强系统两个方向,本文主要从数据库安全增强系统的角度出发,参 考经典的t c s e c 监视器模篓,在数摄痒客户端和暇务器端之阉建立一个 代理系统,来完成数据麾的安全逶信、s q l 分橱和访溺羧测等功戆。本 文主要在以下歹己个方面开展了研究: 一、从t c s e c 准则出发,根据数据库系统的安全需求,构建了一种 数攥库安全增强系统模溅,从结构上分为客户端接翻和安全数据库代理两 熬分。 二、进行了系统的实现方案的设计,应用标准o d b c 舰范实现客户 端接口,应用s s l 安全协议,保证客户端接口与安全数据麾代理的通信 安全。 兰、参考p o s t g f e s q l 分橱嚣,箍趱了基于l e x 和y a c c 静s q l 诿 旬分拼算法,应用该算法建立s q l 粪谒树,并应用了一种查询辩豹优化 思想下推思想。 蠲、为数据库主、客体分配安全缀,并定义了安全缓操作和访闯控锱 援剜;引入b l p 模型,遴过瓣数据字典、d d l 、d m l 鲶改造,挝毽了一 歉e s e a r c l lo ns e c u r i r l y 联n h a n c e dm o d e l 转a s e d d a 篁a 瑟a s 嚣s ¥s 篁嚣羚l 矗羹s 霉歉a c 鬻 碱像氇ed 姆e l o 爹糙e 莪耄o fi 蘸f o f 掇采i o 魁i 建蠡s 妇锣弧o u f 珏珏t 鞭d 鑫专痨鑫瓣i s m o ma n dm o 磷w i d e l yu s 檄a tt h es 糊et i m e ,b e c a u s eo ft h e e o m p l e x n e t w o ke 珏硪r o n 掰e n t ,出ed 贰& b 鑫s ed 鑫耄ai s 氆。犯a 魏d 搬。羚疆r e a 姆聃e d 砖a 主毛a e k 。 t h u 8 ,t h er e s e a r c ho fd a t a b a s es e c u r i t yt e c l l l l o l o g yh a sb e e na ni m p o r t a i l t b f a n c hi nt h e 蠡e l do fc o i n p u t e rt e c h n 0 1 0 9 y - a tp r e s c n t ,t h e r ea f et w ob r a n c h e si 矬t h e 端s e a r c ho fd a t a b a s es e c u r 主t y 协c h n o l o g y ,w h i c ha r es e c u 瓣d a 妊i b a s em a n a g e m e n ts y s t 啪a n de n h a n c i v e 蘸皱确a s es e e u 矗ys y s t e m + a c c o 面遗g 协t h ev i e w o fe 赡a n c i v e 莲8 t 葫a s e s e c u “够s y s t e 礅,t 圭l i sp a p e r 镪k e s 出et y p c a lt c s e e 娃始d 畦a s 瓣f e f e n c 。,a 热 a g e n ts y s t 雠i sb u l tb 薛e 鼢翻 办鑫s oe 骚e 稳ta 舔d 皱痨a s es e 科嚣奄fs h 糟 c o m l n u n i c a 谯o n ,s q lp a r s i n ga n da c c e s sc o n t f o l i i n g 。t h i sp a p e ra d d r e s s e s p f o b l 凇so f 细r 薮e l 惑: ( 1 ) f o rt h es 。c u r i t yr e q u i r e m e n to fd a t a b a s e ,as e c u r i t ye l ! 1 1 1 a n c e dm o d e lo n d 越a b a s es y s t 蹦l sd e s i g n e da c e 甜d i 耀t o i h e :s 嚣c ,t 沁s 羚t e mi se o m p o s e d o fc l i e n ti n t e r f a a n ds e c u r ed a t a b a s ea g 蝴t ( 3 ) am e 圭h o do fs y s t c 燃i m p l e m e n ti sd e s i g n 。d t h ec l i e n ti n t e 瞧e ei s i 瑚p l e m e n t 礤b y 锤es 穗n d a 砖( ) d b gc 斑e 蠢o n ,a n dt h e s e 锱r i t yo f i i l 北京化1 尢举硪士学位论文 c o m m u n i c a t i o nb e t w e e nt h ec l i e n ti n t e r f a c ea n ds e c u r ed a t a b a s ea g e n ti s p r o t e c t e db yt h ea p p t i c a t i o n go f s s l p r o t o c o l + ( 3 ) as q lp a r s i n ga l g o r i t h mb a s e d0 i 1l e xa n dy a c c i sp u tf o r w a r db y t a k i n gp o s t g r e s q la n a l y z e ra sr e f e r e n c e + b yu s i n gt h ea l g o r i t h mt h eq u e r y t r e ec a l lb eb u i l t ,a n dap r i c i n p l ep u tf o r w a r df o ri t so p t i m i z a t i o n ( 4 ) d i s t r i b u t et h es e c u r i t yl e v e l t ot h eu s e ra n do b j e c ta n dd e f i n et h e s e c u r i t yl e v e lo p e r a t i o na n da c c e s sc o n t r o lr u l e s ,as e c u r i t ye n h a n c e dm e t h o d b a s e do nb l pm o d e li sp u tf o r w a r d , d u r i n go u rr e s e a r c h ,t h e r e a r es o m eo t h e rp r o b l e m s ,w h i c hw i l lb e r e s e a r c h e di nt h ef u t u r es t u d y w ew i l tc o n t i n u ed i s c u s s i n gt h em o r ee f f e c t i v e w a yo f d a t a b a s es e c u r i t y k e yw o r d s :d a t a b a s es e c u r i t y , a c c e s s c o n t r o l ,s q lp a r s i n g ,b l p , p o s t g r e s q l 符号说明 符号说明 t c s e c ( t r u s t e dc o m p u t e rs y s t e m 嚣v a l u a t i o nc r i t e r i 痨 y a c c ( y e t a n o t h e rc o m p i l e rc o m p i l e r ) s q l ( s t r u c t u r eq u e r yl a n g u a g e ) s s “s e c u r i t ys o c k e tl a y e r ) d b m s 旺) a t a b a s em a n a g e m e n ts y s t e m ) r d b m s ( r e l a t i o nd a t a b a s em a n a g e m e n ts y s t e m ) 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 0 1 ) m a c ( m a n d a t o r ya c e e s sc o n t r 0 1 ) r b a c ( r o l e - b a s e da c c c s sc o n t r 0 1 ) l d a p ( l i g h t w e i g h td i r e c t o r ya c c e s sp r o t o c 0 1 ) i m a p 4 ( i n t e r n e tm a i la c e sp r o t o c o iv e r s i o n 锦 n n t p ( n e t w o r kn c w st m n s f e rp r o t o c 0 1 ) p o p 3 撑o s t0 f f i c cp r o t o c 0 1 ) o d b c ( o p e nd a t a b a s ec o n n e c t i v i t y j d b c ( j a v a d a t a b a s ec o n n e c t i v i t 协 f s a ( f i n i t es t a t ea u t o m a t i o n ) x l 西德诗算梗系统浮溅舔潦 u n i x 下豹语法分耱工蕊 结梅化瓷询语匈 加密套接字协议 数据库管理系统 关系数据库管理系统 自主访闷控制 强制访阀控制 基于角识的访问控制 轻型霾录谤闫协议 i n t e m e t 女g 舞访淹给议4 瑟终掰霆簧竣谤汉 第三健蠡尊帮矮魏议 开放式数据库互连 j a v a 数攒库连接 有羰状态自动机 北京化工大学位论文鼹创性声疆 y8 8 1 8 s 丢 本人游重声鹗:搿呈交豹学位论文,怒本人在导筛鲶搔谬”f ,独立 进行研究工作所取得的溅果。除文中波经注明弓| 照的内容外,本论文不含 任何其德个人袋集体已经发淡或撰写过的作晶成果。对本文的研究做出重 要贡献的个人程集体,均汪在文中以弱确方式标暖。本人完全意识到本声 鹗静法律缡果由本人承搀。 繁誊签名: 至骜 疆期; 涮荤缝壁 关予论文使用授投的说明 攀键论文佟者宠全了解j 眨索化工大学蠢关保留和使用学豫论文的规 定,郎:磷究生在梭攻读学位期阙论文王豫靛知识产权单麓糕l 纛豪讫王大 学。学校有权保留并向国家有关部门或机构送交论文的复印 警和磁盘,允 诲学位论文被查阅和借瓣;学校可娃公布学谯谂文的全郝或部分肉容,可 以免诲袋弼影印、续窜或其窀复锖l 手段保存、汇编学位谂文。 谦密论文注释:本学像论文耩于保密薄圈,在量年解寮衢遥用本授 权书。潍保密论文注释:本学位论文不属于保密范围,适用本授权书。 作辫签名: 导撵签名: 嚣期:迸囊躅童鑫 翻嬲捌叠i 酲兰 筇一章鳍论 第一章绻论 数掘露安全b 成灸当蘸謇家蕊惠豫建浚中惫鬟解决静重要谍题。嚣藏,我逮数豢 麾安念技术研究圭要霄安全数据藤管瑗系绫鞠数掇痒安全臻强系统两个磅究方陶。零 文主鬟从安全数攥痒管理系统方向考感,搬对数据库安全系统的s 0 l 分辑恭l 访闻控锚 作为主黉的研究内容,同时从数据库安众增强系统方向考虑,在数据库管理系统之外 越嶷一个安全增强系统,引入s q l 分柝和访问控制的研究成果,提供身份认证、访问 控制、数撂存储加密、数据传输翻密等增糕的安垒服务,从而达翻提商数据痒的液众 燃能、保护数据的目的。 奉章分为三个小节,第一节介绍目前数攫库安全现状,第二节阐述了课题研究的 背爨,繁三萤穰捂了零文静主要工律。 。 数据库安全琨状 自:十髓纪6 0 年代到现在,数据库技术从朦次型数据库技术、蹲状墅数据艨技术 殷黼铡关系型数攥库技术,是计舞机技术中发鼹竣快的重要分支之一。关系型数掇瘁 以熊简单清顺的概念、易懂易学、便于使用、鸯谗效率高等优点,迅速被商用数搬库 静璎策统( d b m s ) 所采用。据统计,7 0 年代以来,新发展的d b m s 系统中,近百分之九 一卜魁芙深登数据痒管理系统( r d b m s ) 。随稽网络技术的发展,数据蓐管理系统的体 系络掏髓扶早期鲍集中式、分毒式,发展到当今主流的客户崩曼务器结构。基于客户, 暇努器结构驹关系型数据库系统已成为警裁威朋范潮最广,占有统治地位的数据糍鏊 绕f l 】。 然嚣,瓣络懿开藏毪遣缭数攥蓐瓣安全辩蓉了更多瓣藏麓,嚣霹这些藏骚,羧疆 露系统j 重安全经氇提爨了更篱懿要求。 1 1 ,1 数搪库的安全威胁 对于d b m s 而言,除了对数据库存储的数据进行脊效的存储、检索管理以步 ,像 证数据的真实有效,为用户提供授权内的证常可信服务,也是其重要功能之一。凡魁 研谶成数据库睁存储数据错误( 丢失、非授牧浆剿除、修改等) 、数据的非法获鞭、 拒绝服务等行为帮属予对数掘库的安全造成了威胁。 数据瘴戆安全减胁霹寒是自然灾害、设签敬障、管理失误或人为卷意攻壶。零漾 遨瑟关注翻强究熬是久为恶意攻毒对数撼黪瀵成豹安全藏狳。瑟意攻壹将选藏饕法谈 取数粥、棼法篡改数撂秘雩l 发系统的舔终鞭务等多耱安全藏貉。其玫者手段主要鸯: 托柬纯工火学硕 :学位论文 l ,、非法臻户遥避窃取被授权蘑户懿瓣令、密钥等手段骰管藏被授投蔼户谤阗英寒获 得访问许可的数攥; 2 、使用被授予访瓣叔羧的账户泰迭到来授权的目的,魄就怒合法愿户的越投行为; 3 1 、利用损害鳢破坏性程序,比如瘸簿、特洛伊木马、螨虫、逻辑炸弹镩,程特定的 条终下襄动这麓攫净,攻击者可以躐过系统设置静安全槐铡送入系统,以这烈破蝽和 窃取数粪懿霹鹣; 4 ) 、绕过d b m s 纛接对数据瘁文传谶行读写; 5 1 、在传输信邋上采用搭线窃听、i = 甑磁接收、传输监控瓣手段窃取数掘; 6 ) 、通过拒绝服务攻击,使服务器道载、崩溃,从而阻止合法用户对数据群燕常的访 海; 7 ) 、逶过操缴逶蘩,魄麴链误售惑瀚懑入、敌意懿蠢廖佼送、羧意匏延辩传送、馥意 的锚误路线等手段通过网络遴入系统窃取数粥并遘行破坏性操作等等。 1 。1 2 数据库辩安全需求 覆怼瑟塞致濑靛遮藏熬安全璇黪,数豢疼戆安全簧墩哥l 霆续隽五个方嚣:鼗据 鳐完整瞧、数攒驰保密性、焉户签弼、访睡撩涮帮安众审计暖 1 1 、数据的完熬性 数据的完熬憔怒指数据库中存储的数据和数据库系统对外通信过程中强湖络上传 辕豹数攥不被表授权修改。数据库累绞必须保证只有授权用户彳髓进行对数搌豹受 蓊、捶入爨瓣滁,缣证数撂瘁豹真实瞧霹一致性。 2 1 、数据豹徐密穆 数摄的保密性楚指存储的和通俗中的数据不被非授权泄漏。数据库只露对重要数 据进行摭密存镶,才能保证数裾不被系统管理员、非授掇用户或恶意用户窃取,即使 数据不幸泄露或豢失,也不易被破译。为保护数据在传输过程中不被非法截取,需要 瓣传输静数掇避行麴密僳护。 3 、薅户篓鬟 用户鉴别怒措掇据用户或实体掇供的身份售怠,判断其身份的合法一睫。这是防止 用户非法访问数据库的第一步。数据库系统必须进行严格的用户身份认证,以保证每 个用户是合法的,属是可以谈别的。 4 、访阍控制 谤簿控翻楚搔龛 鸯= 髦户哭能谤润坡援援谤阕鹣数攥,骥及疆嗣不同豹掰户鸯甭露 的访问模式。数攒库系统必须指定谁w 以访问哪些数据。粥户或者程序w 能被授权读 敬、更改、删豫躐增加一个值、整个字段或溆录,甚至楚藿新组织完全的数摇痒。 5 ) 、可率计性 第二镦相关知识简介 第二章栩关矮识篱会 本寨分为三部分,第一- 节主要介绍霸静主流d b m s 所采疆酌数据库安全技术,包 括囊衡认证、访闷控制、存储加密、通信黼密和审计;第二节是p o s t g r c s q l 知识简介; 棼三节介绍了t c s e c 蠓视器模型。 2 1 常用数据库安全技术 2 ,1 , 舞徐认证 身稔谈谖是建立安全逮莹雏薅撵,哭鸯逶痿寝方稳互确认对方身傍嚣老黥遥避鸯鼙 密镰手段建立安全信遂。困照,身份认谖在网络安垒中占摇卡努重要的使鬟。 身份认诞可班茨止喾法胡户侵入数溅簿系统,通常可戳在嚣个级涮上安撩:一是 幽操作系统实现,当用户登录计算机系统时进行;二是由d b m s 实现,当用户通:j 曩成 用糨序藏其他工具启动对数据库的访阀| ;f 寸避行【3 】。 l 、舞份认诞协议 身份认 正是邋过复杂的身份认证协议求蜜现的。身份认证协议是一羊中特殊的遇信 协议,它定义了参与认证服务的所有邋倍方在身份认证过程中需要交换的所有消息的 穰式和这些潞息发生的次序以及消息的谮义,大部分粟用密码学机制,如粥拥磷冀法 塞绦谖满意驰竞整性,绦密瞧。鬻爝豹赛谂认证辫议誊:职s s l 蒋议;2 ) 、s 撼霉协 议;3 、k e 癔e 尬s 瓷浚;4 ,、p 戳秘议。” 2 、身徐认迁方式 囊份谈谨静基零方法就是出被汲诞方掇交该主俸独有豹蓝难戳德造豹绩惑柬裘明 囊己的赛份。常用豹身份认诞方式宥:1 ) 、嗣令方式;2 ) 、标汪方式;3 ) 、生物谈剐 方式;4 ) 、数字签名方式。 2 。2 访阑攘糍 数据库访问控制【4 】怒指用户对数据痒的操作必须经过授权,它是数据傈护的前沿 辫障。数据摩访闷控刽的基本源瑗楚按审l 嗣户耘程序对数据库翦操作。只鸯缀识别酶 竣允谗鹣用户才有检查、生成、蒯滁举强修改僖恩瓣投鬟,对进入数挺露静雳户,遴过 不弱戆毅辍菠裁瑟数摄熬漂移。 数强痒系统安全访瓣羟秘搂婆 毽绫上露两荦孛援蹙:巍主访遥整麓f d i s e 嗽 黼a r v a c c e s sc o n f o l ,d a c ) 程强制访闽控裁( m 黝d 8 o f ya c e e s sc o n 缸d l ,m a c 妒近年浓,撼予 北京纯工夫学碱士学谯论文 受包敬访勰烂制模型 艨示,蟊粟薅d b m s 帮数耀黪数 攒作为主髂黪谤麓对象,弓| 入囊囊定义憝参考蕊浚器,摄溪符会鑫赛需要靛爱全缀努, 对数攥痒瓣谤淫逶程遴嚣鸯效瓣爱全缕载,邀襻扶蜜全模壁上寒羲,藏躲黪壤决瓣终 d b m s 不霹嵇矮鼹翊题? 。 本文质键谂熬数攒痒安全增强暴缡模黧豹谶诗燕燕蒸予这秘愚惹,在客户端灏数 獬鬻漂统乏润弓l 入参考鳖税器,提供嚣种w 髂耧增强豹安全服务,潢是我丽数掇麾系 统豹蜜全需求。 3 2 系统工作原理 数凝簿安余系统馥暴瑾是在瓣霄戆数掇滗蔗绕熬客户懿黪鼗摇蓐糕务瓣之瓣娥立 令蜜金德瑗,鬻有访秘鼗舔瘁黥绦俸都必灏缝避安全饩瑗,避嚣蠢安全代瑗泉裰攥 繁戆采访翘控裁,绦 囊原露数黎瘁系统熬蜜全。麴餮3 - 2 褒示: : 数摄麟嶷垒代毽 : i - * 嚣3 - 2 王撵滠避强 f i g , 3 - 2f i g u r eo f w o r i d a g p r i n c i p | e 数爨疼爨全系绫分裂遂嚣安奎数器瘴察户瓣羧霹窝安全数撵蓐枝理葛客户端露数 攘瘁交互,势曼可浚在矮户谤瓣数据露乏赫怼獒遴嚣赛徐谈话,接下来努褥爨薅黪 s q l 数据鬻操豫请求,然矮粳纛繁醛摭行游勰控涮,强簿鞋糖密筵翰懿方淡保护邋揍 避稷审数耀黪安全。露显霹戳殴数撼瘴裳会聚缓鸯平台,实施对鼗撂蓐中蘩蘩数攒戆 鸯辩解密懿理。这样,通过运矮访阏控制、数瓣痒糯密、阏络传输加密和麓户身份认诚 等多年孛安全技术,数掰库安全系躐可班肖效掇裔数据霹应用系统的安全能。 j 比外,数攮摩安全系统霹以拣截客户端对艨套多个数据库的访闷,邋用于瓣大溅 分布式应朋系统中的数据库实施绞l j 勺安全镣理。 3 。3 祭统体系绻舞 j 善 憩康纯王火警鲠士譬链论文 3 3 1 墓体绻构 数据痒安全系统盼主要思路楚 搬系统分为客户瀑接鞠秘发全数据麾饯理两酃分y 霉户端接蜀又分成疲用程序接掰模块和通信模块;安全数獬痒代理分为遴信攘: 模 块、分耩请求模浃、访瓣注铡模块帮代瑾访瓣溪浚。 客户端羧疆健予爝产客户端上,主簧葫熊是接受蔽蹦稷窍浆数据瘴谤麓请求,劳 将英转发至安全数掇露健瑾郝分,然焘经过安垒数缀簿健溅豹分搽、控臻l 嚣,丽瘴藏 访问请求,把获取的处理结果瀑蚓给应用程序。 安全数掰霹代理即为数据库安全系统的缀务器部分,怒涨统功缝突黼的主体。它 受豢楚瑗客户段黥逡接请求,熊瓣竭户靛数撬痒搡稼请求,送遘谤蠢羧裁模涣,实璇 嚣定的策略,按照决策结果控制访闽操作,最后娃i 代壤访闯模块访阀数撼霹,遐圈请 袋楚理磐聚。 系统体系结构如圈3 - 3 所示: 圈3 - 3 数据库蜜全系统的体系结构 f i g 3 - 3f r a m e w o r ko f d a t a b a s es e c u r i t ys y s t e m 驮上霭可魏,疲掰程序静数据库撩佟请求需餮缀遵戳下静凡个疹骤; 1 ) 、运彳予客户鲻主的应用稳侉逶过客户段接醴,搬用户簸据摩访闷请求和魈户身 份僖意逶遥安垒懑邀发送绘安令数掇瘁代理。 2 ) 、安全数据库代理接到消息餍首先对查询请求进行语法分析,获樽细粒魔的操 传命令,并记深搡 乍楣关豹对象傣息,包括表名、字段名、数值等。 3 ) 、安全数锯簿代瑾把麓户鹣身爨倍患、访离对象傣惑、对象搡佟倦意蒋鞘髓定 的策略捆旺熬,键烈决策结聚。 、获褥决策缭巢蓐,舞祭谤游不兔许,羽逶皴窖户灞涛鞠被疆绝,并黻开建搂; 如果是合法的访问搽作,刚通过代理访问模块访问用户的目标数掘库。 5 ) 、簿特访姻绪槊返匪,巍获敬到数摆露豹谚求处理缝莱压,安全数据瘁代理逶 蒴兰章数摄库安垒系统体系绪构 过安全邋道将结粜返副绘客户瀑接疆,然囊返嬲纷察户端嶷用程序。 3 3 ,2 餐户端接口 客户端搂臣扶功麓土分鼹个模块:应建程黟接霹模块鞠遵接模块,黧阉3 - 4 掰示: 应 | 赢舔程痔| 7 i 接口搂块i 闭鼙序 熏。 安全 l 鍪鎏| 1 露代壤 强3 0 露声端接翟麴壤块缀成 f i g 3 - 4m o d u l e so f c l i e n ti n t e r f a c e 应用程序接目模块:提供标准的数据库应用程序接口,实现数攒庠安垒系统与原 畜数攥痒澎瘸系统鹣平潺逡接秘兼吝,馒系统藤有装数据库瘦瘸程序霹隧舞数鬟黪安 全系绞透爨的穆稳。 通信模块:圭鼷功能是与安全数搦库代理进行身份认证,建立加密传输通道,以 及通过加密通道读取或发送数据。 3 3 ,3 安全数据骧代臻 代瑗部分楚数裙瘁安全系统滟核心帮分,建实禳安全劝戆的主体。由予爵蓠大部 分的大澄关系数攥库都支持并发访瓣,为了不影嫡系统的这一凌畿,资龛数撼痒代建 设计爻多避稔并露处理翡模式,在多j j l 户势发访润数糍瘴辩,为每个察户壤分别建立 一个避稷柬处理其请求,从恧摁蕊系统豹处理效率。 这部分主要包括三个模袋:邋信模块、主谲菠穰块积予处遵模块,如图3 - 5 所示: 辩 接 冥髂每个模块瀚功髓麴t : 】、遁绱摸块 嘲3 - 5 代理模块的组成 f i g 3 - 5m o d u l e so f a g e l l t 紫略 鼗攮簿 j e 塞讫工_ 天学碛:学位建交 通信模块的主臻功能是与客户端接口建立加密传输通邋、进行身份认证,通过煮 全通道发送和读教数据。 2 、主谴度模块 主调度模块是蜜全数据库代理的主进程,受责监听客户端连接请求,建立连接; 为每个访问请求创建一子处理进程来处理其黑体的数据库操作请求;创建和维护共事 内存,实现与子楚理进程戳及予鲶理进程之阉驹数器共事。 3 、予魅瑾模块 予处理模块是安全数据库主臻功能实现的j ;| e 体部分,模块负责处理客户端的数据 库搡佟请求,确保蜜全访问数据滕。主要实现分析请求、访问控制、代理游闻等功能。 该攘缓壤获楚努为鞠个予模块:调度模浚、分瓣请求模块、谤阚接篱l 模块霹钱瑾谚溪 模块。 1 1 、调度模块 主受受责备模坎之潮魏交互,秘调秘组绞备模块正鬻款遴行工终。 2 、分橱请求模块 主要负责对用户的数据库访问请求进行分析,具体分析应用程序经:j 建安全通道传 递过来的s q l 语句,判断语句巾的具体操作类型,如s e l e c t 、u p d a t e 、d e l e t e 等,荠确定要谤藉黥辩象,蟊表、字段、元素等。 3 1 、访问控制模块 用通信模块得别的访问者身份信息和分析请求模块得到的访问对象倍息、操作粪 型蘩怒等来鞋配裁定磐魏蓑路,羧攥策臻狭繁缝鬃寒决定燕继续甏谤润谤求传递给钱 理访阀继续处理还怒拒绝用户的游阔请求。 4 1 、代理访问模块 满足安全需要的访问请求被转发至数据艨蕊统,并且等待获取处理结泶,向客户 藕接翻遨鞫结粟,寰瑷饯淫瘸户访溜数耀痒豹疑鹣。 3 4 系统实现 3 。4 1 客声端接日 客户端接口是数据摩安全系统嗣客户端交互的接口,它安装在客户端上,其主要 功蘸爱与安全数舞鬻代理建立安全连接;与黩褥程彦交互;遴过安全逶邋转发数攒露 用户的操作请求弗且接受从代理邋回的处理结果。 客户端接口主躐分为两个模块:一是与成闰程序交互的接口模块,为了与原有应 矮程黟蒺察,实瑷与应题无关,这帮分蹩菝照数摆疼据壤疲用o d b c 媲爨震实瑰;凳 一模块怒遥信模块,负责与安全数据库代理建立安全可嚣的通信连落,撒掰户请求蜜 第三章数粥库蜜墩系统体系结构 垒遴剿安全数据痒代理,并安全接收采自代瑷翻处理信患。 窍户爆接口驮功糍上来看相当予令o d b c 驱动程事,丽应麓程窿聂是遁过谖愆 它束访阏羧撵痒蕊,走了不影赡凝青系统豹艨鲻,这里参考了p o s t g r e s q l 豹o d b c 驻韵程溥p s q l o d b c 来实现,藏井逐淹露户稳供黼饕接1 3 ,蠲寒配篱数蘩源僖患秘安全 数攒瘁代理信息。 威嗣程序接口模块中主要实现以下一照功髓模块,目的是用来实现o d b c 静a p i 函数豹功能。 o d b c a p i 模块:提供o d b c 3 0 的a p i 接口函数,具体功能通过调用下面的功熊 横块来实现的。 b i n d 模块:支持o d b c a p i 溺数中绑建矧鞠参数相关的函数,如s q l b i n d c 0 1 0 ; d i a l o g 模块:此模块负赉控制为用户搬供豹对话摇。 c o l u m n i n f o 模块:爆于麸一个查谗中浚墩域存褚字段信息。 c o n n e c t 模块:支羚o d b c a p i 孛豹连接移发送请求函鼗,热s q l a l l o e c o n n e c t 0 、 s q l c o n n e c t 0 、s q l d i s n n e c t 0 等。邋避调爝j 鬟馈模块孛戆添鼗泉实袋连接豁建变秽 避德。 c o n v e r t 模块:包括将参数和剜数转捩戚骚求的数据类型的函数,发送请求时将 o d b c 豹标准s q lc 数据类型转换成标准c 类型;返回结果对或者将来自安全数据 库代理的标准c 类型数据转换成栎准s q lc 数据类型。 e n v i r o n 模块:提供与系统环境相关的溺数,如s q l a l l o c e n v 0 、s q l e r r o r 0 等。 e x e c u t e 模块:这个模块支持o d b c a p i 中用于准备和执行s q l 语句的函数,比 搬s q l e x e c u t e ( ) 、s q l e x e e d i r e c t 0 等。 t n f o 模块:翊予支持获取o d b c 信息数满数。妇s q l g e r i n f o o 、s q l g e t t y p e l n f o ( 1 警。 ( r e s u l t 模块:矮予宠残蘩莱象瓣簧褒黎谗慕豹获敷。 r e s u l t s 模块:支持捡索臻采集僖惑翡o d b c a p i 函数。魏s q l r o w c o u n t 0 、 s q l n u m r e s u l t c o l s 0 、s q l d e s c r i b e c o l 0 等。 3 。4 ,2 瓷全数据库代理 霞全数据库代理是系统的核心部分,也怼系统功能实现的主体,在具体实现的时 候,参考了p o s t g r e s q l 服务器的处理模式。 第嘉显瓤瓒搿攀。装缬锤藕 蘩鬃褥蓊囊篓篱蕊鬻蕊藏羹零藜羹羹袋蘩鬟黧黧霆篓 融瓣芸萋薹蔓灞蟊;i i 磊蟹! 疑氍瓣璐双m 酗一骥! i 鳓。醐簿! i i 强= 阁i 藿蓠0 鹱i 妻等霪赣;j 誊薹镞登鬻墓g 要霪慧蛩瓣目墓鞫一霪瀵隧疆嗲。鬻匿鞫囊嚣肇麟糕雾蒌 塑雾毯;妻委薹薹氆楚鬻璺等参数鞠繇潮i 裁霸霹髓强鹱黟警鄹蕈趱瀚瓣蘸戮鞫够鐾 露鬈;麓 垂耄爨鬟蠹器蠢餐耄嚣麓鬟;蕊壤臻潦藤淹穗 萼藩森臻骧。 筑毫蕊嚣巍签裂委;塑一委露p 燕;l 瞎;奏囊鬻登交萄鬻巍鬣黑戮涮嚣莲穆谶i 殛 溪二嚣雕麓翻雾豳鎏轰_ i ;i 疆强| 屯鹱冀霾耋囊篓爆磺蓊强靼型;蘩z 奠鬟捌;释飘 豢麓蕊,蠹要b 剽溜掣遮嘴确灌;蹩熏到刚戮坠囊怠糯海襄冀臻惑罕蠢髫蠢瓢囊i 簟 墓驴蠹嬖囊錾秀誊鬟夔i 冀羹耄蕊善是鋈簧囊翥鹫萋鬟萋蕊鏊蓉纂囊囊嚣鬓i ,i 蠹篓薹薹霉鍪薹粪雾篓 纂喜篓蘩囊蓬 x 托糸纯下大学硬1 :学位论文 为安全数瓣痒代褒翎建遴傣套蒙字,赛京獒l 璁避移凌霹号,然嚣褥套羧字转换 成监晰套接字,监听和等待容户端的连接请求。 鼬、设嚣共享蠹存秘薅号灯 为主进程产生的予处理进程设罱熬享内存和信号灯,实现予进程之间的数据共卒。 5 ) 、设置髂号瑟理添数 设鬣对收剐的侄传中断信号的处穗溺数。 2 、循环处理 究成上述裙始纯工佟以后,主调痰遴程翼:始进入镎待客户溃连接、处理辫户端请 求麴镶爆之中,每个援环处理熟实现步骥如下; 1 ) 、判断等待队列中是否肖客户端连接请求。如粜有连接请求则进行与客户蛹遥 菝的建立步骤,没有刹继续等待,有辩常或错鞠箍凌德环。 2 ) 、连接建立蠢,产生一个子进穰,把掰裔与客户端建立的连接婚状态倍意f 套接 字撼述蛰、服务器她地结构、客户端地魅结构等) 交给予进程,也就是将该连接交绘予 进程,建立予进程军爵客户端的连接。 予进程蓄毙调用s s l 库函数s s ln e w ( ) 和s s la c c e p t ( ) 分别瓮城审请s s l 套犊字葶嚣 与客户端的s s l 握手。s s l 握手阶段宠成加密连接静耪始佬和客户端酶赛份认证,只 有客户端通过了身份认证,才可以使其继续缴送数据库访问请求。s s l 握手成功后, 子进程调霜予处理模块来开始处理客户端请求,两满辕后静遴信燕京s s l 藤寮通遴串 进行豹。 3 ) 、连接交给子逶程后,主调度遴程断开与客户端静连袋,循环去憝理下一个客 户端逑接请求。 3 4 2 2 予处理调度 予处理调魔过程主要负责予处理横块中务予摸块之糍的交互,协落宠成请求分孝厅、 访闯控制和代理访闯的功能。 北京化工大学硕i 学位论文 3 4 2 3 安全通信 系统通信过程主要衣客户端接口与安全数据库代理建立安全可靠的通信连接,并 通过客户端接口把用户请求安全送到安全数据库代理并接收来自代理的处理信息。 此节介绍基于s s l 通信的实现过程,包括了与客户端的s s l 连接以及与数据库服 务器的t c p 连接。其具体连接处理流程如下: 1 1 、与客户端建立s s l 安全连接; 2 ) 、进行用户身份验证,如果合法则继续,否则退出; 3 ) 、与数据库服务器建立t c p 连接; 4 ) 、数据的转发,处理完毕后连接退出。 具体的连接处理过程是通过调用如下函数束实现的: s t a t i cv o i dc l i e n t ( i n tc l i e n t f d ,o p t i o n s _ t 。o p t ) 其中i n tc l i e n t f d 指定为该连接所分配 的套接字描述符;o p t i o n st * o p t 指定数据库安全系统的配置参数结果。 流稷框图如3 - 9 所示: 图3 - 9s s l 通信流程框图 辩g 3 - 9f l o wc h a r to fs s lm o d u l e l 。酋先,调用下列函数来建立数据库安全系统与客户端灼s s l 安全连接: s t a t i ci n ts s l u t i l _ a c c e p t ( d e s c r i p t o r _ _ t + d ) ; ,牢完成s s l 握手协商过程+ s t a t i ci ms s l u t i l _ n e g o t i a t e _ s s l ( d e s c r t i p t o r t 。d ,i n tm s g _ t y p e ) ; 第三章熬攒库霞余系统体系结构 产竞藏s s l 窭秘握手耱蠢过程4 , 蒸孛参鼗建交蟊下: 姆p e d e f s 融l 畦d 铝槭辨材 i n t 碰p 对应予遵接懿套接譬撼徙褥+ , s s bs s :声对痰予连接s s l 感褥8 , ) d 幅嘶p t o t j ; 在溺数s t 躺ci n ts s l u 棚j 。g o t i 雏i j 蛆( d e 8 酾拱o l t + 矾i n t 撒s 墨j 滞。) 中,先捡拦牧铡的 满想懋蚕为会疆谚求消息,如果不是,则邋懑;如暴怒,则继续调瘸如下礁数卷突璇 秘密户端酌握手嵇褒遘程; s t a 艇ci n ts s l l l l 主l a c c 赋d s 商p o 卓掷 在该函数中,蓠先掇攥s s l 麟 x 缝褥涛耨靛连接键建一个s s 毛结擒,该缝褥僳 静了当簿连接躲多个交量;然蓐蒋越趣警骑连接懿套接字餐述铃鹈s s l 旗擒缝合起 来;孬调霸卿嚣n s s 己撵莰熬瓣鼗援蹋戆立s s l 塞垒连接;蘩暴残麓,烈褥该 d 辎蕊p o ft 燃缡捣中豹s s 毫结均斌镶为骜瓣连攘对成静s s l 结掏。程建立s s l 密令 避攘辩耀至了如下的函数: s s l4 s s l _ e w ( s s t 鼻t x4 e x ) 率s s lc 鼍4 c t x 为当前连接创建s 8 l 结构8 i n ts s i 二j o t 翼( s s l + s ,i mf d ) p 将当翦浚搜翡套接字弱s s l 绪稳凝聚怒采掣 i n ts 8 t a c c e p t ( s s l 卓s ) ,4 0 p e n s s l 提供的建立s s l 安全连按的攘瑟遨数,在程p 造接的基懿。皇,究戏 与鬻户臻熬s s l 摇手酶赛过爨,孤蕊建立一个安全连袋帮 2 。经过请求势爨窝访簿控灏模块襄,赫巢谤淹遮求簸竞许,鬻笃蘩撂瘴爨势瓣滋雩亍 杈鬻连接静逡竟;该连接烹蘩是通道灞阕与套接字f 晒e k e ) 籀关懿溺羧采实糯魏,其 实观避程是: l 截建套接字 通道调用如下函数来剖建连接套搂字: 溉8 0 c k e l ( i n | d o m a i n ,i n tt 潆e ,i n tp f o 协i 其中参数d o m 疵l 指定p f _ 粼e 鼍卿。指 滗海s o e k _ 鞭嚣a m ,p 协l 指定麓a 疋。粼e t ,调髑畿功剿返器个套接字文佟撼 述符。 2 ) 建立连臻 逐避诵萎;l 魏下蕊鼗寒建交劐数撂露缀务器戆潆逶搂: i n te 潍蕺端i 箍量s 。盘窝,渤建s 搬| 髓蝴c 莨矗蠢蠡枣s f3 痞疆毛s 蔽l 貔t 咎醚鑫渤羹串 s 蛐e ts o 礤拳4 s 辨e ra d 玉争撬定簧述羧滕务器豹懑缝,成功返秘o ,再则返潮1 。 通过上述潮步,建立与淑褥库鼹务器鞠谶接;然稻调用读写函数避行数据艨瀚交 北京化t 火学坝“l :学位论文 互。 3 数掇转发 在建立好骚露麓连接意,系缝轮谗器造接蕊秀有鼗镞鹣蘩亲,翔莱意,萸| j 姆跌客 户端传邀过来的嬲密请求避行解密、验诞、解愿、组装等操作还缀成明文,然愿通过 代璎诱迥漠块发送蚕8 数据露服务器。警处理究鼹,把数壤露鼹务器盼响应送行攥分、 磊缡、计箨、翔瓣等操律,袭邀至客户端搂鞠。 遴邀调用如下黼数来轮询连接是餐有数搬到来: f 略e r o ( 醛j e t + s c t 芦将文件描述符集合f ds e tt s e t 髯为空e , f 谚j e t i n t 掰,f l d - s e t + 燃s ) 壤魏文释攥述餐缮至缀会掰s 娃4 叠l s 中8 , f d j s s e t ( i n t 衔,f d - s e t4 f d s ) ,m 粼定文穆懿述籍溉掰状态是否竣变了,嚣怒委骞数鬟要读霉弩 i n 蕈鞫融e 醴( 瓣n ,最重- 辜战章r 嚣a d 斌s , d 冀t 事州协姚,f d _ s e t 睾e x c 莺t 爨蝴穗 t i m o v a l 幸t i m e o u n ,s 耱诲各文移磁透露裘含瞧禽熬文 孛描述褥跫孬蠢数据嚣要读麓或笈送4 , 数据库服务器和客户蝴的数据转发功能鼹逶过调蠲如下函数束实现的,将扶 娃y o m f d 接收到的数据转发到t o f d 。 s l 毽t ev o l d 酶o v d e s 蕊p 辩o 。躺m 粼,d e s 酬p t o 口8 协f 国 该黼数主要怒逐逑调用如下函数来宛成加密处理数攘的读写的。 i n | s s k 啪d ( s s l 。s s l ,穗8 r 宰b u i n t 娃喇髓) 从s s l s s l 最多读取i n t 棚m 字节,然麓经过数据辩密处理还艨存储捌谯牡章b u f 卡; i 嫩s s k 删毫e ( s s l 事s s | ,n s t 矗甜枣赫i n tn 毪m 将c h a r + b u f 中的数据,缀过算法她壤后,发送剐s s l 4 s s l 对成的端。 数攒转发静炎髂过程: 1 ) 读数数攒辩,首先刿宠是否为嶷全连接,如果楚则调用涵数i n t8 s l 蝴d ( s s l 8 s s l ,c h 粼铀蠛i n t 黼m ) 寒读撒加密数据掇文,嚣则溺用i n t 刚( i n t 毯妫a f4 孤i n t 珏u m ) 寒凌敬寒燕蜜数掇。判定返隧霞,大予零剿袭髑菱确读取湛隧傻令字符;等予零表褥 连接已经中断;小于零,并殿错误号为e i :n 张晒明该操作由于系统调用而中断) ,贝f j 继续,错误号为其德 妻,表明读操俸失败。 2 ) 发送数爨嚣誊,蓄先瞧臻爨定楚黉楚安全涟接,弛祭跫嚣谈溺 嫩s s l 谢t e f s s 蠹 8 s s i ,c o n s tc h a r 书b 媾i n tn u m ) 发送数据;甭则调用i n tw 矗莹c ( i n tf d ,c h a f $ b u i n 主l o 螂- 来 x 北京化工a 学硪- ? 游惋论文 1 ) 、谯访问爝户要访闻的数据源之前,荫先确定该数据源是森已经商安全代理端的驱 动程黪篱瑾鬃注蘼。 数攒滚踟瞧s 嘲囊爱声戆癸存敷豹数搦露绽甏、数蕤霹类羹及0 d b e 驱动瓣露 等德爨缀成,痰薅程彦要谤涟一个数据露,嚣巍必簇爝o d b e 营理器注蠡| | 一个数掇滚, 管糕器擞粥数据源信息建立越o d b c 与其体数据痒的联系。这样,只要应爝程序将数 据源名掩供给o d b c ,o d b c 就能建立超与桐成数据痒的连接。 虫鼹聚该数据源没有创建,则根据用户袋游勰的数据源的信息向驱动程序箭理嚣浇 册数据源,利用函数c r c a t e d s n ( ) 来实现这部分工作。 2 ) 、谯逡接数据源建立之前,首先查看标志o d b c 初始化和连接数据源的工作是否融 经毙艘髓全蜀变量,设嚣这个标志豹晷的怒避凫鬟复多次与一个数据源建立和断歼德 接。蠹强聚这些工作已经完成,则直接进行下颟的步骤,森则就初始化o d b c 旬柄,然 屠逡援数瓣澡。这郝分工作蹩由函数蕊t o d b c o 宠残豹。 3 ) 、逡羧建立麓,转发蘧户s 链语句,并敬褥数援露瓣处理缝暴。轻o q 畦蘧数受黉 完成逡熬分工终。 、请求簸理鹣结爨奇磁种类型: 一种楚出s e l e c t 命令取得的结果察。s e l e e 下鼓为常用的数搬库命令,由予事先 不戆确定绐聚集的大小,因此采取动态分配稃储空间的方法泉接收结采集。接狡到结 果鬃之鹰,将标准s 0 l 数据类型的数据转换为橼凇c 数攒类型,然后将结果集以消恩 格式邋嘲给客户端接口,这部分由函数d o 瞪逡塑妻黢! 对 薹麓蒸韬篓墓毒i a ) ii d 罨篡蓼砻。 蛰釜雪鬣骈冀冀蠢冀零巅睽良蠹誉彝蓉霸i 彗去转冀琏戴毽j e e 掌e i e 。e 习! 囊e j 奏 镬墨i 壁蠹暖; 篓鲻潍器墼隧曦妻0 ;譬焉懑羹鬣翟互謦4 - 2 ( b ) )e $ e ee g ez e 二;曩甚e 曩墨喜爱i 妻g;l童ie9 e aid孽eje碱6i曼翌de 臻馨_id 这就需骤定义消息协议,以规定各种消息的类型、数据结构和消息格式。数据根据协 议被组成信 息龟邀 亍传输。同时,为了保护传输过穰的数瓣安全,选用崩前流行豹安全套接屡协 第兰章数糯库蜜垒系统体系鳓构 应霜系绫豹各逶萤垮议摸块之润懿关系麴遥3 一l l 艨示: 图3 - l l 避髅协议模块关聚圈 f i 参3 一l lt h e 袋a 墩嗽瓢韶揩锺e 姻m u 秘;铺呔mp r 。t o c 畦m o 加重e 漓惠协议靛主要定义三三个方褥

温馨提示

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

评论

0/150

提交评论