CAS4搭建HTTP环境
1. 前言
CAS 默认认证方式使用的是HTTPS协议,一般对安全性不高的话建议取消改成HTTP方式。因为,开启的话会经常提示证书过期、需要用户确认等,客户觉得CAS证书的提示太烦了,当前有需要的可以开启HTTPS。
所以,本文会逐步介绍取消HTTPS协议的方法。
2. CAS-SERVER服务端
取消HTTPS协议,需要修改3个配置文件。
(1) cas-server\WEB-INF\deployerConfigContext.xml
<!--Required for proxy ticket mechanism. -->
<beanid="proxyAuthenticationHandler"
class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler"
p:httpClient-ref="httpClient"/>
增加参数p:requireSecure="false",是否需要安全验证,即HTTPS,false为不采用。修改后为:
<beanid="proxyAuthenticationHandler"
class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler"
p:httpClient-ref="httpClient"
p:requireSecure="false" />
(2) cas-server\WEB-INF\spring-configuration\ticketGrantingTicketCookieGenerator.xml
<beanid="ticketGrantingTicketCookieGenerator"class="org.jasig.cas.web.support.CookieRetrievingCookieGenerator"
p:cookieSecure="true"
p:cookieMaxAge="-1"
p:cookieName="CASTGC"
p:cookiePath="/cas" />
修改 p:cookieSecure="true" 为p:cookieSecure="false",即不开启https验证。
(3) cas-server\WEB-INF\spring-configuration\ warnCookieGenerator.xml
<beanid="warnCookieGenerator"class="org.jasig.cas.web.support.CookieRetrievingCookieGenerator"
p:cookieSecure="true"
p:cookieMaxAge="-1"
p:cookieName="CASPRIVACY"
p:cookiePath="/cas" />
修改 p:cookieSecure="true" 为p:cookieSecure="false",即不开启https验证。
CAS4的默认用户配置在 deployerConfigContext.xml配置文件中,用户名密码为casuser/Mellon。
3. CAS-CLIENT-客户端
配置CAS客户端,只修改WEB-INF\web.xml文件即可。
<!--========================单点登录开始======================== -->
<!--用于单点退出,该过滤器用于实现单点登出功能,可选配置 -->
<listener>
<listener-class>
org.jasig.cas.client.session.SingleSignOutHttpSessionListener
</listener-class>
</listener>
<!--该过滤器用于实现单点登出功能,可选配置。 -->
<filter>
<filter-name>CASSingle SignOutFilter</filter-name>
<filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CASSingle SignOutFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>
org.jasig.cas.client.authentication.AuthenticationFilter
</filter-class>
<init-param>
<param-name>casServerLoginUrl</param-name>
<param-value>http://localhost:18080/cas-server/login</param-value>
</init-param>
<init-param>
<param-name>serverName</param-name>
<param-value>http://localhost:8081</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!--该过滤器负责对Ticket的校验工作,必须启用它 -->
<filter>
<filter-name>CASValidationFilter</filter-name>
<filter-class>
org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter
</filter-class>
<init-param>
<param-name>casServerUrlPrefix</param-name>
<param-value>http://localhost:18080/cas-server</param-value>
</init-param>
<init-param>
<param-name>serverName</param-name>
<param-value>http://localhost:8081</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASValidationFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 该过滤器负责实现HttpServletRequest请求的包裹, 比如允许开发者通过HttpServletRequest的getRemoteUser()方法获得SSO登录用户的登录名,可选配置。 -->
<filter>
<filter-name>CASHttpServletRequestWrapperFilter</filter-name>
<filter-class>
org.jasig.cas.client.util.HttpServletRequestWrapperFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>CASHttpServletRequestWrapperFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 该过滤器使得开发者可以通过org.jasig.cas.client.util.AssertionHolder来获取用户的登录名。 比如AssertionHolder.getAssertion().getPrincipal().getName()。 -->
<filter>
<filter-name>CASAssertion ThreadLocalFilter</filter-name>
<filter-class>org.jasig.cas.client.util.AssertionThreadLocalFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CASAssertion ThreadLocalFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- ========================单点登录结束 ======================== -->
4. 补充说明
单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。
如果需要应用到项目中,还需要许多个性化的订制,比如登陆页的美化、通过数据库认证、服务端与客户端用户信息的交互等。
cas/WEB-INF/view/jsp/default/ui的一些JSP文件,每一个文件的用途文件名已经区分了:
l 登录界面:casLoginView.jsp
l 登录成功:casGenericSuccess.jsp
l 登出界面:casLogoutView.jsp
CAS4搭建HTTP环境相关推荐
- atom搭建markdown环境
1. 搭建markdown环境 > 禁用atom自带的markdown-preview插件(功能简单) > 安装插件:markdown-preview-plus@2.4.16(在markd ...
- linux apache2.4 php,php5.6+apache2.4+linux如何搭建php环境
php5.6+apache2.4+linux如何搭建php环境 前言 最近突然想搭建个人博客,尽管笔者擅长java-web,但综合各种原因,于是选择了大众化的php+mysql搭建个人博客.对于php ...
- Android NDK开发之旅29 云服务器Ubuntu下搭建NDK环境,并编译FFmpeg
###前言 因为在Linux环境下编译FFmpeg生成库和头文件下比较方便,所以接下来主要操作在Linux环境下进行.但是对于Android NDK 开发新手来说,自己电脑配置Ubuntu Linux ...
- 软件测试培训:如何搭建测试环境
如何搭建测试环境?这是很多测试人员都需要了解的,测试是每个产品上线前必备的一个检验,不管是什么产品,做好有效的测试是对产品质量的一个负责,软件测试环境要考虑的就是软件在什么软硬件下能正常运行,什么环境 ...
- vm虚拟机下linux安装python_VM中安装linux系统,安装VS Code,搭建Python环境
VM中安装linux系统 在linux系统中安装VSCode(Visual Studio Code) 1.从官网下载安装包 2.在下载目录打开终端安装 sudo dpkg -i code_1.32.3 ...
- Ubuntu 18.04.1 搭建Java环境和HelloWorld
一.搭建Java环境 系统环境 Ubuntu 18.04.1 JDK 8 IDEA 2018.2 1.下载JDK 官网地址:http://www.oracle.com/technet... 选择相应的 ...
- PCL-1.8.1从源码搭建开发环境三(QHULL库的编译)
原文首发于微信公众号「3D视觉工坊」:PCL-1.8.1从源码搭建开发环境三(QHULL库的编译) 首先,介绍一下QHull库. QHull是一个开源的程序软件,用来研究解决凸包问题,生成凸包形体.官 ...
- PCL-1.8.1从源码搭建开发环境二(FLANN库的编译)
原文首发于微信公众号「3D视觉工坊」,PCL-1.8.1从源码搭建开发环境二(FLANN库的编译) 首先,快速近似最近邻搜索库FLANN-Fast Library for Approximate Ne ...
- win10搭建python环境_win10系统搭建python环境的还原方法
有关win10系统搭建python环境的操作方法想必大家有所耳闻.但是能够对win10系统搭建python环境进行实际操作的人却不多.其实解决win10系统搭建python环境的问题也不是难事,小编这 ...
- ubuntu18.04搭建SLAM环境 转 高翔 十四讲匹配环境
ubuntu18.04搭建SLAM环境_stjuliet的博客-CSDN博客_ubuntu安装slam
最新文章
- Python Coding Guidelines
- python3 基础教程: 文件read方法(read、readline、readlines)
- linux知识点记录二
- Docker最全教程之MySQL容器化 (二十四)
- 相对布局父类属性_Unity3D RectTransform使用详解:布局、属性、方法
- 动画编辑器和骨骼动画使用
- 理解createTrackbar函数
- VPP电源控制(VPP Power)-- 由DC-DC变换集成电路MC34063组成
- 摄像头图像质量常用指标的测试方法
- 集成电路模拟版图入门-版图基础学习笔记(四)
- 上银驱动器使用手册_禾川伺服驱动器说明书
- adb server is out of date 最新解决方案
- 全能修图工具Pixelmator Pro for Mac
- Hexo-yilia主题个性化美化及功能添加
- C语言经典编程282例01
- java远程_java实现电脑远程控制详解,附完整源代码
- python导库快捷指令、快速导库、dlib库
- 【STM32】 电解电容
- 码云上最棒的Java管理后台系统
- jQuery_01选择器
热门文章
- 计算机里只剩c盘了,家里电脑上突然只剩下C盘,怎么处理
- EnableViewState详细分析
- IT服务管理、IT运维管理、IT运营管理
- SpacePack 运维工具之 Auto fdisk
- 电商设计素材:15000款淘宝促销水印元素模版,手慢的人领不到!...
- JavaSE进阶582-589 IO流(二)File类/目录拷贝
- LoadRunner教程(15)-LoadRunner 初识Analysis
- Better man 中文歌词
- python爬虫 | 鸿鹄论坛评论爬取
- 全能音乐助手 激活_全能音乐助手