任何應用考慮到安全,絕不能明文的方式保存密碼。密碼應該通過哈希算法進行加密。有很多標準的算法比如SHA或者md5,結合salt(鹽)是一個不錯的選擇。 SPRing Security 提供了BCryptPassWordEncoder類,實現Spring的PasswordEncoder接口使用BCrypt強哈希方法來加密密碼。
BCrypt強哈希方法 每次加密的結果都不一樣。
好了廢話不多說,就看怎么整合吧。。
這樣配置就好了。但是關于怎么初始化密碼呢,和注冊用戶的時候怎么給密碼加密呢?
public SysUser create(User u user){ //進行加密 BCryptPasswordEncoder encoder =new BCryptPasswordEncoder(); sysUser.setPassword(encoder.encode(user.getRawPassword().trim())); userDao.create(user); return sysUser;雖然每次 BCryptPasswordEncoder 的 encoder 結果都不一樣,但是存貯其中一次加密結果 也能夠驗證成功
新聞熱點
疑難解答