1、安装jdk1.8

https://www.cnblogs.com/kgdxpr/p/6824093.html

2、安装tomcat8

3、安装maven

https://www.cnblogs.com/kgdxpr/p/9849856.html

4、下载cas-overlay

https://github.com/apereo/cas-overlay-template/tree/5.3

百度地址:https://pan.baidu.com/s/11xHLsGiUplmARRdI4PRtCA

解压cas-overlay-template-5.3.zip

进入cas-overlay-template-5.3目录

执行:mvn clean package

将生成的cas目录复制到tomcat下

5、利用maven为cas下载连接数据库的依赖包

pom.xml内容如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>fxma</groupId><artifactId>Word2Html</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>Word2Html</name><url>http://maven.apache.org</url><dependencies><dependency><groupId>org.apereo.cas</groupId><artifactId>cas-server-support-jdbc-drivers</artifactId><version>${cas.version}</version></dependency><dependency><groupId>org.apereo.cas</groupId><artifactId>cas-server-support-jdbc</artifactId><version>${cas.version}</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.12</version></dependency></dependencies><properties><cas.version>5.3.4</cas.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><mysql.driver.version>8.0.12</mysql.driver.version></properties>
</project>

mvn -f pom.xml dependency:copy-dependencies

将下载的jar包复制到cas的lib目录下

设置cas的配置文件application.properties

将默认的静态用户名和密码配置注释掉

#cas.authn.accept.users=casuser::Mellon

增加如下内容:

#配置数据库连接
cas.authn.jdbc.query[0].url=jdbc:mysql://127.0.0.1:3306/dsideal_db?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
#数据库用户名
cas.authn.jdbc.query[0].user=root
#数据库密码
cas.authn.jdbc.query[0].password=123456
#mysql驱动
cas.authn.jdbc.query[0].driverClass=com.mysql.jdbc.Driver#添加jdbc认证
cas.authn.jdbc.query[0].sql=SELECT * FROM login WHERE login_name =?
#哪个字段作为密码字段
cas.authn.jdbc.query[0].fieldPassword=login_password
#哪个字段作为过期字段 0:未过期  1:已过期
cas.authn.jdbc.query[0].fieldExpired=expired
#哪个字段作为是否可用字段 0:未禁用  1:已禁用
cas.authn.jdbc.query[0].fieldDisabled=disabled

注:如上配置为明文密码

增加密码MD5加密配置

修改配置文件application.properties增加如下内容:

#配置加密策略
cas.authn.jdbc.query[0].passwordEncoder.type=DEFAULT
cas.authn.jdbc.query[0].passwordEncoder.characterEncoding=UTF-8
cas.authn.jdbc.query[0].passwordEncoder.encodingAlgorithm=MD5

注:上面的配置md5加密为32位小写

增加对密码加盐处理

在上面的配置的基础上,增加如下代码,可以共存:

#数据库连接
cas.authn.jdbc.encode[0].driverClass=com.mysql.cj.jdbc.Driver
cas.authn.jdbc.encode[0].url=jdbc:mysql://127.0.0.1:3306/dsideal_db?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
cas.authn.jdbc.encode[0].user=root
cas.authn.jdbc.encode[0].password=123456
#加密迭代次数
cas.authn.jdbc.encode[0].numberOfIterations=2
#该列名的值可替代上面的值,但对密码加密时必须取该值进行处理
cas.authn.jdbc.encode[0].numberOfIterationsFieldName=
#动态盐值用的字段
cas.authn.jdbc.encode[0].saltFieldName=login_name
#静态盐值
cas.authn.jdbc.encode[0].staticSalt=654321
cas.authn.jdbc.encode[0].sql=SELECT * FROM t_sys_loginperson WHERE login_name =?
#对处理盐值后的算法
cas.authn.jdbc.encode[0].algorithmName=MD5
#哪个字段作为密码字段
cas.authn.jdbc.encode[0].passwordFieldName=login_password
#哪个字段作为过期字段 0:未过期  1:已过期
cas.authn.jdbc.encode[0].expiredFieldName=expired
#哪个字段作为是否可用字段 0:未禁用  1:已禁用
cas.authn.jdbc.encode[0].disabledFieldName=disabled

java密码加盐代码:

public static void main(String[] args) {//静态盐值String staticSalt = "654321";//加密算法String algorithmName = "MD5";//密码明文String encodedPassword = "123";//动态盐值,就是登录名String dynaSalt = "admin_en"; ConfigurableHashService hashService = new DefaultHashService();hashService.setPrivateSalt(ByteSource.Util.bytes(staticSalt));hashService.setHashAlgorithmName(algorithmName);hashService.setHashIterations(2);HashRequest request = new HashRequest.Builder().setSalt(dynaSalt).setSource(encodedPassword).build();String res =  hashService.computeHash(request).toHex();System.out.println(res);}

所需的jar包的pom.xml

<dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-core</artifactId><version>1.3.2</version>
</dependency>

jar包百度地址:https://pan.baidu.com/s/1oqrOOm6p1ti-EHLrkeRDsQ

项目下载:https://pan.baidu.com/s/1-DujChC3BjhtDaUq0xw6WA

转载于:https://www.cnblogs.com/kgdxpr/p/9854657.html

CentOS安装CAS 5.3.4服务端相关推荐

  1. CAS流程简析 服务端校验Ticket

    相关阅读 CAS基础组件 简介 CAS流程简析 服务端处理未携带Service登录请求 CAS流程简析 服务端处理携带Service登录请求 CAS基础组件 客户端过滤器 简介 用户访问客户端的请求若 ...

  2. CAS (1) —— Mac下配置CAS到Tomcat(服务端)(转)

    tomcat版本: tomcat-8.0.29 jdk版本: jdk1.8.0_65 cas版本: cas4.1.2 cas-client-3.4.1 参考来源: CAS实现单点登录(SSO)经典完整 ...

  3. oracle服务端安装和下载,oracle 11g 服务端下载地址及安装说明

    Oracle 11g 服务端的安装步骤 Ø  简介 本文主要介绍 Oracle 11g 服务端的安装步骤,在介绍之前说明以下几点: 1.   所安装的服务器是本机的虚拟机,操作系统为 Windows ...

  4. mysql数据库入门教程(1):数据库的相关概念,存储特点,软件安装教程,数据库启动,服务端登录退出

    1为什么使用数据库 使用 内存(数组,集合)存储数据,一断电容易消失数据. 使用文件存储数据,断电不消失.但存储大量数据时难以查找. 数据库:能实现数据持久化,方便查询 2数据库相关概念 DB(dat ...

  5. win11 安装Subversion与配置 svn服务端

    一.下载 服务器端程序版本 目前Subversion的最新版本是 1.9.0-alpha2,这是一个测试版.官方网站推荐使用的版本是1.8.9,原话是:The best available versi ...

  6. 单点登录 cas 二次开发 服务端开发【系列一】

    版本说明: cas5.3.mysql5.7.tomcat8.5.jdk8 1.服务端下载 下载5.3版本,下载地址 https://github.com/apereo/cas-overlay-temp ...

  7. win10环境安装使用svn客户端和服务端

    一.下载安装包 安装包下载传送门http://subversion.apache.org/packages.html 无法下载的童鞋去百度云下载 链接:https://pan.baidu.com/s/ ...

  8. cas 5.3.x 服务端搭建(一)

    前期准备: 服务端官⽅下载:https://github.com/apereo/cas-overlay-template 客户端官⽅下载:https://githu b.com/cas-project ...

  9. SVN的安装及配置(客户端+服务端)

    一.SVN服务端的安装步骤    先安装SVN的服务端,双击安装程序运行 下一步 打勾同意继续下一步 默认继续下一步 选择标准版 继续next 更改安装路径继续安装 点击install等待安装完成,接 ...

  10. SVN(一)SVN的安装及配置(客户端+服务端)

    一.SVN服务端的安装步骤 先安装SVN的服务端,双击安装程序运行 下一步 打勾同意继续下一步 默认继续下一步 选择标准版 继续next 更改安装路径继续安装 点击install等待安装完成,接下来我 ...

最新文章

  1. 最新版IntelliJ IDEA 15开发Java Maven项目
  2. MySQL下的NoSQL解决方案HandlerSocket
  3. ModelCheckpoint 讲解【TensorFlow2入门手册】
  4. vue怎么引入外部地址_vue系列教程之微商城项目|主页
  5. react 面试题 高级_高级前端面试题目大全(一)
  6. 20145237第六周学习总结
  7. 阿里巴巴工程师:Java 编程技巧之数据结构
  8. codeforces 58A-C语言解题报告
  9. 钉钉免登陆前端操作详解
  10. SQL Server应用程序中的高级SQL注入[转]
  11. 心仪数据拨号服务器无响应,宽带拨号服务器未响应
  12. oracle 归档模式 ASM,oracle rac启用归档模式
  13. 用java编写简单的仓库管理_仓库管理系统+可视化界面java编写
  14. Windows Server 2012 修复ms17-010漏洞提示 此更新不适用于你的计算机
  15. 类模板 Class Templates
  16. C++程序设计:字符图形输出(空白三角形)
  17. 微信小程序实现tab标签页的切换及动态的选中下划线移动
  18. 解决 Cannot uninstall 'ipython'. It is a distutils installed project and thus we cannot accurately det
  19. 【Unity】3D模型或粒子渲染在UI上层
  20. 推荐一款超快的Android模拟器

热门文章

  1. python字典弱引用_weakref
  2. NYOJ 2括号配对 栈的运用
  3. 计算机室nb代码,NB-iot SDK源码(Linux版)
  4. Python入门经典(2K超清)
  5. VTK(四)---VMTK血管中心线提取
  6. android 底部停靠 底部吸附_充压、泄压对吸附式干燥机的重要性
  7. C/C++[codeup 1927]字符串内排序
  8. 自动驾驶 8-4: 最小二乘法和最大似然法 Least Squares and the Method of Maximum Likelihood
  9. 阿里云云计算 14 使用阿里云中的OSS
  10. 极客大学架构师训练营 微服务网关 领域驱动设计 DDD OAuth 2.0 中台架构 第20课 听课总结