问题分析:
当前数据库中的员工表的密码字段是明文存储,导致存在安全隐患 。
解决方案:
数据库存储加密后的密码
- 技术手段:MD5加密
- 步骤:
- 将数据库中的密码改为MD5加密后的密文
这一步是直接到数据库去修改密码字段,所以修改前我们得知道加密后的密文是多少,这里我们可以先去浏览器向后端提交一个正确员工的登录信息,将密码进行加密后,通过调试得到密文,再去修改数据库的该员工的密码。比如通过调试得到123456 的密文就是e10adc3949ba59abbe56e057f20f883e。
- 修改java代码,对前端向后端提交的密码进行MD5加密,跟数据库表中的密文进行对比
很简单就一步,在初始后端工程的业务逻辑层接口实现类EmployeeServiceImpl中来进行MD5加密操作。
//获取密码
//使用spring提供的工具类DigestUtils来进行MD5加密
password = DigestUtils.md5DigestAsHex(password.getBytes());
//再对加密后的密文进行与数据库密文的比较