cas3.x版本单点登录之一
2015-04-10 15:07
120 查看
由于今天下午公司服务器调试,终于可以抽点时间写点东西了....
cas 单点登录目前最新版本是4.0,先给大家写cas 3.x版本的如果部署环境是weblogic那就使用cas4.0,cas3.x在weblogic上部署有问题
第一步:先下载cas的服务器端支持包:cas-serve3.x.zip(这里我用的是cas-server-3.4.11-release版本,3.5版本和3.4差别不大)
第二步:下载cas有客户端支持包。Cas-client.zip(这里我用的是cas-client-3.2.1-release)
第三步:从cas-server.zip中找到服务器端的程序:
![](https://img-blog.csdn.net/20150410152651161?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2VpYTg2NjkyNTY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
第四步:修改名称为casserver将此程序发布到tomcat的webapps目录下或是配置到别一个独立的虚拟主机
第五步:找到自己的web项目,添加cas-client-core.jar和commons-loggin.jar到mywebapps/WEB-INF/lib目录下。
第六步:找到mywebapps的web.xml添加如下配置(在所有过滤器最上面添加)
<!-- Sign out not yet implemented -->
<!-- 单点登录退出---->
<filter>
<filter-name>CAS Single Sign Out Filter</filter-name>
<filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class>
</filter>
<filter>
<filter-name>CAS Authentication Filter</filter-name>
<filter-class>org.jasig.cas.client.authentication.AuthenticationFilter</filter-class>
<init-param>
<!--配置cas登录完整地址---->
<param-name>casServerLoginUrl</param-name>
<param-value>http://127.0.0.1:8080/casserver/login</param-value>
</init-param>
<init-param>
<!--配置mywebapps所在的服务地址,只需要到服务地址不需要项目名称---->
<param-name>serverName</param-name>
<param-value>http://127.0.0.1:8080</param-value>
</init-param>
<init-param>
<param-name>renew</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>gateway</param-name>
<param-value>false</param-value>
</init-param>
</filter>
<filter>
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>
<init-param>
<!--配置cas服务器的验证地址---->
<param-name>casServerUrlPrefix</param-name>
<param-value>http://127.0.0.1:8080/casserver</param-value>
</init-param>
<init-param>
<!--配置mywebapps所在的服务地址,只需要到服务地址不需要项目名称---->
<param-name>serverName</param-name>
<param-value>http://127.0.0.1:8080</param-value>
</init-param>
</filter>
<filter>
<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
<filter-class>org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class>
</filter>
<filter>
<filter-name>CAS Assertion Thread Local Filter</filter-name>
<filter-class>org.jasig.cas.client.util.AssertionThreadLocalFilter</filter-class>
</filter>
<!-- ************************* -->
<!-- Sign out not yet implemented -->
<filter-mapping>
<filter-name>CAS Single Sign Out Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CAS Authentication Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CAS Validation Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CAS Assertion Thread Local Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CAS Validation Filter</filter-name>
<url-pattern>/proxyCallback</url-pattern>
</filter-mapping>
<!-- *********************** -->
<!-- Sign out not yet implemented -->
<!-- -->
<listener>
<listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class>
</listener>
<!-- *********************** -->
第七步: 修改Cookie的生成方式:
默认生成的Cookie,只有在访问https时才会带上。取消此限制,修改casserver程序中的spring配置文件:
ticketGrantingTicketCookieGenerator.xml
如下:
![](https://img-blog.csdn.net/20150410160138585?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2VpYTg2NjkyNTY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
至此一个简易的cas单点登录配置完成,测试登录即可,默认情况下,使用相同的名称和密码进行登录。
cas 单点登录目前最新版本是4.0,先给大家写cas 3.x版本的如果部署环境是weblogic那就使用cas4.0,cas3.x在weblogic上部署有问题
第一步:先下载cas的服务器端支持包:cas-serve3.x.zip(这里我用的是cas-server-3.4.11-release版本,3.5版本和3.4差别不大)
第二步:下载cas有客户端支持包。Cas-client.zip(这里我用的是cas-client-3.2.1-release)
第三步:从cas-server.zip中找到服务器端的程序:
第四步:修改名称为casserver将此程序发布到tomcat的webapps目录下或是配置到别一个独立的虚拟主机
第五步:找到自己的web项目,添加cas-client-core.jar和commons-loggin.jar到mywebapps/WEB-INF/lib目录下。
第六步:找到mywebapps的web.xml添加如下配置(在所有过滤器最上面添加)
<!-- Sign out not yet implemented -->
<!-- 单点登录退出---->
<filter>
<filter-name>CAS Single Sign Out Filter</filter-name>
<filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class>
</filter>
<filter>
<filter-name>CAS Authentication Filter</filter-name>
<filter-class>org.jasig.cas.client.authentication.AuthenticationFilter</filter-class>
<init-param>
<!--配置cas登录完整地址---->
<param-name>casServerLoginUrl</param-name>
<param-value>http://127.0.0.1:8080/casserver/login</param-value>
</init-param>
<init-param>
<!--配置mywebapps所在的服务地址,只需要到服务地址不需要项目名称---->
<param-name>serverName</param-name>
<param-value>http://127.0.0.1:8080</param-value>
</init-param>
<init-param>
<param-name>renew</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>gateway</param-name>
<param-value>false</param-value>
</init-param>
</filter>
<filter>
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>
<init-param>
<!--配置cas服务器的验证地址---->
<param-name>casServerUrlPrefix</param-name>
<param-value>http://127.0.0.1:8080/casserver</param-value>
</init-param>
<init-param>
<!--配置mywebapps所在的服务地址,只需要到服务地址不需要项目名称---->
<param-name>serverName</param-name>
<param-value>http://127.0.0.1:8080</param-value>
</init-param>
</filter>
<filter>
<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
<filter-class>org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class>
</filter>
<filter>
<filter-name>CAS Assertion Thread Local Filter</filter-name>
<filter-class>org.jasig.cas.client.util.AssertionThreadLocalFilter</filter-class>
</filter>
<!-- ************************* -->
<!-- Sign out not yet implemented -->
<filter-mapping>
<filter-name>CAS Single Sign Out Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CAS Authentication Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CAS Validation Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CAS Assertion Thread Local Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CAS Validation Filter</filter-name>
<url-pattern>/proxyCallback</url-pattern>
</filter-mapping>
<!-- *********************** -->
<!-- Sign out not yet implemented -->
<!-- -->
<listener>
<listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class>
</listener>
<!-- *********************** -->
第七步: 修改Cookie的生成方式:
默认生成的Cookie,只有在访问https时才会带上。取消此限制,修改casserver程序中的spring配置文件:
ticketGrantingTicketCookieGenerator.xml
如下:
至此一个简易的cas单点登录配置完成,测试登录即可,默认情况下,使用相同的名称和密码进行登录。
相关文章推荐
- [版本V2.0]登录页面IP限制,不能登录问题
- 知识点031-批量利用python的WIN版本创建.xsh文件批量登录
- KTDictSeg 分词组件1.3版本 部分算法讨论 -- 中文姓名识别和未登录词识别
- discuz登录流程解析(版本X3.2)
- 关于mysql 5.7 版本登录时出现错误 1045的随笔
- 例子:实现最新版本Node.js中Express+mongodb的登录注册页面
- RTX2010以上版本服务器端已导入license文件,客户端远程登录提示企业网关未登录
- Fedroa1X以后版本开启用root用户登录的方法
- 使用share SDK实现人人网授权登录分享(1.x版本)
- [版本控制]SVN如何清除用户信息,重新登录?
- c#--log.txt文件中记录用户登录时使用的浏览器版本
- Mac OS X Yosemite Beta版本登录界面卡死解决方案
- 模拟实现本站登录窗口(Swing版本)
- discuz登录流程解析(版本X3.2)
- 完美解决DiscuzX3.2版本的QQ登录跳转到完善信息页面完成注册流程
- 用户登录网站1.1版本(分页 cookie处理)
- 用户登录网站(servlet版本1.2)
- iOS QQ第三方登录 提示所安装的QQ不是最新版本的问题
- 解决“此版本的 SQL Server 不支持用户实例登录标志。该连接将关闭”问题