c0aa36775fa6ebbe21539089f3c2dadf.ppt
- Количество слайдов: 46
SSO与反向代理技术介绍 清华大学计算中心 刘乃嘉 2008 -05
SSO简介 n SSO(Single Sign-On) n n n 直译为一次登录 在用户访问网站时作一次身份认证,随后就 可以对所有被授权的网络资源进行无缝的访 问 单点登录、全网漫游
SSO样例 清华信息门户——登录前
SSO样例 清华信息门户——登录后
SSO样例 清华信息门户—访问财务系统
SSO样例 清华信息门户-访问教务系统
SSO样例 清华信息门户-访问个人桌面
SSO的来源 n 应用系统越来越多 n n n 信息技术和网络技术迅猛发展 财务系统、办公自动化系统、决策支持系统、客户 关系管理系统和网站发布系统等 身份认证和用户管理上出现了问题 n n n 用户必须记住每一个系统的用户名和密码 随着系统的增多,出错的可能性就会增加 安全性就会相应降低 n n 受到非法截获和破坏的可能性也会增大 统一用户认证、单点登录概念出现 n 不断地被应用到企业应用系统中。
SSO的好处 n n n 减少登录耗费的时间 减少登录出错的可能性 避免了处理和保存多套系统用户的认证信息 减少了系统管理员增加、删除用户和修改用 户权限的时间 增加了安全性 n 系统管理员有了更好的方法管理用户,包括可 以通过直接禁止和删除用户来取消该用户对所 有系统资源的访问权限
SSO实现的基础—— 统一用户管理 n 原因 n n 如果用户信息不统一,系统就无法很好的做到 身份的正确识别 传统应用系统运行模式 n n 每个应用系统都拥有独立的用户信息管理功能 用户信息的格式、命名与存储方式也多种多样 当用户需要使用多个应用系统时就会带来用户 信息同步问题 用户信息同步会增加系统的复杂性,增加管理 的成本。
SSO实现的基础—— 统一用户管理 n 例子 n n n 用户X需要同时使用A系统与B系统,就必须在A 系统与B系统中都创建用户X 这样在A、B任一系统中用户X的信息更改后就必 须同步至另一系统 如果用户X需要同时使用 10个应用系统,用户信 息在任何一个系统中做出更改后就必须同步至其 他 9个系统。用户同步时如果系统出现意外,还 要保证数据的完整性,因而同步用户的程序可能 会非常复杂
用户管理系统(UUMS) n n 解决用户同步问题的根本办法 UUMS统一存储所有应用系统的用户信息, 应用系统对用户的相关操作全部通过 UUMS完成,而授权等操作则由各应用系 统完成,即统一存储、分布授权。
用户管理系统(UUMS) n UUMS基本功能 n n n 用户信息规范命名、统一存储,用户ID全局 惟一。用户ID犹如身份证,区分和标识了不 同的个体。 UUMS向各应用系统提供用户属性列表,如 姓名、电话、地址、邮件等属性,各应用系 统可以选择本系统所需要的部分或全部属性。 应用系统对用户基本信息的增加、修改、删 除和查询等请求由UUMS处理。
用户管理系统(UUMS) n n 应用系统保留用户管理功能,如用户分组、 用户授权等功能。 UUMS应具有完善的日志功能,详细记录各 应用系统对UUMS的操作
统一用户认证系统 n n 统一用户认证是以UUMS为基础,对所有应 用系统提供统一的认证方式和认证策略,以 识别用户身份的合法性 应支持以下几种认证方式 n n n 匿名认证方式: 用户不需要任何认证,可以匿名 的方式登录系统 用户名/密码认证: 这是最基本的认证方式 PKI/CA数字证书认证: 通过数字证书的方式认证 用户的身份
统一用户认证系统 n n n IP地址认证: 用户只能从指定的IP地址或者 IP地址段访问系统 时间段认证: 用户只能在某个指定的时间段 访问系统 访问次数认证: 累计用户的访问次数,使用 户的访问次数在一定的数值范围之内
认证策略 n n n 指认证方式通过与、或、非等逻辑关系组合 后的认证方式 管理员可以根据认证策略对认证方式进行增、 删或组合,以满足各种认证的要求。 比如,某集团用户多人共用一个账户,用户 通过用户名密码访问系统,访问必须限制在 某个IP地址段上。该认证策略可表示为: 用 户名/密码“与”IP地址认证。
数字证书认证 n n 通常应用在安全级别要求较高的环境中 PKI(Public Key Infrastructure)即公钥基 础设施是利用公钥理论和数字证书来确保系 统信息安全的一种体系。 非对称密钥密码体制 密钥 n n n 成对生成 一个公钥和一个私钥 公钥公布于众,私钥为所用者私有
数字证书认证 n 加解密过程 n n n 发送者利用接收者的公钥发送信息 解密:接收者利用自己的私钥解密 数字签名 n n n 确保数据完整性和原始性 从数据被签名以来数据尚未发生更改 确认对数据签名的人或实体的身份 安全电子商务的基本要求 使用方法 n n 签名者使用私钥签名 接受者使用公钥确认签名
数字证书 n n n n 互联网通讯中标志通讯各方身份信息的一系列数据 由一个由权威机构-----CA机构,又称为证书授权 (Certificate Authorit y)中心发行的 人们可以在网上用它来识别对方的身份 数字证书是一个经证书授权中心数字签名的包含公 开密钥拥有者信息以及公开密钥的文件。 最简单的证书包含一个公开密钥、名称以及证书授 权中心的数字签名。 一般情况下证书中还包括密钥的有效时间,发证机 关(证书授权中心)的名称,该证书的序列号等信息, 证书的格式遵循 ITUT X. 509国际标准。
授权管理(PMI) n PMI n n n Privilege Management Infrastructure 授权管理基础设施 向用户和应用程序提供授权管理服务 提供用户身份到应用授权的映射功能 提供与实际应用处理模式相对应的、与具体 应用系统开发和管理无关的授权和访问控制 机制
PMI与PKI n n PMI以资源管理为核心,对资源的访问控 制权统一交由授权机构统一处理 PMI和PKI主要区别: n n n PKI证明用户是谁, PMI证明这个用户有什么权限,能干什么 而且PMI可以利用PKI为其提供身份认证
SSO的基本原理 n 单点登录的实质 n n 安全上下文(Security Context)或凭证( Credential)在多个应用系统之间的传递或共享 当用户登录系统时,客户端软件根据用户的凭 证(例如用户名和密码)为用户建立一个安全 上下文,安全上下文包含用于验证用户的安全 信息,系统用这个安全上下文和安全策略来判 断用户是否具有访问系统资源的权限。
SSO的基本原理
统一用户认证与单点登录模型
统一用户认证与单点登录模型 n AA管理服务器: n n 即认证(Authentication)和授权( Authorization)服务器,它为系统管理员提供 用户信息、认证和授权的管理 SSO: 包括SSO代理和SSO服务器。SSO代理 部署在各应用系统的服务器端,负责截获客 户端的SSO请求,并转发给SSO服务器,如 果转发的是OCSP请求,则SSO服务器将其 转发给OCSP服务器。在C/S方式中,SSO代 理通常部署在客户端。
统一用户认证与单点登录模型 n SSO n n SSO服务器需要存储一张用户会话(Session) 表,以记录用户登录和登出的时间 SSO服务器通过检索会话表就能够知道用户 的登录情况,该表通常存储在数据库中 AA系统提供了对会话的记录、监控和撤消等 管理功能。 为保证稳定与高效,SSO、PMI和OCSP 可部署两套或多套应用,同时提供服务。
清华大学统一认证和漫游系统 n n 数字校园的重要组成部分,是网络基础 服务之一 校园网络应用系统提供一个统一的口令 认证接口,实现用户在不同应用系统中 口令的统一化 实现网络应用的“单点登录”(SSO, Single Sign On) 稳定、可靠、安全、高效
系统结构图
用户认证过程
用户漫游过程
认证和漫游接口 n n n Java接口 C接口 PHP接口 ASP接口 Notes接口
SSO的其他实现方式 n 安全上下文 n n 使用同域内cookie方式 n n Windows域 安全性不好 其他简易做法 n 使用对称密钥
反向代理系统 n 目的 n 解决基于IP地址认证资源的访问
背景 n 图书馆论文保护 n n n n n 教育用->商用是侵权的行为,很难区分用户的真正用途 不完全禁止下载 只防范大批量的恶意下载 分析用户的行为 要求可以追查到人而不是某个IP 自动分析用户行为,并做出统计 用户不必对客户机做额外的配置 论文服务器图书馆没有权限管理,因而不能把访问控制系统 做在服务器端,必须外挂。 清华门户系统代理 n n 门户系统很多内容限制在校外访问 门户系统可以识别校内外
背景 n 解决方案 n n 使用正常的Web代理 使用VPN技术 使用SSL VPN技术 解决方案存在的问题 n n 用户设置不方便 可能需要安装控件 控制粒度不细致 不能很好的区分用户的行为
反向代理(1) n 原理 n n 从外观看来,也就是从普通用户看来,反向 代理就像普通的WEB服务器一样。而反向代 理所代理的每一个WEB服务器都好像是反向 代理服务器中的一个目录。 反向代理也可以说是一个目录映射代理服务 器,而不是端口映射代理服务器
反向代理(2) n 举例 n n http: //webserver. com/index. html http: //lstd. cic. tsinghua. edu. cn/~WACS/ webserver. com/index. html https: //webserver. com/index. html http: //lstd. cic. tsinghua. edu. cn/~WACSS/ webserver. com/index. html
反向代理(3)
反向代理(4) n 优点 n n n 客户端不必配置 用户可以使用正向代 理访问 用户对其它网站的访 问速度不受影响 n 缺点 n n 要全文扫描并改写链 接,对反向代理服务 器要求较高 尚不能解决部分script 的问题
客户机浏览器 反向代理结构 Servlet接 收层 Servlet 发送层 认证层 内容 过滤层 请求 改写层 Cache层 回复 改写层 HTTP 发送层 HTTP 接收层 WEB服务器 反向代理
反向代理的关键技术(1) n 地址改写 n n 按照html和cookie的规范,用正则表达式解决,有 比较成熟的技术 绝对地址(以http: //或“/”打头),则把它改写成通 过反向代理的格式。 n 绝对地址的改写经常会出现一些问题,例如js中的地址改 写(“/”开头的地址),采用了filter技术解决 n n 原理:我们可以大致认为:某一次访问的网站应该和上一次 的基本一致,如果我们不能知道这次访问的地址,就认为和 上次的一样 相对地址不用改动
反向代理关键技术(2) n Cookie改写 JSESSIONID=a. HOYGWGME 6 f 8会被改写成 _WA_0000 JSESSIONID=a. HOYGWGME 6 f 8 其中_WA_是开头部分,固定 0000是网站标识,具体对应的哪个网站是由 服务器端存储在用户的会话过程中的 n n n Location改写 Referer改写
使用指南 n 可被代理地址: n n 可代理地址: n n 图书馆使用,限制用户行为,防止过量下载 规则填写说明 n n 用户地址限制 黑名单、不受限用户、不受限IP、规则 n n 服务器地址限制 使用正则表达式,常用的是. *,代表所有字符。可 以使用括号、NOT、OR、AND等 纯Java实现,实施简单
谢谢!
c0aa36775fa6ebbe21539089f3c2dadf.ppt