spring security3 使用自定义MD5或者其他加密规则

首先看下sping security的xml配置:

    
    
    	
    	
    	
    	
    	
    	
		
    

下面这个是spring本身的加密规则和定义了一个自身的加密规则:

    
	
	

spring源码的代码就不贴了,下面贴下自己的加密规则(可实现多个加密规则于一身),首先要继承上面源码的那个类(org.springframework.security.authentication.encoding.Md5PasswordEncoder),然后重写isPasswordValid()方法,返回true就是验证通过,false即为验证不通过!

    public boolean isPasswordValid(String encPass, String rawPass, Object salt) {
		boolean flag = false;
		if(StringUtils.isNotBlank(MD5_CLASS) && MD5WithSalt.equals(MD5_CLASS)){//MD5WithSalt,这个加密方式
			flag = com.ruizhisoft.framework.security.utils.MD5WithSalt.verify(rawPass, encPass);
		}else{//MyMd5PasswordEncoder,这个加密方式
			flag = com.ruizhisoft.framework.security.utils.MyMd5PasswordEncoder.verify(encPass, rawPass, null);
		}
		return flag;
    }

你可能感兴趣的:(xml配置,Spring,安全登录认证,security)