- 1、本文档共84页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * 单点登录系统的一般实现技术 单点登录的技术实现机制:当用户第一次访问应用系统1的时候,因为还没有登录,会被引导到认证系统中进行登录;根据用户提供的登录信息,认证系统进行身份效验,如果通过效验,应该返回给用户一个认证的凭证—Ticket;用户再访问别的应用的时候,就会将这个Ticket带上,作为自己认证的凭据 所有应用系统共享一个身份认证系统; 所有应用系统能够识别和提取Ticket信息; 应用系统能够识别已经登录过的用户,能自动判断当前用户是否登录过,从而完成单点登录的功能。 单点登录的实例 微软的Passport技术 MIT的Kerberos认证协议 OASIS的SAML标准 Kerberos认证协议 Kerberos协议的主要特点 1)采用对称密码体制,而未采用公钥密码体制,Kerberos与网络上的每个实体(用户和应用服务器)共享一个不同的密钥,是否知道该密钥便是身份的证明; 2)为客户机/服务器应用程序提供身份认证服务,而不能被浏览器/服务器程序采用; 3)具有可伸缩性,能够支持大数量的用户和服务器进行双向认证。 Kerberos 数据库 Kerberos 用户(C) 认证服务器(AS) 票据许可 服务器(TGS) 应用服务器(V) Kerberos认证模型 Kerberos共享密钥和认证初步方案 共享用户 口令KC 共享对称 密钥KV 用户(C) 应用服务器(V) 认证服务器(AS) IDC, IDV EKc(Ticket) 用户(C) 应用服务器(V) 认证服务器(AS) IDC, Ticket 。 图3.24 Kerberos共享密钥初步方案 图3.25 Kerberos认证初步方案 引入TGS 这样就完全解决了应用服务器V认证用户的问题,但不能实现单点登录。 引入票据许可服务器TGS(Ticket-Granting Server),让认证服务器AS 并不直接向用户发放访问应用服务器的票据(服务许可票据),而是由 TGS向用户发放。用户在AS处认证成功后,AS发放一张票据许可票据Tickettgs给用户,票据许可票据相当于购票许可证。 引入TGS后Kerberos共享密钥方案 共享用户 口令KC 共享对称 密钥KV 用户(C) 应用服务器(V) 票据许可服务器(TGS) 认证服务器(AS) 共享对称密钥Ktgs 引入TGS后Kerberos的认证方案 IDC, IDtgs 用户(C) 应用服务器(V) 票据许可服务器(TGS) 认证服务器(AS) Tickettgs EKc(Tickettgs) Ticketv IDC ||Ticketv 引入会话密钥 但图中TGS与用户之间没有共享任何密钥,因此TGS无法对发送给用户的TicketV加密,这导致攻击者可以截获票据,然后将票据重放给V以冒充用户骗取服务。 为此,Kerberos引入了会话密钥,由AS为用户与TGS之间生成一会话密钥Kc,tgs,将这个密钥与Tickettgs一起用Kc加密后分发给用户,同时将这个密钥放在Ticket’tgs里分发给TGS,(Ticket’tgs就是包含Kc,tgs的Tickettgs,Ticket’tgs= EKtgs[Kc,tgs, IDC, ADC, IDtgs])。这里,AS起到了为用户和TGS分发对称密钥的作用。 引入会话密钥后Kerberos认证方案 IDC, IDtgs 用户(C) 应用服务器(V) 票据许可服务器(TGS) 认证服务器(AS) EKc(Kc,tgs, Ticket’tgs) EKc,tgs(Ticketv) Ticketv Kerberos认证模型的最终方案 IDC, IDtgs 用户(C) 应用服务器(V) 票据许可服务器(TGS) 认证服务器(AS) EKc(Kc,tgs, Tickettgs) EKc,tgs(KC,V,Ticket’v) Ticket’v(含Kc,v) || EKc,v[IDC||ADC||TS5] EKc,v(TS5+1) Kerberos认证过程总结 ①在认证过程中,总共使用了5个对称密钥,分别是Kc、Ktgs、Kv、Kc,tgs、Kc,v,其中2个会话密钥每次都是由AS或TGS临时生成的,这样每次使用的密钥都不同,防止了对票据的重放。 ②实际上,Kerberos为防止票据重放,还在传输的消息中和票据中每次都加入了时间戳。 ③用户登录后的整个过程仅使用一张票据许可票据,而每请求一次服务需使用一张服务许可票据 SAML标准 SAML即安全断言标记语言,英文全称是Security Assertion Markup Language。它是一种基于XML语言的,用于在不同的安全域(Security
文档评论(0)