我已经找到了如何使用 SpringMVC 对某人的密码进行哈希处理并将其保存在数据库中:
BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
String pw = passwordEncoder.encode("test");
现在的问题是,我如何验证来自请求的密码,让用户登录我的网络应用程序? 经过一些研究,我发现有很多方法可以做到这一点。一些解决方案适用于用户角色。
我的 webapps 应该做的是为我的用户提供一个他们可以注册的登录页面(在这里我会使用上面显示的代码保留密码)。后 注册他们应该能够登录,这意味着我需要从登录表单验证密码。 那里有任何最先进的例子吗?
最佳答案
这是将原始密码与编码密码相匹配的方式:
passwordEncoder.matches("rawPassword", user.getPassword()),
但正如其他人所说,自己编写安全代码很麻烦,因此我建议改用 Spring Security。是的,它确实需要努力学习,但你可以找到很好的教程。 Here是关于它的独特教程(免责声明:我是作者)。
关于java - 如何使用 Spring 验证密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32105906/