欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Springboot整合Shiro之加鹽MD5加密的方法

 更新時間:2018年12月03日 11:00:34   作者:夢想周游全國的孩子  
這篇文章主要介紹了Springboot整合Shiro之加鹽MD5加密的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下

1.自定義realm,在Shiro的配置類中加入以下bean

/**
  * 身份認證 realm
  */
 @Bean
 public MyShiroRealm myShiroRealm(){
  MyShiroRealm myShiroRealm = new MyShiroRealm();
  System.out.println("myShiroRealm 注入成功");
  return myShiroRealm;
 }

2.重寫方法

// 身份認證
 @Override
 protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) throws AuthenticationException {
  String username = (String) authenticationToken.getPrincipal();
  System.out.println("MyShiroRealm.....doGetAuthenticationInfo");
  UserInfo user=null;
  try {
   user = iUserInfoService.findByUsername(username);
  }catch (Exception e){
   e.printStackTrace();
  }
  if (user==null){
   return null;
  }
  // 進行驗證,將正確數據講給shiro處理
  SimpleAuthenticationInfo authenticationInfo = new SimpleAuthenticationInfo(
    user,
    user.getPassword(),
    ByteSource.Util.bytes(user.getCredentialsSalt()), // 加鹽后的密碼
    getName() // 指定當前 Realm 的類名
  );

  // 返回給安全管理器,由 securityManager 比對密碼的正確性
  return authenticationInfo;
 }

需要注意的是SimpleAuthenticationInfo 類,我們需要把數據交給他,格式為(用戶,用戶密碼,鹽,當前Realm的類名)

  // 進行驗證,將正確數據講給shiro處理
  SimpleAuthenticationInfo authenticationInfo = new SimpleAuthenticationInfo(
    user,
    user.getPassword(),
    ByteSource.Util.bytes(user.getCredentialsSalt()), // 加鹽后的密碼
    getName() // 指定當前 Realm 的類名
  );

3.你還需要告訴shiro你是經過加密的,在Config內新建如下bean

@Bean
 public HashedCredentialsMatcher hashedCredentialsMatcher(){
  HashedCredentialsMatcher hashedCredentialsMatcher = new HashedCredentialsMatcher();
  // 使用md5 算法進行加密
  hashedCredentialsMatcher.setHashAlgorithmName("md5");
  // 設置散列次數: 意為加密幾次
  hashedCredentialsMatcher.setHashIterations(2);

  return hashedCredentialsMatcher;
 }

并注冊:

 @Bean
 public MyShiroRealm myShiroRealm(){
  MyShiroRealm myShiroRealm = new MyShiroRealm();
  // 配置 加密 (在加密后,不配置的話會導致登陸密碼失?。?
  myShiroRealm.setCredentialsMatcher(hashedCredentialsMatcher()); //+++++++++++
  System.out.println("myShiroRealm 注入成功");
  return myShiroRealm;
 }

總結

以上所述是小編給大家介紹的Springboot整合Shiro之加鹽MD5加密的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

相關文章

  • ES修改字段類型的操作方式

    ES修改字段類型的操作方式

    ES修改字段類型是指在已有的索引中,通過特定的操作方式將某個字段的類型修改為其它類型,這篇文章主要介紹了ES修改字段類型的相關知識,感興趣的朋友跟隨小編一起看看吧
    2023-10-10
  • Windows系統(tǒng)下如何查找JDK的安裝路徑

    Windows系統(tǒng)下如何查找JDK的安裝路徑

    這篇文章主要介紹了Windows系統(tǒng)下如何查找JDK的安裝路徑,文中介紹了三種方法,分別是通過命令行檢查、使用verbose選項查找jre目錄、以及查看環(huán)境變量,需要的朋友可以參考下
    2025-03-03
  • RabbitMQ實現消息可靠性傳遞過程講解

    RabbitMQ實現消息可靠性傳遞過程講解

    消息的可靠性傳遞是指保證消息百分百發(fā)送到消息隊列中去,這篇文章主要介紹了RabbitMQ實現消息可靠性傳遞過程,感興趣想要詳細了解可以參考下文
    2023-05-05
  • 詳解SpringBoot?JPA常用注解的使用方法

    詳解SpringBoot?JPA常用注解的使用方法

    這篇文章主要介紹了SpringBoot?JPA常用注解的使用方法,spring?boot作為當前主流的技術,來看看常用的注解怎么用,如果有錯誤的地方還請指正,需要的朋友可以參考下
    2023-03-03
  • mybatis-plus分頁插件失效探究解決

    mybatis-plus分頁插件失效探究解決

    這篇文章主要為大家介紹了mybatis-plus分頁插件失效探究解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • spring使用OXM進行對象XML映射解析

    spring使用OXM進行對象XML映射解析

    這篇文章主要介紹了spring使用OXM進行對象XML映射解析,具有一定借鑒價值,需要的朋友可以參考下
    2017-12-12
  • Java的Hibernate框架中的繼承映射學習教程

    Java的Hibernate框架中的繼承映射學習教程

    Hibernate中的映射可以將類與表對應,并利用類的繼承特性,這里我們就來看一下Java的Hibernate框架中的繼承映射學習教程
    2016-07-07
  • 用Java連接sqlserver數據庫時候幾個jar包的區(qū)別分析

    用Java連接sqlserver數據庫時候幾個jar包的區(qū)別分析

    這篇文章主要介紹了用Java連接sqlserver數據庫時候幾個jar包的區(qū)別分析,需要的朋友可以參考下
    2014-10-10
  • Spring注入Map集合實現策略模式詳解

    Spring注入Map集合實現策略模式詳解

    這篇文章主要介紹了Spring注入Map集合實現策略模式詳解,Spring提供通過@Resource注解將相同類型的對象注入到Map集合,并將對象的名字作為key,對象作為value封裝進入Map,需要的朋友可以參考下
    2023-11-11
  • 用Java代碼實現棧數據結構的基本方法歸納

    用Java代碼實現棧數據結構的基本方法歸納

    這篇文章主要介紹了用Java代碼實現棧數據結構的基本方法歸納,各種算法的實現也是ACM上經常出現的題目,是計算機學習的基本功,需要的朋友可以參考下
    2015-08-08

最新評論