Cas服务端5.3.2 之自定义密码认证

第一:项目整体结构:

注意:Java Resources 设置src/main/java 和src/main/resources 目录,并将src/main/java设置为代码文件根目录,将src/main/resources设置为资源文件根目录。截图如下:

第二步:自定义数据密码加密工具类

package com.digipower.encrypt;

import org.apache.commons.codec.digest.DigestUtils;
import org.springframework.security.crypto.password.PasswordEncoder;

/**
 * 自定义数据密码加密工具类
 * @author zzg
 *
 */
public class PasswordEncryption implements PasswordEncoder{

	@Override
	public String encode(CharSequence password) {
		return DigestUtils.md5Hex(password.toString()).toUpperCase();
	}

	@Override
	public boolean matches(CharSequence rawPassword, String encodePassword) {
		// 判断密码是否存在
        if (rawPassword == null) {
            return false;
        }
        //通过md5加密后的密码
        String pass = this.encode(rawPassword.toString());
        //比较密码是否相等的问题
        return pass.equals(encodePassword);
	}

}

注意:PasswordEncoder接口,有encode方法,一个返回经过加密规则的String类型,matches方法返回对比结果,boolean 类型。

第三步:修改application.properties 文件,将passwordEncoder.type改为自己的实现类

# md5 encryption
cas.authn.jdbc.query[0].passwordEncoder.type=com.digipower.encrypt.PasswordEncryption
cas.authn.jdbc.query[0].passwordEncoder.characterEncoding=UTF-8
# md5 encryption policy
cas.authn.jdbc.query[0].passwordEncoder.encodingAlgorithm=MD5

第四步:访问http://localhost:9100/cas/index,跳转至CAS 服务端登入界面,输入正确用户名和密码,返回相关数据结果:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值