(计算机应用技术专业论文)基于j2ee的身份管理模式的研究与实现.pdf_第1页
(计算机应用技术专业论文)基于j2ee的身份管理模式的研究与实现.pdf_第2页
(计算机应用技术专业论文)基于j2ee的身份管理模式的研究与实现.pdf_第3页
(计算机应用技术专业论文)基于j2ee的身份管理模式的研究与实现.pdf_第4页
(计算机应用技术专业论文)基于j2ee的身份管理模式的研究与实现.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

(计算机应用技术专业论文)基于j2ee的身份管理模式的研究与实现.pdf.pdf 免费下载

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

文档简介

北京交通人学硕十学位论文 摘要 摘要 摘要:身份管理是当前企业应用系统的突出问题也是目前分布式资源系统建设 的研究热点。虽然身份管理技术和标准f 1 趋完善,许多组织和企业也提出了很多 身份管理解决方案,但是在具体的应用和实施上还存在许多问题,如企业间不同 安全架构和基础设旆的异构问题等。目前,大量的企业应用系统都是基于j 2 e e 平 台设计和开发的,因此研究基于j 2 e e 的身份管理的问题具有一定的理论指导意义 和实际应用意义。 本文大量研究了当今身份管理的相关技术和标准,分析了j 2 e e 应用的特点及 其安全体系,在此基础上运用了构造器模式、代理模式以及工厂模式等设计模式 的思想,结合s a m l 标准提出了断言构造器模式、单点登录模式和凭证令牌化器 模式等三种通用的身份管理模式,提高了企业身份管理层的兼容性和可移植性, 同时有效降低了系统设计和开发的复杂度。最后,本文详细阐述了上述三种身份 管理模式在基于网上通讯簿的在线服务平台系统中的应用,并对实际应用效果作 了分析,同时指出了论文将要扩展的研究内容和方向 关键词:身份管理;s a m l ;单点登录;j 2 e e ;令牌化;设计模式;安全模式 分类号:t p 3 9 3 0 8 北京交通人学硕十学位论文 a b s t r a c t a b s t r a c t a b s t r a c t : i d e n t i t ym a n a g e m e n t i s a p r o m i n e n t i s s u eo fc u r r e n t e n t e r p r i s e a p p l i c a t i o n s ,b u ta l s oah o t p o to f t h e c o n s t r u c t i o no f d i s t r i b u t e dr e s o u r c e ss y s t e mn o w a l t h o u g hi d e n t i t ym a n a g e m e n tt e c h n o l o g i e sa n ds t a n d a r d sa r em a m f i n ga n dm a n y o r g a n i z a t i o n sa n dc o r p o r a t i o n sh a v ep o tf o r w a r dan u m b e ro fi d e n t i t ym a n a g e m e n t s o l u t i o n s ,b u tm a n yp r o b l e m ss t i l le x i s ti nt h es p e c i f i ca p p l i c a t i o na n di m p l e m e n t a t i o n am a j o rp r o b l e mi st h a tt h ed i f f e r e n ts e c u r i t ya r c h i t e c t u r ea n di n f r a s t r u c t u r e n o w a d a y s ,al o to fe n t e r p r i s ea p p l i c a t i o ns y s t e m sa l ed e s i g n e da n dd e v e l o p e db a s e d o uj 2 e ep l a t f o r m n e r e f o 佗r 髓e a l c hj 2 e e b a s e di d e n t i t ym a n a g e m e n tp r o b l e m s h a v es o m et h e o r i e sg u i d i n gs i g n i f i c a n c ea n dp r a c t i c a la p p l i c a t i o no f s i g n i f i c a n c e t h e p a p e rs t u d i e da l o to f t o d a y si d e n t i t ym a n a g e m e n tr e l a t e dt e c h n o l o g i e sa n d g 细d _ a r d s ,a n a l y z e dt h ec h a r a c t e r i s t i c so f t h ej 2 e ea p p l i c a t i o na n di t ss e c i l h - i t ys y s t e m , u s e d s o m ed e s i g np a t t e r n ss u c ha sb u i l d e rp a t t e r n s 、p r o x yp a t t e r n sa n df a c t o r yp a t t e r n s , c o m b i n e ds a m ls t a n d a r d sa n dr a i s e dt h ef o l l o w i n gp a t t e r n s :a s s e r t i o nb u i l d e r p a t t e r n s 、s s od e l e g a t o rp a t t e r n sa n dc r e d e n t i a lt o k a n i z e rp a t t e r n s + t h e s ep a t t e r n sn o t o n l yi m p r o v e dt h ec o m p a t i b i l i t ya n dp o r t a b i l i t yo f e n t e r p r i s ei d e n t i t ym a n a g e m e n tb u t a l s or e d u c e ds y s t e md e s i g na n dd e v e l o p m e n tc o m p l e x i t ye f f e c t i v e l y 1 nt h ee n do ft h e p a p e r , w es u c c o f u l l yi m p l e m e n t e dt h ep a t t e r n si nt h eo n l i n es e r v i c ep l a t f o r mb a s e d l i n k m a am a n a g e m e n ts y s t e m ,a n a l y z e dt h ea c t u a le f f e c ta n dp o i l l t o do u tt h er e s e a r c h c o n t e n ta n dd i r e c t i o no f t h ep a p e rt ob ee x p a n d k e y w o r d s :i d e n t i t ym a n a g e m e n t ;s a m l ;s s o ;j 2 e e ;取山i d e s i g np a t t e r n s ;s e c u r i t y p a n e m s c l a s s n o :1 1 p 3 9 3 0 8 学位论文版权使用授权书 本学位论文作者完全了解北京交通大学有关保留、使用学位论文的规定。特授权北京交 通大学可以将学位论文的全部或部分内容编入有关数据库进行检索,并采朋影印、缩印或扫 描等复制手段保存、汇编以供青阅和借阅。同意学校向国家有关部rj 戏机构送交论支的复印 件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名 浆多骖 导师签名 签字日期:砂“7 年f 7 n 1 1 日签字日期:砷。7 年i 乙月日 北京交通大学硕士学位论文 独创性卢明 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的 研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得北京交通大学或其他教育机构的学位或证 书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均己在论文中 作了明确的说明并表示了谢意。 学位论文作者签名:豢霉辱 签字日期:7 7 年,多月加日 致谢 首先,我要诚挚地感谢我的导师宋成教授。本文从选题到定稿,都是在宋成 老师的悉心指导下完成的。在研究生学习期间,无论是在学业上还是在生活上, 我都得到了他无微不致的关怀和照顾。他严谨的治学态度和敬业精神,以及对我 的谆谆教诲、严格要求,都将使我终生受益。其次,在我论文的收集和研究过程 中,实验室的同学们给予我很大的帮助,实习公司的同事们也给了我许多很好的 意见,在此一并表示感谢。 最后,我还要感谢我的家人和朋友,是他们在物质上、精神上给了我全力的 支持,可以说没有他们就没有今天的我。 北京交通人学硕士学位论文引言 1引言 1 1 课题背景及研究意义 1 1 1 背景 随着i n t o r n o t 的普及和应用,网络已经成为现代生活中非常重要的一部分。 人们已经越来越习惯在网络上进行各种各样的活动,比如论坛,电子商务等。不 可否认,网络将是未来商业贸易的主要手段,于是信息安全的问题也随之凸显出 来。 信息安全( i n f o r m a t i o ns c o t t y ) ;是指信息的保密性( c o n f i d e n t i a l i 动,完整性 ,咖) 和可用性( a v a i l a b i l i 劬的保持i l l 。保密性定义为保障信息仅仅为那些被 授权使用的人获取。完整性定义为保护信息及其处理方法的准确性和完整性。可 用性定义为保障授权使用人在需要时可以获取信息和使用相关的资产。信息的保 密性是针对信息被允许访问( a c c e 鹞) 对象的多少而不同,所有人员都可以访问的 信息为公开信息,需要限制访问的信息一般为敏感信息或秘密,秘密可以根据信 息的重要性及保密要求分为不同的密级,例如国家根据秘密泄露对国家经济,安 全利益产生的影响( 后果) 不同,将国家秘密分为秘密,机密和绝密三个等级,组 织是根据其信息安全的实际,在符合国家保密法的前提下将其信息划分为不 同的密级,对于具体的信息的保密性有时效性,如秘密到期解密等。信息完整性 一方面是指信息在利用,传输,贮存等过程中不被篡改,丢失,缺损等,另一方 面是指信息处理的方法的正确性。不正当的操作,如误删除文件,有可能造成重 要文件的丢失。信息的可用性是指信息及相关的信息资产在授权人需要的时候 可以立即获得。例如通信线路中断故障会造成信息的在一段时间内不可用,影响 正常的商业运作,这是信息可用性的破坏。不同类型的信息及相应资产的信息安 全在保密性,完整性及可用性方面关注点不同,如组织的专有技术,市场营销计 划等商业秘密对组织来讲保守机密尤其重要:而对于工业自动控制系统,控制信 息的完整性相对其保密性重要得多,但是,信息安全与信息系统安全是有概念上 的区别,信息系统安全是确保信息系统结构安全,与信息系统相关的元素安全, 以及与此有关的各种技术、安全服务和安全管理的综合,因此信息系统安全更具 有体系性、可设计性、可实现性和可操作性。这里将信息系统的概念仅限于基于 开放系统互连和计算机网络的复杂系统,以此为基础开展信息系统安全的研究。 北京交通大学硕士学位论文引言 基于网上通讯簿的在线服务平台是北京某公司的一个核心项目。该平台基于 j 2 e e ,是个分布式的应用系统。网上通讯簿系统里面存储着大量的用户信息, 这些用户一旦在服务平台上享受各种服务便会带来许多的信息安全的问题,其中 最重要的一点便是身份管理。本课题来源于该项目的需求,并且在该基础上针对 典型的j 2 e e 应用系统的身份管理问题进行了抽象,提出了本文的身份管理模式。 1 1 2 研究意义 身份管理( i d e n t i t ym a n a g e m e n t ) 是信息安全的一个重要组成部分,也是企业 1 1 r 服务中新出现的安全问题之一。随着l p ( p o r u a ) 和基于w e b 应用的与日俱增, 消费者需在不同的网站创建新的用户账户。我们都有经验,似乎每进一个网站, 或者享受一项新的服务,都会需要注册账户,填信息之类的动作,然而不同的在 线门户和网站在创建用户账户和管理用户密码方面采用的安全策略不尽相同,因 此消费者经常需要维护大量的数字身份。此外有些不法分子专门在网上提取用户 信息,然后出售给一些企业作为营销对象。这些数字身份经常被滥用甚至盗用 如果网站的安全保护不够充分,那么消费者将无法保护用户身份等隐私。信息 安全攻击调查2 0 0 4 ) 【s e c u r i t y b r o a c h 2 0 0 4 显示,身份盗用正成为消费者关注的主 要问题之一吲。 在当今这个网络经济时代,企业和机构都在通过i n t e r n e t 寻找新的商机和新 的业务开展途径。与此同时,他们必须确保公开的信息资产的安全。随着客户、 员工、合作伙伴和供应商的数量不断增加,企业和机构必须保护其敏感性信息不 被竞争对手或黑客窃取,同时还要在全球范围内提供对其关键信息资源的访问。 为发掘这些新机遇所带来的业务潜力,不论是组织还是用户都越来越多地涉入对 日益分散的资源的访问,而这些访问对业务信息安全的威胁也越来越大。为迎接 这些挑战,必须实施一套行之有效的关于身份管理基础设施的解决方案。要在降 低成本的情况f ,达到虚拟企业要求的集成、安全、服务和运营,那么身份管理 是要实现这些目标的组织的唯一选择。 身份管理能带来极为显著的业务收益,包括在机构实施安全策略和实践的过 程中降低其成本、风险和复杂度。简而言之,身份管理解决方案能为机构带束以 下便利: ( 1 ) 集中管理身份和策略信息。 ( 2 ) 集中式或分散式的认证和授权服务。 ( 3 ) 委派的身份管理和控制。 ( 4 能在合作伙伴、供应商和客户的可信网络之间安全地交换数据。 ( 5 ) 执行不同类型的应用和服务的单点登录。 北京交通大学硕士学位论文引言 ( 6 ) 覆盖合作伙伴、供应商和客户的可信网络的联合登录和注销。 ( 7 ) 自动地实时修改身份权限和关系。 ( 8 ) 防止出现重复的用户账户。 ( 9 ) 在任意给定时刻,什么人访问什么资源都是清楚明了的。 安全威胁和身份欺诈变得越来越普遍和复杂,这使得相关的漏洞越来越难以 防范,因此为确保应用的安全,身份管理的重要性与日俱增。健壮的身份管理解 决方案可降低管理成本,提两用户的生产力以及为端到端业务应用提供强大且一 致的安全。另外,身份管理还能通过增加合作机会带来新的收入。 1 2 面临的挑战 1 2 1 遗留系统 企业面临着各不相同的,也极其复杂的身份管理问题,比如遗留系统。很多 组织针对其遗留系统定制了用户认证和授权机制,这些系统大部分都有不同的安 全实现和基础设旋。比如认证机制、p k i 操作,策略、目录等。因此用户常常需 要在每个应用系统中使用不同的用户账户和密码。随着应用和系统数目的增加, 有必要使用单个用户身份跨多个系统和基础设施的单点登录,必须进行大规模的 安全集成并提供极高的互操作性,涉及的领域包括如何管理密钥和证书以及如何 使遗留系统使用统一的用户认证机制或安全基础设施认证。 1 2 2b 2 b ( b u s i n e s s - t o b u s i n e s s ) 应用 b 2 b 应用( 如b 2 b 工作流程应用和供应链应用) 处理用户身份。用户常常需要 使用不同的用户身份登录合作伙伴企业的系统,而在合作伙伴之间管理不同的用 户账户增加了复杂性,尤其是同步更改用户信息时。合作伙伴需要就如何在安全 需求各不相同的系统中供应新用户账户达成一致。如果他们希望采用统一的用户 认证和授权基础设施来方便协作,集成问题又成了拦路虎。在不同的安全基础设 施和应用系统之间使用通用的用户认证机制很困难。如果安全基础设施的厂商产 品或底层技术有变,必须重新测试所有用户认证接口。 1 2 3 漏洞和威胁 用户身份的使用和处理涉及多个系统( 本地或者分布式) ,因此与用户身份相 北京交通人学硕士学位论文引言 关的安全漏洞和威胁可能影响多个应用系统。在用户身份管理方面,存在下列安 全漏洞和威胁: ( 1 ) 针对处理用户认证和授权的安全基础设旌的拒绝服务攻击; ( 2 ) 以窃取用户身份和会话信息为目标的中间人攻击; ( 3 ) 通过盗取用户身份发起的会话劫持和盗用; ( 4 ) 数据隐私性和机密性攻击: ( 5 ) 使用盗取的用户身份实施重放攻击; ( 6 ) 支持集中访问不同应用时的多点登录问题; ( 7 ) 无法在应用之间传播认证和授权上下文; 1 3 作者的主要工作 作者首先对身份管理所涉及的j 2 e e 平台,应用密码学知识以及x m l 安全 基础进行了简要的介绍。对身份管理的概念以及核心问题做了分析和阐述并对现 有的相关的身份管理技术做了概述。并将这些技术与设计模式结合,提出了三种 身份管理模式,这三种模式的有机结合又对身份管理层的安全问题提出个解决 方案。最后在j 2 e e 平台予以实现,以体现出这种解决方案的可行性,以及优势。 在整个实现过程中,作者主要从事需求分析,概要设计,详细设计,编码以 及和同学一起测试工作。身份管理虽然已经有了一些较为成熟的技术和规范,但 是一个良好的可扩展。健壮的解决方案还不多见,要解决这其中复杂的安全问题, 还需要更多的研究和努力。 1 4 各章节安排 本文其余章节组织如下: 第二章首先对j 2 e e 平台做了简单的介绍,然后对应用密码学,x m l 安全基 础等也给出了概述。最后对身份管理的相关技术包括s a m l 和s o a p 。做了详细 的介绍。 第三章是本文的理论核心部分。首先分析了身份管理的概念以及身份管理的 核心问题,针对这些问题,提出了三种身份管理模式:断言构造器模式,单点登 录模式,凭证令牌化器模式。最后结合这三种模式提出了身份管理的解决方案。 第四章在第三章提出的理论基础上,结合j 2 e e 的平台优势,实现了这三种 设计模式,并应用于一个在线通讯薄系统中。 4 北京交通大学硕士学何论文引言 第五章将以上的设计应用到一个实际的在线服务平台中。 1 5 小结 本章首先对论文的研究背景,研究现状做了简单分析,然后明确了课题的研 究意义,并在此基础上对将要面临的挑战深入的分析。在第三节说明了作者的主 要工作,1 4 节说明了本文各章节的安排。, 北京交通大学硕士学位论文相关技术背景 2 相关技术背景 2 1j 2 e e 简介 2 1 1j 2 e e 体系结构 j 2 e e ( j a v a2p l a t f o r m ,e n t e r p r i s ee d i t i o n ) 是s u n 公司定义的一个开发分布 式企业级应用的规范。它提供了一个多层次的分布式应用模型和一系列开发技术 规范。多层次分布式应用模型是指根据功能把应用逻辑分成多个层次,每个层次 支持相应的服务器和组件,组件在分布式服务器的组件容器中运行( 如s e r v l e t 组件在s e r v l e t 容器上运行,e j b 组件在f j b 容器上运行) ,容器闻通过相关的协 议进行通讯,实现组件间的相互调用。遵从这个规范的开发者将得到行业的广泛 支持,使企业级应用的开发变得简单、快速p l 。 j 2 e e 平台为开发和部署具有可移植性,可扩展性的分布式计算应用提供了 多层应用基础设施解决方案。从本质上说,它是一组j a v a 技术,涉及客户端, 表示层,业务逻辑层以及企业的信息层。j 2 e e 的应用逻辑按功能划分为组件, 各个应用组件根据他们所在的层分布在不同的机器上。事实上,s u n 设计j 2 e e 的初衷正是为了解决两层模式( d i e n t s e r v e r ) 的弊端,在传统模式中,客户端担当 了过多的角色而显得臃肿,在这种模式中,第一次部署的时候比较容易,但难于 升级或改进,可伸展性也不理想,而且经常基于某种专有的协议。通常是某种数 据库协议。它使得重用业务逻辑和界面逻辑非常困难。现在j 2 e e 的多层企业级 应用模型将两层化模型中的不同层面切分成许多层。一个多层化应用能够为不同 的每种服务提供一个独立的层,以下是j 2 e e 典型的四层结构【4 1 : 6 北京交通人学硕十学位论文 相关技术背最 j 2 e g j 2 腿 曰曰哦司 客户蛹 钒嚣 j 2 髓 服务嚣 螽据库 服务嚣 图2 - 1j 2 e e 典型的四层结构 f i g u r e2 - 1j 2 e et y p i c a lf o u r - f i 口a m l c t u r e 2 1 2j 2 e e 安全体系简介 j 2 e e 也具备功能完备的安全架构模型,以满足安全需求。所有j 2 e e 组件, 不论是w e b 组件( 表示层组件) 还是e j b ( 业务层组件) ,都必须在j 2 e e 服务器基 础设施的合适容器中组装和部署。j 2 e e 平台厂商实现的j 2 e e 组件容器和服务可 以充当服务器基础设施,用于执行这些组件。在j 2 e e 服务器基础设旋中,j 2 e e 安全服务可以确保应用数据访问的安全,这涵盖了各个逻辑层、请求和响应以及 组件和资源等方面。j 2 e e 服务器提供的安全基础设施替应用开发人员分担了大 部分保护应用的责任,使开发人员可以将精力集中在应用业务逻辑的实现上闱。 大多数j 2 e e 应用服务器提供以下安全服务: ( 1 ) 安全域:保护代表用户、组和访问控制列表( a c l ) 的服务器资源。 ( 2 ) 认证机制:识别要求访问j 2 e e 服务器所管理的资源的用户。 ( 3 ) 通过a c l 向用户或组授权:a c l 允许对用户和资源实施策略和访问限 制。 ( 4 ) 数据完整性和机密性:使用s s l r f l s 协议保护通信的安全。客户端可以 用h t i po v a s s l 或r m f i i o po v e l s s l 通过s s l 会话建立到服务器的安全通 信。 ( 5 ) 事件日志和审计:识别失败的登录尝试、认证请求、被拒绝的数字证书 和无效a c l 。 ( 6 ) 客户链接过滤:根据来源或客户端协议决定接受还是拒绝客户端请求 7 一 h 囊 m 菖 园圈圈 北京交通大学硕士学位论文 相关技术背景 ( 7 ) 支持基于j a a s 的可插入的认证和授权服务。 ( 8 ) 使用j a v a 容器授权合同( j a v a a u t h o r i z a t i o nc o n a a c tf o r c o n t a i n e r s ,j 从c ) 支持可插入授权。 ( 9 ) 通过可插入的安全提供者代理支持第三方安全服务,从而支持w e b 服 务、门户和其他业务应用。 ( 1 0 ) 实现了j a v a 可扩展安全架构和a p i ,如j s s e 、j c e 等。 ( 1 1 ) 通过使用文件、l d a p 和关系型数据库支持域( r e a l m ) 和用户目录( u s e r d i r e c t o r y ) ( 1 2 ) 支持到单个安全域中跨越所有j 2 e e 应用的单点登录。 2 2 应用密码学简介 密码学作为信息安全的最基础的理论,其理论基础来源于数论。密码学是对 信息进行编码,实现信息隐藏的- f l 学科,它是很多常用安全技术的基础。它通 过数学运算把真实的信息隐藏,从而达到保密的目的。被隐藏的消息称为明文 ( p l a i n t c x t ) 。密码可将明文变换成另一种隐藏的形式,称为密文( c i p h e r t e x t ) 或密 报( c r y p t o g r a m ) 。这种变换过程称作加密( ( e n c r y p t i o a ) 。其逆过程,即由密文恢复 出原明文的过程称为解密( d c c r y p t i o n ) 。对明文进行加密时所采用的一组规贝l j 称 作加密算法( ( e n e r y p t i o na l g o r i t h m ) ,对密文进行解密时所采用的一组规则称作解 密算法( 0 3 e c t y p t i o na l g o r i t h m ) 。发送消息的人称为发送者( s d 砷,所传送消息的 预定目标称作接收者( ( r e c e i v e r ) 。加密操作和解密操作通常都是在一对密钥( k e y ) 的控制下进行的,分别称作加密密钥和解密密钥。用于加密和解密的数学函数称 为密码算法,其安全性都是基于密钥的安全性的,而不是依赖于对算法设计细节 的保密。下面是密码技术常用的数学符号f 6 】n m :明文; c :密文:k :密钥:x _ e :加密密钥;k d :解密密钥ie : 加密算法;d :解密算法;c = e ( m ,k e ) 表示加密算法在加密密钥k e 的控制 下,将明文m 加密成密文c ;m = d ( c ,k d ) 表示解密算法在解密密钥k d 的 控制下,从密文c 中解出原始明文m 。 2 2 i 对称密码体制 对称密码体制的加密密钥和解密密钥可以相互推导出来。在大部分情况下对 称密码体制的加密密钥和解密密钥是相同的。对称加密算法要求通信双方在建立 安全信道之前,约定好所使用的密钥。对于好的对称加密算法,其安全性完全决 北京交通人学硕士学位论文相关技术背景 定于密钥的安全,算法本身是可以公开的,因此一旦密钥泄漏就等于泄漏了被加 密的信息。对称密码体制可以表示如下: e ( m ,k ) = ;d ( c ,k 户m 对称密钥加密算法分为两大类:流密码和分组密码。流密码每次处理的是数 据的一个位分组密码每次对一个数据块进行处理。流密码具有实现简单、速度快、 传播错误率低等特点。分组密码对明文进行分组,逐组进行加密。它易于构造伪 随机数、消息认证码和杂凑函数,还可进而成为消息认证技术、数据完整性机构、 实体认证协议以及单钥数字签名体制的核心组成部分。d e s 是最具代表的分组 加密体制。其在分组密码理论研究和工程应用中最具影响力。在商业领域,d e s 也得到了广泛的使用。 2 2 2 公钥密码体制 公钥密码体制又称非对称密码体制,它有两个密钥:公钥u ) 和私钥( k p ) 。 公钥可以对外公开,而私钥则被所有者唯一持有。用一把钥匙加密的数据只有用 配对的另一把钥匙才能正确解密。如果信息使用公钥进行加密,那么通过使用相 对应的私钥可以解密这些信息,过程可以表示如下: e ( m ,k l l 户c ;o ( c , g p ) 一m 公共钥匙算法主要有两种用途: 数据加密:发送者用接收者的公钥对要发送的数据加密,接收者用自己的私 钥对接收到的数据解密。第三者由于不知道接收者的私钥而无法破译该数据。 身份确认:发送者可以用自己的私钥对要发送的数据做一“数字签名”,接 收者通过验证“数字签名”就可准确确定数据的来源。 公钥加密的想法最早由d i f l i e 和h e l i m a n 于1 9 7 6 年 d n 7 6 在密钥交换中提 出的,现在最常用的公钥加密方法是r s a r s a 7 s 。 2 2 3 单向散列函数 单向散列函数指的是根据输入消息输出固定长度数值的算法,输出数值也称 为“散列值”或“消息摘要”。即使输入的信息只有微小的改变,输出的定长值( 信 息摘录) 也会发生很大的变化。用m 表示消息,h 表示散列值,h 表示散列函 数,则有h = h ( m ) ,m 长度不限,h 长度固定。单向散列函数必须满足下列 的条件: ( 1 ) 给定m ,很容易计算h 。 ( 2 ) 给定h ,根据h ( m ) _ h 计算m 很困难。 9 北京交通入学硕士学t i ) = 论文相关技术背景 ( 3 ) 给定m ,要找到另一个消息m 并满足h ( m ) = h ( m 很难。 单向散列函数旨在创建用于验证消息完整性的简短摘要。消息发送方计算消 息的摘要并将其随消息一起发送,接收方重新计算消息摘要并将其与收到的消息 摘要相比较,如果两者不同,接收方就认为消息在传送过程中受损,并要求发送 方重新发送。如果预计的损坏原因是电信号错误或者其他自然现象,这些方法是 可行的。但如果预计的原因是恶意的狡猾攻击者的故意破坏,则需要更强的机制, 在这种情况下,强加密单向散列函数便可派上用场。强加密单向散列函数是这样 设计的:不可能通过计算找出两条散列值相同的消息。对于校验和狡猾的攻击者 可以轻易地对消息进行修改,并使其校验和与原消息的校验和相同;而对于循环 冗余校验,达到这样的目的也不困难。但强加密单向散列函数却能令这一目标遥 不可及。m d 5 和s h a 1 是两种强加密单项散列算法,其中m d 5 是r o n r i v e s t ( r s a 算法的发明人之一) 于1 9 9 2 年发明的,该算法生成1 2 8 位的散列值;而s h a 1 是由美国国家标准与技术研究院( n i s d 于1 9 9 5 年发明的,它生成1 6 0 位的散列 值。s h a - i 的计算速度比m d 5 慢,但由于生成的散列值更长而被认为具有更强 的加密能力。 2 2 4 数字签名 数字签名是手写签名的电子对应物它是以密码学的方法对数据文件产生的 一组代表签名者身份和数据完整性的数据信息。数字签名用来保证信息传输过程 中信息的完整和提供信息发送者的身份认证和不可抵赖性,以解决伪造、抵赖、 冒充等问题。数字签名技术逐步替代了传统的手写签名,开始应用于电子银行、 电子政务等领域【引。 数字签名必须保证以下三点: ( 1 ) 能够核实发送者对报文的签名 ( 2 ) 发送者不能否认对报文的签名 ( 3 ) 接受者不能伪造对报文的签名。 数字签名使用中所描述的安全哈希函数被称为摘要函数,通常长度为位。确 定性的摘要函数应用到整个文档中,并根据消息中的每一位信息产生一个值。数 字签名的算法很多,应用最为广泛的三种是:h a s h 签名。d s s 签名和r s a 签名。 ( 1 ) h a s h 签名 h a s h 签名不属于强计算密集型算法,应用较广泛。它可以降低服务器资源 的消耗,减轻中央服务器的负荷。h a s h 的主要局限是接收方必须持有用户密钥的 副本以检验签名,因为双方部知道生成签名的密钥,较容易攻破,存在伪造签名 的可能。 0 北京交通大学硕士学位论文相关技术背景 ( 2 ) d s s 和r s a 签名 d s s 和r s a 采用了公钥算法,不存在h a s h 的局限性。r s a 是最流行的一种 加密标准,许多产品的内核中都有r s a 的软件和类库。早在w c b 飞速发展之前, r s a 数据安全公司就负责数字签名软件与m a c i n t o s h 操作系统的集成,在a p p 】e 的协作软件p o w e r t a l k 上还增加了签名拖放功能,用户只要把需要加密的数据拖 到相应的图标上,就完成了电子形式的数字签名。与d s s 不同,r s a 既可以用 来加密数据,也可以用于身份认证。和h a s h 签名相比,在公钥系统中,由于生 成签名的密钥只存储于用户的计算机中,安全系数大一些。 2 3 x m l 安全基础 2 3 ix m l 简介 可扩展标记语言x m l 是标准通用语言s g m l 的一个子集。它将s g m l 的 功能与h t m l 的易用性结合到w e b 的应用中,以一种开放的、自我描述的方式 定义了数据结构。x m l 是结构化的文档,文档中包含元素与元素内的属性。各 元素之间呈层次关系,属性是元素要表达的信息的补充。各元素的层次关系就是 x m l 文档包含的数据的内在关系。这种层次关系使得x m l 文档可以较容易被 解析。通过构造标准的x m l 解析器获取x m l 文档中包含的数据和信息。给x m l 附加文档类型定义d t d 或者x m ls c h e m a 可以使x m l 增添自描述性和可扩展 性。自描述性表现在x m l 文档通常包含一个文档类型的声明,不仅人能读懂 x m l 文档,计算机也能够处理。可扩展性允许开发者创建他们自己的文档类型 定义【9 】。 x m l 的这些特点使得x m l w e bs e r v i c e s 的提出成为可能。服务请求者所接 收到的返回信息不再是h t m l 而是x m l 文档。然后从x m l 文档中提取有用的 数据和信息供应用程序进一步使用。 2 3 2x m l 安全技术 与x m l 相关的安全技术规范最重要的部分是x m l 加密、x m l 签名、 x a c l 4 可扩展访问控制语言) 、s a m e ( 安全声明标记语言) 和x k m s ( x m l 密钥管 理规范1 。 x m l 加密提供了用于s s l 未涵盖的安全性需求的机制。x i v l l 加密过程允 北京交通大学硕士学位论文相关技术背景 许使用多个对称密钥或多个非对称密钥来实现元素级的加密,也就是说x m l 文 档的制作者可以根据需要将最重要的部分选择性地加密,使用者也能对需要保护 的部分进行加密【l o 】, x m l 数字签名技术较好地解决了传统签名中的不支持多重签名、通用性不 好等问题。不仅可以像传统数字签名一样对整个文档签名,还可以对文档特定的 部分迸行签名,而且还支持多重签名。x m l 数字签名是一个w 3 c ( w o r l dw i d e w e bc o n s o r f i r t m ) 规范。作为一个安全有效的数字签名方案,该规范提供了数字 签名的完整性、签名确认性和不可抵赖性。为了适应不同的文件系统和解析器, x m l 签名非常依赖“规范化”的概念,以便签名能够在x m l 文档所碰到的各 种环境中起作用。在目前的规范中规定:消息摘要使用s h a 1 算法,消息鉴别编 码使用h m # c 算法,数字签名使用r s a 和p k c s i 算法:在安全模式上,可以使 用基于对称密钥和基于公开密钥两种体制【l l 】。 s o a p ( s i m p l eo b j e c ta mp r o t o c a l ,简单对象访问协议) 是一种基于x m l 的、在非集中的、分布式环境中交换结构化和固化信息的轻量级协议。s o a p 可 以和现存的许多因特网协议和格式结合使用,包括超文本传输协议( h 1 r p ) ,简 单邮件传输协议( s m t p ) ,多用途网际邮件扩充协议( m i m e ) 。它还支持从消息系 统到远程过程调用( r e m o t e p r o c e d u r e c a l l p r o t o c o l - - r p c ) 等大量的应用程序。 s o a p 允许任何类型的对象( 或代码) 在任何平台上,以任何一种语言相互通信 “z j 。目前,已在2 0 多个平台上,以6 0 多种语言实现了s o a p 。 2 4 2s o a p 构成 s o a p 包括三个部分【1 3 】: ( 1 ) s o a p 封装:它定义了一个框架,该框架描述了消息中的内容是什么, 谁应当处理、以及它是可选的还是必须的。 ( 2 ) s o a p 编码规则:它定义了一种序列化的机制,用于交换应用程序所定 义的数据类型的实例。 ( 3 ) s o a pr p c 表示:它定义了用于表示远程过程调用和应答的协定。 北京交通大学硕士学位论文相关技术背景 s o a p 消息基本上是从发送端到接收端的单向传输,但它们常常结合起来执 行类似于请求应答的模式。所有的s o a p 消息都使用x m l 编码。一条s o a p 消息就是一个包含有一个必需的s o a p 的封装包,一个可选的s o a p 标头和一 个必需的s o a p 体块的x m l 文档。把s o a p 绑定到h t t p 提供了同时利用 s o a p 的样式和分散的灵活性的特点以及h r r p 的丰富的特征库的优点。在 m 1 p 上传送s q a p 并不是说s o a p 会覆盖现有的h t r p 语义,而是h 1 r p 上的 s o a p 语义会自然的映射到 册语义。在使用h 1 r p 作为协议绑定的场合中, r p c 请求映射到h t r p 请求上,而r p c 应答映射到h t t p 应答。然而,在r p c 上使用s o a p 并不仅限于h r r p 协议绑定。 2 4 3s o a p 数据类型 在s o a p 消息中,每个元素可能是一个s o a p 结构元素、根元素、存取元 素或一个独立的元索【1 1 。在s o a p 中,s o a p :e n v e l o p e 、s o a p :b o d y 和s o a p :h e a d e r 是唯一的组成元素。在s o a p 元素的四种类型中,除了结构元素外都被用作表达 类型的实侈| i 或对一个类型实椤i 的引用。根元素是显著的元素,它是s o a p :b o d y 或 是s o a p :h e a d e r 的直接的子元素。其中s o a p :b o d y 只有一个根元素,它表达调用、 响应或错误对象。这个根元素必须是s o a p :b o d y 的第一个子元素,它的标记名和 域名u r l 必须与h t r ps o a p m e t h o d n a m e 头或在错误消息情况下的s o a p :f a u l t 相对应。而s o a p :h e a d e r 元素有多个根元素,与消息相联系的每个头扩展对应一 个。这些根元素必须是s o a p :h e a d e r 的直接子元素,它们的标记名和名域u r i 表 示当前存在扩展数据的类型。存取元素被用作表达类型的域、属性或数据成员。 一个给定类型的域在它的s o a p 表达将只有一个存取元素。存取元素的标记名对 应于类型的域名。 2 5 小结 本章对身份管理的相关技术背景进行了介绍。酋先是j 2 e e 的简介,从j 2 e e 的体系结构和安全体系两个方面说明了j 2 e e ,然后对应用密码学和x m l 安全基 础做了简要的说明,最后重点介绍了s o a p 协议的情况。本节为下面的章节要用 到的技术傲了铺垫。 北京交通火学硕士学位论文身份管理标准与技术 3 身份管理标准与技术 3 1 身份管理 3 1 1 网络身份和联合身份 网络身份是一种软件解决方案。它集成了一组以网络为中心的业务流程和技 术支持基础设旋,以管理身份的生命周期以及这些身份与业务应用和信息之间的 关系。网络身份不只是对访问应用和资源用户进行认证或授权,它还需要管理身 份的生命周期以及实现支持这种管理的业务流程 t s l 。 联合身份是指通过网络在公司和应用之间或跨越不同安全基础设壹蠡使用的 身份信息。对这些身份的管理是在公司之间进行的,并且相互依存。联合身份局 限于公司或企业内部的网络身份的使用范围扩大到多个企业爽体或安全基础设 施,包括如何向身份提供者注册、撤消和终止身份等复杂过程和实现。显然与网 络身份相比,联合身份面临的安全风险和集成挑战更多。跨公司单点登录是一种 联合身份功能,它允许用户只需要认证一次就能访问多个远程应用系统和资源。 身份管理是指管理网络身份和联合身份。 3 1 2 身份管理的任务 典型的身份管理基础设施解决方案以服务的形式提供以下功能【i “。 ( 1 ) 身份供应服务:包括创建和管理可访问企业资源和业务应用的用户身 份,和将用户实体映射到不同的角色或组。自动的身份供应( 也称为用户账户供 应) 和管理能极大地缩短完成以下工作的时间:建立用户账户、在用户角色变更 时修改其访问权限和在用户与公司关系终结时及时安全地撤销其账户。使用基于 角色和规则的供应解决方案在设置用户、机构、资源、角色和组的供应规则方面 提供了一定的灵活性。这种解决方案还可以确保策略得以实施。而且,动态的工 作流程组件可以支持包含多个步骤的复杂供应,并自动完成修改身份数据的工 作。 ( 2 ) 账户服务供应:包括根据访问权限和用户配置文件在不同的系统中为用 户账户服务以及在各种应用、目录、数据库和其他数据存储区之问自动同步身份 数据( 也称为用户账户同步) 将提高运行效率。自动同步免除了手工同步数据, 可以确保数据的准确性以及数据在不同系统中的一致性。 北京交通人学硕士学位论文身份管理标准与技术 ( 3 ) 访问管理服务:让本地或分布式管理员能创建或更新用户身份和角色层 次结构,这些身份和角色授予用户访问应用和资源的权限。有效地实现必需的安 全和用户服务等级,身份管理解决方案必须确保基本身份和应用信息的安全传 递,以支持单点登录。对应用和服务的单点登录访问必须支持驻留在本地或通过 网络运行于不同平台上的异构应用、w e b 服务和资源。 ( 4 ) 联合服务:单点登录( s s o ) 和全局注销 单点登录避免了维护独立认证安全的基础设施。通过共享相同的用户认证机 制,单点登录降低了与其他安全域互操作的成本,同时改善了用户体验。系统在 表示层使用户身份或会话失效后,全局注销将自动注销其他会话。全局注销对于 保护用户会话的完整性免受黑客和入侵者破坏也极为重要。为提供联合框架和能 与现有企业信息系统互操作的共享认证机制,身份管理联合服务应集成相关的行 业标准( 如l i b e r t y ) 。这样才能识别已通过认证的身份,让使用该身份的用户能 在多个领域中享用个性化服务。员工、客户及合作伙伴都能无缝地安全地访问多 种应用和外购服务,而中问不会被打断,从而极大地改善用户的体验 ( 5 ) 目录服务 为响应过程和资源对安全整合的要求,集中式或分散式的目录为越来越多的 公司所采用,以提高安全、改善性能及支持企业级集成。基于目录的解决方案应 提供比基本l d a p 目录更多的好处,例如,身份信息的客观化

温馨提示

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

评论

0/150

提交评论