CAS - CentOS下部署CAS服务器及简单使用
下载CAS并打成War包:https://github.com/apereo/cas-overlay-template
然后在服务器上安装Tomcat,如果运行多个Tomcat,需要修改Tomcat配置文件里的一些端口。
安装Tomcat
1、上传tomcat服务器到文件夹/usr/local/cas目录下
2、解压并删除命令:
cd /usr/local/cas/
tar zxvf apache-tomcat-8.5.32.tar.gz
rm -rf apache-tomcat-8.5.32.tar.gz
3、修改文件名为tomcat命令:
mv apache-tomcat-8.5.32/ tomcat
4、如果服务器上运行多个Tomcat需要修改server.xml文件
修改下面两个端口即可,我这里将tomcat端口8080修改为9100了。
5、启动测试Tomcat是否正在运行:/usr/local/cas/tomcat/bin/startup.sh
6、如果正常运行,可以停止Tomcat了:/usr/local/cas/tomcat/bin/shutdown.sh
部署CAS服务
1、将打好的war包上传到tomcat的webapps下,如果数据库使用的是8.0,记得将8.0的jar包打入war包
2、启动tomcat,让tomcat自己解压war包
3、停止tomcat之后才能删除war包:rm -rf cas.war
然后可以通过访问tomcat端口下的cas/login,出现下面这个页面即成功。
输入用户名casuser 密码:Mellon即可登录。
具体安装方法可参考:https://blog.csdn.net/Anumbrella/article/details/81045885?utm_source=distribute.pc_relevant.none-task
配置CAS
1、配置允许登出后跳转至指定页面
修改cas系统的配置文件WEB-INF目录下的application.properties中添加如下配置
# 配置允许登出后跳转到指定页面
cas.logout.followServiceRedirects=true
# 跳转到指定页面需要的参数名为 service
cas.logout.redirectParameter=service
2、启用记载JSON配置文件
修改cas系统的配置文件WEB-INF目录下的application.properties中添加如下配置
cas.tgc.secure=false
cas.serviceRegistry.initFromJson=true
3、修改http支持的配置
修改/WEB-INF/classes/services目录下的HTTPSandIMAPS-10000001.json
4、重启Tomcat
简单使用CAS
测试两个工程,一个登录认证之后,另外一个是否还需要认证。
创建war工程casProject1和casProject2,配置一致:
①引入pom依赖
<!-- cas -->
<dependency><groupId>org.jasig.cas.client</groupId><artifactId>cas-client-core</artifactId><version>3.3.3</version>
</dependency>
<dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>2.5</version><scope>provided</scope>
</dependency>
②配置web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://java.sun.com/xml/ns/javaee"xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"version="2.5"><!-- 用于单点退出,该过滤器用于实现单点登出功能,可选配置 --><listener><listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class></listener><!-- 该过滤器用于实现单点登出功能,可选配置 --><filter><filter-name>CAS Single Sign Out Filter</filter-name><filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class></filter><filter-mapping><filter-name>CAS Single Sign Out Filter</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><!--如果没有登录,会重定向到cas服务器当中 server是服务端的IP--><param-value>http://10.35.30.88:9100/cas/login</param-value></init-param><init-param><param-name>serverName</param-name><!--登录完成之后, 跳回自己的业务系统, 这里是业务系统的ip和商口--><param-value>http://127.0.0.1:9001</param-value></init-param></filter><filter-mapping><filter-name>CASFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping><!-- 该过滤器负责对Ticket的校验工作,必须启用它 --><filter><filter-name>CAS Validation Filter</filter-name><filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class><init-param><param-name>casServerUrlPrefix</param-name><!--登录之后,校验令牌的地址 cas服务器的地址--><param-value>http://10.35.30.88:9100/cas</param-value></init-param><init-param><param-name>serverName</param-name><!--校验完成之后跳回业务系统 业务系统的ip和端口--><param-value>http://127.0.0.1:9001</param-value></init-param></filter><filter-mapping><filter-name>CAS Validation Filter</filter-name><url-pattern>/*</url-pattern></filter-mapping><!-- 该过滤器负责实现HttpServletRequest请求的包裹, 比如允许开发者通过HttpServletRequest的getRemoteUser()方法获得SSO登录用户的登录名,可选配置。 --><filter><filter-name>CAS HttpServletRequest Wrapper Filter</filter-name><filter-class>org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class></filter><filter-mapping><filter-name>CAS HttpServletRequest Wrapper Filter</filter-name><url-pattern>/*</url-pattern></filter-mapping><!-- 该过滤器使得开发者可以通过org.jasig.cas.client.util.AssertionHolder来获取用户的登录名。 比如AssertionHolder.getAssertion().getPrincipal().getName()。 --><filter><filter-name>CAS Assertion Thread Local Filter</filter-name><filter-class>org.jasig.cas.client.util.AssertionThreadLocalFilter</filter-class></filter><filter-mapping><filter-name>CAS Assertion Thread Local Filter</filter-name><url-pattern>/*</url-pattern></filter-mapping>
</web-app>
③其中一个工程配置下index.jsp,添加一个退出标签
④运行其中一个去进行登录认证,然后再启动另外一个
可以发现,第二个无需登录。
⑤选择其中一个项目中进行注销
然后刷新第二个项目的页面,发现第二个项目的也注销了。
CAS - CentOS下部署CAS服务器及简单使用相关推荐
- CentOS下部署web2py服务器
本文的应用场景是要在centos下部署一个web2py服务器. 笔者的环境是Windows7 +VMare10 +CentOS v7 +SSH,全部是64位. 以可以从主机的浏览器访问到服务器的服务作 ...
- CAS (10) —— JBoss EAP 6.4下部署CAS时出现错误exception.message=Error decoding flow execution的解决办法...
CAS (10) -- JBoss EAP 6.4下部署CAS时出现错误exception.message=Error decoding flow execution的解决办法 jboss版本: jb ...
- Centos下部署NTP时间服务器同步环境
Centos下部署NTP时间服务器同步环境记录 我是在购买的3A平台购买的服务器进行测试. 服务端部署 安装所需软件包 [root@test ~]# yum -y install ntp ntpdat ...
- CentOS下架设VNC服务器
CentOS下架设VNC服务器 1.什么是VNC服务器? 百度百科: VNC (Virtual Network Computer)是虚拟网络计算机的缩写.它 是一款优秀的远程控制工具软件,由著名的 A ...
- CentOS下的DNS服务器搭建
CentOS下的DNS服务器搭建 实验环境:VMware workstation 10 centos 6.4 说明: DNS是计算机域名系统或域名解析服务器(Domain Name S ...
- centos下搭建dhcp服务器
centos下搭建dhcp服务器 一.软件环境 CentOS release 6.5 dhcp-4.1.1-51.P1.el6.centos.x86_64 dhcp-common-4.1.1-51.P ...
- CentOS 下搭建svn服务器
CentOS 下搭建svn服务器 安装SVN yum 安装 创建 svn 目录 svn 的目录结构 conf 中的设置[重点] 设置 authz 设置 passwd 设置 svnserve.conf ...
- linux(centOS)下搭建node服务器之一、 安装Node.js
本例系统环境:腾讯云 CentOS 7.4 64位 一.找相应node版本,复制链接 1. 打开网址 http://nodejs.cn/download/; 2. ctrl+shift+i(打开开发者 ...
- 《Centos下部署ThinkPHP》
Centos 7服务器版下部署ThinkPHP 部署条件 : 1,首先要安装Centos 7服务器版,我的博客中有如何安装,希望对大家有帮助:http://blog.csdn.net/self_rea ...
最新文章
- 26岁创造UNIX,退休后却成为一名飞行员,这位编程界大佬不走寻常路
- mongooseim xmpp 服务器docker 安装试用
- python tcl 控件_在Tkinter.Tcl()中使用Python函数
- Ionic创建页面以及页面之间跳转、页面添加返回按钮、新增底部页面
- BZOJ4589. Hard Nim
- Altium Designer20 PCB板子绘制
- Rust笔记1 rust基本概念
- 机场也应该取个好听的名
- c语言烟花表白程序代码,C语言实战之浪漫烟花表白程序代码
- 【学习笔记】用Excel制作随机抽奖器(Visual Basic编程)。
- Linux开发板通过U盘拷贝文件
- TRANCATE TABLE与DETELE TABLE的区别
- 最新kali之bulk_extractor
- Java 用NIO实现一个聊天室(多人聊天、单人聊天)
- 卸载 Notepad++ !事实已证明,它更牛逼……
- Guzzle中的异步请求
- 第一章 新科技革命引发产业革命
- 【Gas优化】GasChecker
- 【计算机基础】03-Word习题
- 荣耀7c升鸿蒙,荣耀也能升级!鸿蒙所需配置曝光:麒麟710起步
热门文章
- 不用调用函数的情况下 作次方运算
- 【AD常见问题】STM32C8T6最小系统板的间距
- 如何使用电脑还原点还原系统
- 黑苹果手动修改intel hd3000核显显存大小.2022-11-29
- 实物图鉴TMS320F2812PGFA代理销售现货价格
- Non-stationary Transformers: Exploring the Stationarity in Time Series Forecasting论文阅读
- 华为鸿蒙系统操作教程_华为鸿蒙2.0系统怎么退回EMUI11系统?手把手教你如何进行操作...
- 电机与拖动 - 8 直流电机的电力拖动
- RTC电路锂电池耗电过快的问题
- python通过获取图片固定位置的颜色坐标,并且通过坐标点颜色填充整张图片代码+注释