天天看點

Spring內建shiro做登陸認證

  其實很早的時候,就在項目中有使用到shiro做登陸認證,直到今天才又想起來這茬,自己抽空搭了一個spring+springmvc+mybatis和shiro進行內建的種子項目,當然裡面還有很簡單的測試。本文将講述在maven下如何進行內建,希望對你有所幫助,喜歡請推薦。至于shiro相關的,最近也會寫幾篇介紹的,希望能夠有一個主觀的了解。

  1.第一步引入shiro依賴

  2.在web.xml中引入shiro的filter

  3.resources檔案下的spring目錄下建立spring-shiro.xml

  4.建立自定義的Realm,CustomRealm.java

說明:doGetAuthorizationInfo()是做授權,比如項目中有很多資源,指定角色的人員隻有指定的資源,這種情況可以使用這個方法來做授權,doGetAuthenticationInfo()方法做認證,我們一般是用作使用者登陸主邏輯,這個方法中我們隻需要根據使用者提供的使用者名去資料庫中查找對應的使用者資訊,然後用該資訊傳回一個SimpleAuthenticationInfo對象即可,不需要比較資料庫中的密碼和token中的密碼是否一直,因為在登陸時shiro會幫我們做這件事,不比對會抛出IncorrectCredentialsException來提示密碼錯誤。

  5.自定義AuthroizeFilter.java

6.自定義SessionUtils.java來管理shiro相關的session等

  通過本文,我們就完成了spring內建shiro做登陸的授權和認證,其實很簡單,繼續努力成長!