springSecurity 密码md5+salt配置

密码进行md5加密,并且带salt值。

例如username:name password:pass  salt为username

则明文密码为  pass{name}  括弧中为salt对应的username,再对明文密码进行加密


springSecurity配置如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
 <authentication-manager  alias="authenticationManager" >
    <authentication-provider ref="authenticationProvider">  </authentication-provider>
 </authentication-manager>
     
   <beans:bean id="authenticationProvider" class="org.springframework.security.authentication.dao.DaoAuthenticationProvider">  
    <beans:property name="userDetailsService" ref="myUserDetailService" />  
    <beans:property name="passwordEncoder" ref="passwordEncoder"/> 
    <beans:property name="saltSource" ref="saltSource"/> 
  </beans:bean>
   
  <beans:bean id="passwordEncoder"  class="org.springframework.security.authentication.encoding.Md5PasswordEncoder"/>
<beans:bean id="saltSource" class="org.springframework.security.authentication.dao.Reflec tionSaltSource">
    <beans:property name="userPropertyToUse" value="username"/>
</beans:bean>


authenticationProvider的配置中加入passwordEncoder与saltSource两个属性

到此配置就结束了


同时,springSecurity提供了Md5PasswordEncoder类实现MD5加密

1
2
3
Md5PasswordEncoder md5 = new Md5PasswordEncoder(); 
String result = md5.encodePassword("user""user");
System.out.println(result);

md5.encodePassword两个参数中,前一个为password,后一个为salt盐值


同时,网站http://md5jiami.51240.com/ 也提供了在线加密的功能


     本文转自布拉君君 51CTO博客,原文链接:http://blog.51cto.com/5148737/1615981,如需转载请自行联系原作者






上一篇:祭奠我逝去的8年码农时光


下一篇:SQL注入直接修改管理员密码的MD5值