• 1. 姓名:董曙光 时间:2011年08月 中国科学院自动化研究所单点登录(SSO)调研报告
  • 2. 内容提要SSO概述SSO背景SSO概念SSO技术SSO技术实现机制SSO详细介绍CASCAS概述CAS详细介绍CAS实例补充CAS补充参考资料
  • 3. 企业信息系统现状ERPOAPMS考勤日报系统电子财务系统电子邮件系统…内部论坛经营分析系统………
  • 4. 企业信息系统集成基于角色的统一集成平台易用安全稳定的单点登录统一知识管理和高速协同办公
  • 5. 什么是SSO单点登录SSO单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。更为形象的解释IBM对SSO有一个形象的解释“单点登录、全网漫游”。
  • 6. SSO技术实现机制用户登陆系统A被引导到认证系统认证系统进行身份校验通过则返回认证凭据ticket从认证系统跳转到A系统用户访问A系统成功用户访问B系统B系统把ticket送到认证系统认证系统对ticket进行校验通过则可直接访问B系统用户访问C、D、E系统同理
  • 7. SSO需要实现的功能统一认证系统所有应用系统共享一个身份认证系统识别ticket所有应用系统能够识别和提取ticket信息识别登录用户应用系统能够识别已经登录过的用户,能自动判断当前用户是否登录过,从而完成单点登录的功能。
  • 8. SSO体系中的角色SSO认证中心一个Web 多个User多个
  • 9. SSO单点登录的好处减少用户在不同系统中登录耗费的时间,减少用户登录出错的可能性实现安全的同时避免了处理和保存多套系统用户的认证信息减少了系统管理员增加、删除用户和修改用户权限的时间增加了安全性:系统管理员有了更好的方法管理用户,包括可以通过直接禁止和删除用户来取消该用户对所有系统资源的访问权限
  • 10. 现有SSO解决方案收费SSO解决方案UTrust深信服UNION-HAC 惠普灵动Tivoli Siteminder RSA Secure开源SSO解决方案CASSourceID.NETOpenSSOSAML JOSSO CoSignWebAuthLoong SSODOMINO SSO应用最广泛的开源SSOCAS
  • 11. CAS简介介绍CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目。官网:http://www.jasig.org/cas特点开源的企业级单点登录解决方案。CAS Server 为需要独立部署的 Web 应用。CAS Client 支持非常多的客户端(这里指单点登录系统中的各个 Web 应用),包括 Java, .Net, PHP, Perl, Apache, uPortal, Ruby 等。
  • 12. CAS构成与协议CAS Server 需要独立部署,主要负责对用户的认证工作CAS Client负责处理对客户端受保护资源的访问请求,需要登录时,重定向到 CAS ServerHTTPS(SSL)协议
  • 13. CAS基础协议
  • 14. CAS应用实例-证书创建证书证书是单点登录认证系统中很重要的一把钥匙,客户端于服务器的交互安全靠的就是证书;开发和测试环境可以用JDK自带的keytool工具生成证书正式在产品环境中使用肯定要去证书提供商处购买,证书认证一般都是由VeriSign认证, 中文官方网站:http://www.verisign.com/cn/命令:keytool -genkey -alias wsria -keyalg RSA -keystore d:/keys/wsriakey导出证书用keytool工具导出证书导出后可以分发给应用的jdk使用命令:D:\keys>keytool -export -file d:/keys/wsria.crt -alias wsria -keystore d:/keys/wsriakey为客户端的JVM导入证书完成创建、导出、导入后,可以开始在Web服务器中使用证书命令:keytool -import -keystore D:\tools\jdk\1.6\jdk1.6.0_20\jre\lib\security\cacerts -file D:/keys/wsria.crt -alias wsria
  • 15. CAS应用实例-CAS服务器配置应用证书到Web服务器-Tomcat启用web服务器SSL协议方法:修改tomcat配置文件conf/server.xml完成后可以通过https://访问tomcat主页cas-server配置下载cas-server服务端包解压后放在tomcat/webapps下可以访问cas服务器页面,默认用户名密码相同即可登陆cas-server深入配置配置cas服务器从数据库中读取验证信息以mysql为例,需要创建用户表、修改配置文件和拷入jar包三步
  • 16. CAS应用实例-CAS客户端配置CAS客户端配置添加cas-client的jar包到应用web的lib中设置filter:修改应用web的web.xml文件后续美化修改登陆界面,把cas默认的登陆界面修改为自己想要的默认页面目录cas\WEB-INF\view\jsp\default\ui
  • 17. CAS默认登录页面
  • 18. 美化登录页面范例1
  • 19. 美化登录页面范例2
  • 20. -20-补充cas补充1、对于安全机制要求不高的系统,可以去除https认证。 2、cas不同版本的实现方式有不小的差异。 3、网络资料全部都是基于tomcat的CAS,如果基于websphere等,会有一些不同。要求各单位执行1、暂时不需要。 2、在最终系统集成的时候导入证书、jar包、和修改配置文件即可。参考资料http://www.ibm.com/developerworks/cn/opensource/os-cn-cas/ http://www.wsria.com/archives/1349 http://wenku.baidu.com/view/e6c8c42ded630b1c59eeb521.html
  • 21. Thanks!