springBoot+springSecurity验证密码MD5加密
2017-02-08 15:13
513 查看
本文目的:使用springBoot+springSecurity 用户授权验证权限功能,对用户的登录密码使用MD5 加密。
本文基于我的博客:springboot+mybatis+SpringSecurity 实现用户角色数据库管理
进行修改。
本文只讲述对密码加密部分。只需要修改securityConfig 文件,并添加md5 工具类即可。
本文完整代码:https://github.com/527515025/springBoot
本文基于我的博客:springboot+mybatis+SpringSecurity 实现用户角色数据库管理
进行修改。
本文只讲述对密码加密部分。只需要修改securityConfig 文件,并添加md5 工具类即可。
修改WebSecurityConfig.java
对于WebSecurityConfig.java 文件只需修改configure(AuthenticationManagerBuilder auth) 方法。@Override protected void configure(AuthenticationManagerBuilder auth) throws Exception { auth.userDetailsService(customUserService()).passwordEncoder(new PasswordEncoder(){ @Override public String encode(CharSequence rawPassword) { return MD5Util.encode((String)rawPassword); } @Override public boolean matches(CharSequence rawPassword, String encodedPassword) { return encodedPassword.equals(MD5Util.encode((String)rawPassword)); }}); //user Details Service验证 }
添加MD5工具类
package com.us.example.util; /** * Created by yangyibo on 17/2/7. */ import java.security.MessageDigest; /** * MD5加密工具 * */ public class MD5Util { private static final String SALT = "tamboo"; public static String encode(String password) { password = password + SALT; MessageDigest md5 = null; try { md5 = MessageDigest.getInstance("MD5"); } catch (Exception e) { throw new RuntimeException(e); } char[] charArray = password.toCharArray(); byte[] byteArray = new byte[charArray.length]; for (int i = 0; i < charArray.length; i++) byteArray[i] = (byte) charArray[i]; byte[] md5Bytes = md5.digest(byteArray); StringBuffer hexValue = new StringBuffer(); for (int i = 0; i < md5Bytes.length; i++) { int val = ((int) md5Bytes[i]) & 0xff; if (val < 16) { hexValue.append("0"); } hexValue.append(Integer.toHexString(val)); } return hexValue.toString(); } public static void main(String[] args) { System.out.println(MD5Util.encode("abel")); } }
数据库
使用MD5 加密后,数据库中存储的密码应该是加密后的密码本文完整代码:https://github.com/527515025/springBoot
相关文章推荐
- springBoot+springSecurity验证密码MD5加密
- Spring Boot Security 学习笔记-根据登陆人动态配置权限-密码加密验证
- Security-OAuth2 密码模式之服务器实现(工具IDEA+Maven+springboot)
- SpringBoot + SpringSecurity 短信验证码登录功能实现
- Spring-Security (学习记录五)--配置登录时,密码采用md5加密,以及获取登录信息属性监听同步自己想要的登录信息
- Security-OAuth2.0 密码模式客户端实现(IDEA+springboot+maven)
- springboot整合cxf调用websrevice,带上用户名和密码验证。
- spirng-boot中,基于既有的token验证方式,利用spring-security实现权限系统
- spring boot security 自定义登陆验证(jdbc)
- Sping Boot + Spring Security + Mybaits + Logback +JWT验证 项目开发框架搭建
- INTEGRATING SPRING SECURITY WITH SPRING BOOT WEB
- spring security 权限验证
- cxf+spring实现ws-security的数字证书验证方式的记录(包括生成证书步骤)
- Spring Boot Security Application
- A Simple Web App with Spring Boot, Spring Security and Stormpath – in 15 Minutes
- Spring-boot & spring.security
- 使用validator-api来验证spring-boot的参数
- spring boot security csrf ignore
- spring-boot-security
- SpringBoot中实现邮件找回密码的功能