CAS配置详解
1.下载cas-server和cas-client(可选,建议使用)
http://www.ja-sig.org/downloads/cas/cas-server-3.0.zip
http://www.yale.edu/tp/cas/cas-client-2.0.11.zip
2.将cas-server-3.0.zip解压,并将lib/cas.war拷贝到server1的webapps下
3.产生SERVER的证书
keytool -genkey -alias my-alias-name -keyalg RSA -keystore keystore.keystore 首先在命令行中切换到 %java_home%\jre\lib\security目录 %java_home%\bin\keytool -genkey -alias tomcat -keyalg RSA 密码是:changeit 姓名是:localhost 其他随便写的 之后是 %java_home%\bin\keytool -export -alias tomcat -file server.crt (导出SERVER的证书,用来给所有需要用到的客户端导入) 和 %java_home%\bin\keytool -import -file server.crt -keystore % java_home%/jre/lib/security/cacerts (在客户端的JVM里导入信任的SERVER的证书(根据情况有可能需要管理员权限)
4.在server1配置tomcat使用HTTPS $CATALINA_HOME/conf/server.xml里
<Connector port="8443" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" disableUploadTimeout="true" acceptCount="100" debug="0" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="C:\Documents and Settings\new\keystore.keystore" keystorePass="changeit" />
5.在要使用CAS的客户端client1里设置(以servlets-examples这个APP为例),我们使用ServletFilter(CAS client里提供的)来实现SSO的检查。将cas-client-2.0.11\java\lib文件复制到%tomcat_home%\webapps\servlets- examples\WEB-INF\lib中(没有lib文件夹,自己建一个) 修改servlets-examples/WEB-INF/web.xml
<?xml version="1.0" encoding="UTF-8"?> <filter> <filter-name>CASFilter</filter-name> <filter-class> edu.yale.its.tp.cas.client.filter.CASFilter </filter-class> <init-param> <param-name> edu.yale.its.tp.cas.client.filter.loginUrl </param-name> <param-value>https://localhost:8443/cas/login</param-value> </init-param> <init-param> <param-name> edu.yale.its.tp.cas.client.filter.validateUrl </param-name> <param-value> https://localhost:8443/cas/proxyValidate </param-value> </init-param> <init-param> <param-name> edu.yale.its.tp.cas.client.filter.serverName </param-name> <param-value>localhost:8080</param-value> </init-param> </filter> <filter-mapping> <filter-name>CASFilter</filter-name> <url-pattern>/servlet/*</url-pattern> </filter-mapping>
6.将cas-client-2.0.11.zip解压,把java/lib/casclient.jar拷贝到client1服务器上的webapps/servlets-examples/WEB-INF/lib目录下(如果没有就建一个)
7.导出SERVER的证书,用来给所有需要用到的客户端导入 (在第三步生成这里重复一下) keytool -export -file myserver.cert -alias my-alias-name -keystore keystore.keystore
8.test & done. 把server1和client1分别起来,检查启动的LOG是否正常,如果一切OK,就访问 http://client1:8080/servlets-examples/servlet/HelloWorldExample 系统会自动跳转到一个验证页面,随便输入一个相同的账号,密码,严正通过之后就会访问到真正的HelloWorldExample这个servlet了
分享到:
相关推荐
**Yale CAS(Central Authentication Service)是耶鲁大学开发的一款基于Web的身份验证系统,它允许用户通过单一登录(Single Sign-On, SSO)访问多个应用系统。本篇将详细探讨Yale CAS的最佳实践,包括环境准备、...
CAS(Central Authentication Service)是Java开发的一个开源的单点登录...通过学习和实践,你可以掌握CAS的核心概念,实现自定义认证策略,以及优化客户端集成,从而为你的项目构建一个强大而安全的单点登录系统。
同时,确保所有改动符合CAS的安全最佳实践,以防止潜在的安全风险。 总结,实现CAS系统下不同应用展示不同登录页的关键在于理解CAS的工作机制,并对服务器端进行适当的配置和扩展。通过修改登录视图、动态选择页面...
CAS服务端应用是这个框架的核心部分,它处理用户的身份验证请求,确保用户在访问多个受保护的应用时只需要登录一次。在你提供的信息中,`cas-server-webapp-4.0.0.war` 是一个WAR文件,这是一个Web应用程序的归档...
Struts2和CAS单点登录(SSO)的集成是一个常见的Web应用安全实践,它允许用户在一个系统登录后,无须再次输入凭证就能访问其他相互信任的系统。在这个例子中,我们将深入探讨如何在MyEclipse环境下使用Struts2框架与...
2. 配置CAS Server,包括修改配置文件、部署CAS应用到Tomcat服务器。 3. 配置CAS Client,这可能涉及修改web.xml文件,引入CAS客户端库,并配置客户端的信任CAS Server的地址。 4. 可能需要修改CAS客户端的Java源...
【标题】"CAS修改登录页"是一个针对中央认证服务(Central Authentication Service,简称CAS)的定制化实践。在单点登录(Single Sign-On,SSO)系统中,CAS扮演着核心角色,它提供了统一的身份验证服务,使得用户只...
在本文中,我们将深入探讨CAS单点登录的基本原理、工作流程以及如何通过提供的Demo进行实践操作。 **CAS基本原理** CAS的核心思想是用户只需在一个应用系统中验证身份,之后访问其他所有支持CAS的应用系统时都不再...
jdk1.8,其中用到redis存储tickets,使用了代理模式、restful、自定义用户验证等,由于文件大小的限制,client1和casproxy只有应用,把其解压后下面的目录拷贝到tomcat下的webapp即能使用,如果没有redis需要修改...
CAS(Central Authentication Service)客户端是一种身份验证框架,用于实现单点登录...通过实践和调试这个示例项目,你可以深入理解CAS客户端的工作原理,并能将其应用于自己的项目中,提升用户认证的安全性和便利性。
【标题】"CAS官方提供的例子改造"涉及到的核心知识点是单点登录(Single Sign-On, SSO)系统,特别是关于CAS(Central Authentication Service)的实践应用。CAS是一种开放源码的SSO协议,它允许用户通过一个认证...
CAS(Central Authentication Service,中央认证服务)是Java社区开发的一个开源SSO解决方案,它为Web应用提供了统一的认证和授权服务。 CAS的核心概念包括以下几个部分: 1. **CAS服务器**:这是SSO的核心,负责...
在Spring Boot应用中集成CAS,需要配置CAS客户端,处理CAS服务返回的令牌,完成用户的登录验证。 项目的具体实现流程可能包括以下步骤: 1. 使用Spring Initializr初始化Spring Boot项目,选择需要的依赖如Web、...
### cas spnego认证方式高可用集群方案 ...该方案不仅解决了传统CAS集群中的常见问题,还针对SPNEGO认证模式下特有的技术难题提供了详尽的解决思路与实践指南,为企业级应用的安全稳定运行提供有力支持。
本项目是关于如何将CAS(Central Authentication Service)与SpringMVC和Shiro结合实现SSO的实践示例。 首先,我们来了解一下三个主要组件: 1. **CAS**: CAS是一个开源的身份验证框架,主要用于处理用户身份验证...
单点登录(Single Sign-On,简称SSO)是一种网络身份验证机制,允许用户在一个系统上登录后,无需再次输入...通过理解和实践CAS Server的配置以及客户端的集成,开发者可以有效地在自己的应用环境中实现单点登录功能。
CAS(Central Authentication Service)是一种广泛使用的开放源码身份验证框架,它允许用户通过单一登录(Single Sign-On,SSO)访问多个应用系统。在“cas源码修改-登录页面”这个主题中,我们将深入探讨如何定制...
CAS(Central Authentication Service)是一种基于Web的单点登录(Single Sign-On, SSO)协议,主要用于简化用户在多个应用系统间的登录流程。`cas-client-core-3.3.3` 是一个CAS客户端的核心库,它使得应用程序能够...
总结起来,这个"单点登录cas服务器demo及springboot客户端demo"项目提供了一个实践单点登录概念的实例,涵盖了CAS服务器的搭建、Spring Boot应用的CAS客户端集成,以及Shiro或Pac4j的使用。对于想要学习和理解SSO...
总之,CAS-Server-Client单点登录demo提供了一个实践SSO功能的平台,帮助开发者理解如何在不同应用间实现统一身份验证。通过对CAS服务器和客户端的配置,以及在Apache Tomcat上进行测试,你可以深入掌握SSO的工作...