IT虾米网

Shiro使用MD5加密处理

sanshao 2022年06月30日 编程语言 166 0
1、我们首先定义一个专门负责取得加密后密码的工具类。我们本次采用的是MD5加密处理,以下为代码实例:
public class MyPasswordEncrypt {
    private static final String SALT = "*****************"; 
    
    /**  
     * 提供有密码的加密处理操作 
     * @param password 
     * @return 
     */ 
    public static String encryptPassword(String password) { 
        return new MD5Code().getMD5ofStr(password + "*****"+SALT+"*****") ; 
    } 
}
2、要建立一个认证的匹配处理类;
public class CustomerCredentialsMatcher extends SimpleCredentialsMatcher {
    @Override 
    public boolean doCredentialsMatch(AuthenticationToken token, AuthenticationInfo info) { 
    // 取得原始的输入数据信息 
        Object tokenCredentials = MyPasswordEncrypt.encryptPassword(super.toString(token.getCredentials())).getBytes(); 
        // 取得认证数据库中的数据 
        Object accountCredentials = super.getCredentials(info) ; 
        return super.equals(tokenCredentials, accountCredentials);  
    } 
}
将MemberRealm的操作配置定义在spring的配置文件中,
在整个的shiro操作过程之中,对于用户的认证部分除了自定义的Realm之外还需要有一个专门的认证匹配器。
<bean id="memberRealm" class="cn.mldn.realm.MemberRealm">  
    <property name="credentialsMatcher">  
        <bean class="cn.realm.cre.CustomerCredentialsMatcher"/>
    </property>  
</bean>
评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

Shiro在Spring的RememberMe设置(免登陆配置)