日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

SpringBoot Shiro 配置自定义密码加密器

發布時間:2024/3/26 javascript 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SpringBoot Shiro 配置自定义密码加密器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SpringBoot Shiro 配置自定義密碼加密器

自定義認證加密方式

/*** 自定義認證加密方式*/ public static class CustomCredentialsMatcher extends SimpleCredentialsMatcher {@Overridepublic boolean doCredentialsMatch(AuthenticationToken authcToken, AuthenticationInfo info) {UsernamePasswordToken token = (UsernamePasswordToken) authcToken;//加密類型,密碼,鹽值,迭代次數Object tokenCredentials = new SimpleHash("md5", password, username, 2).toHex();//數據庫存儲密碼Object accountCredentials = getCredentials(info);//將密碼加密與系統加密后的密碼校驗,內容一致就返回true,不一致就返回falsereturn equals(tokenCredentials, accountCredentials);} }

第一種方式:配置Bean

/*** Shiro自帶密碼管理器** @return HashedCredentialsMatcher*/ @Bean public HashedCredentialsMatcher hashedCredentialsMatcher() {//Shiro自帶加密HashedCredentialsMatcher credentialsMatcher = new HashedCredentialsMatcher();//散列算法使用md5credentialsMatcher.setHashAlgorithmName("md5");//散列次數,2表示md5加密兩次credentialsMatcher.setHashIterations(2);credentialsMatcher.setStoredCredentialsHexEncoded(true);return credentialsMatcher; }/*** 將自己的身份驗證器驗證方式加入容器** @return CustomRealm*/ @Bean public CustomRealm shiroRealm() {CustomRealm shiroRealm = new CustomRealm();//shiroRealm.setCacheManager(cacheManager());//加入密碼管理//shiroRealm.setCredentialsMatcher(hashedCredentialsMatcher());//Shiro自帶密碼管理器shiroRealm.setCredentialsMatcher(new CustomCredentialsMatcher());//自定義密碼管理器return shiroRealm; }

第二種方式:實現AuthorizingRealm類setCredentialsMatcher方法

public class CustomRealm extends AuthorizingRealm {........./*** 設置自定義認證加密方式** @param credentialsMatcher 默認加密方式*/@Overridepublic void setCredentialsMatcher(CredentialsMatcher credentialsMatcher) {//自定義認證加密方式CustomCredentialsMatcher customCredentialsMatcher = new CustomCredentialsMatcher();// 設置自定義認證加密方式super.setCredentialsMatcher(customCredentialsMatcher);} }

趙小胖個人博客

總結

以上是生活随笔為你收集整理的SpringBoot Shiro 配置自定义密码加密器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。