cas 5.3.x 服务端搭建(二)

上一篇,已经介绍了简单的cas服务端搭建(登录账户是静态的)

本篇将介绍cas连接Mysql数据库进行登录验证

首先把application.properties文件中的cas.authn.accept.users=casuser::Mellon 注释

然后添加下列配置
# cas 连接数据库
cas.authn.jdbc.query[0].url=jdbc:mysql://localhost:3306/blog?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
cas.authn.jdbc.query[0].user=root
cas.authn.jdbc.query[0].password=你的数据库连接密码
cas.authn.jdbc.query[0].sql=对应的SQL语句  例如select * from user_info where userName = ?
cas.authn.jdbc.query[0].fieldPassword= 用来比对验证账号信息是否正确的字段 例如 password
cas.authn.jdbc.query[0].driverClass=com.mysql.jdbc.Driver

然后在项目的pom文件中添加下列依赖

             
                
                    org.apereo.cas
                    cas-server-support-jdbc
                    ${cas.version}
                

                
                    org.apereo.cas
                    cas-server-support-jdbc-drivers
                    ${cas.version}
                

                
                    mysql
                    mysql-connector-java
                    ${mysql.driver.version}
                

    

此时,用户输入的密码还没有进行加密,一般数据库中存储的数据库密码都是加密过后的,此时会出现输入正确的密码,也不能登录的问题

这时需要在你的application.properties文件中添加下列配置

#使用默认方式进行密码加密

cas.authn.jdbc.query[0].passwordEncoder.type=DEFAULT
#自定义密码加密方式

#cas.authn.jdbc.query[0].passwordEncoder.type=com.example.CustomPasswordEncoder
cas.authn.jdbc.query[0].passwordEncoder.characterEncoding=UTF-8

#加密算法使用MD5进行加密
cas.authn.jdbc.query[0].passwordEncoder.encodingAlgorithm=MD5

这时,cas连接数据库登录验证就已经完成了

你可能感兴趣的:(cas,单点登录系列)