博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CentOS安装CAS 5.3.4服务端
阅读量:5329 次
发布时间:2019-06-14

本文共 4029 字,大约阅读时间需要 13 分钟。

1、安装jdk1.8

2、安装tomcat8

3、安装maven

4、下载cas-overlay

百度地址:

解压cas-overlay-template-5.3.zip

进入cas-overlay-template-5.3目录

执行:mvn clean package

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

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

pom.xml内容如下:

4.0.0
fxma
Word2Html
0.0.1-SNAPSHOT
jar
Word2Html
http://maven.apache.org
org.apereo.cas
cas-server-support-jdbc-drivers
${cas.version}
org.apereo.cas
cas-server-support-jdbc
${cas.version}
mysql
mysql-connector-java
8.0.12
5.3.4
UTF-8
8.0.12

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=DEFAULTcas.authn.jdbc.query[0].passwordEncoder.characterEncoding=UTF-8cas.authn.jdbc.query[0].passwordEncoder.encodingAlgorithm=MD5

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

增加对密码加盐处理

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

#数据库连接cas.authn.jdbc.encode[0].driverClass=com.mysql.cj.jdbc.Drivercas.authn.jdbc.encode[0].url=jdbc:mysql://127.0.0.1:3306/dsideal_db?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=falsecas.authn.jdbc.encode[0].user=rootcas.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=654321cas.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

org.apache.shiro
shiro-core
1.3.2

 jar包百度地址:

 

项目下载:

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

你可能感兴趣的文章
巧用Win+R
查看>>
浅析原生js模仿addclass和removeclass
查看>>
Python中的greenlet包实现并发编程的入门教程
查看>>
java中遍历属性字段及值(常见方法)
查看>>
深入理解jQuery框架-框架结构
查看>>
YUI3自动加载树实现
查看>>
python知识思维导图
查看>>
当心JavaScript奇葩的逗号表达式
查看>>
App Store最新审核指南(2015年3月更新版)
查看>>
织梦MIP文章内容页图片适配百度MIP规范
查看>>
[Kali_BT]通过低版本SerialPort蓝牙渗透功能手机
查看>>
C语言学习总结(三) 复杂类型
查看>>
HNOI2018
查看>>
【理财】关于理财的网站
查看>>
Ubunt中文乱码
查看>>
《当幸福来敲门》读后
查看>>
【转】系统无法进入睡眠模式解决办法
查看>>
省市县,循环组装,整合大数组
查看>>
stm32中字节对齐问题(__align(n),__packed用法)
查看>>
like tp
查看>>