Shiro使用者認證

2021-10-10 16:33:36 字數 1616 閱讀 3907

通過鳥哥文章學習shiro知識,原文連線:

1. 搭建乙個spring boot web,然後引入shiro

本篇不講解spring boot web專案搭建,直接在乙個spring boot web 專案基礎上引入shiro並做使用者認證配置。

org.apache.shiro

shiro-spring

1.4.0

2. 定義乙個shiro配置類

定義filterchain配置不配攔截的url

配置退出過濾器,具體**實現shiro已有

除配置了不攔截的url以外其他url都必須通過認證才能進行訪問

@configuration

public class shiroconfig

@bean

public defaultwebsecuritymanager securitymanager()

@bean

public shirorealm shirorealm()

}

3. 配置完shiroconfig後,接下來對realm進行實現,然後注入到securitymanager中。

dogetauthorizationinfo:獲取使用者角色和許可權(本篇只講解驗證)
dogetauthenticationinfo:對登入的賬號密碼進行驗證
public class shirorealm extends authorizingrealm 

/*** 登入認證

*/@override

protected authenticationinfo dogetauthenticationinfo(authenticationtoken token) throws authenticationexception

if (!password.equals(user.getpassword()))

/*if (user.getstatus().equals("0")) */

******authenticationinfo info = new ******authenticationinfo(user, password, getname());

return info;

}}

4. 密碼儲存通過md5加密處理

這裡用的是一般加鹽處理,普通的使用者名稱+密碼再md5

public class md5util 

}

5.controller

獲取到使用者輸入的使用者名稱和密碼後,對其進行驗證

usernamepasswordtoken 是用來儲存使用者名稱和密碼
public response login(string username, string password) catch (authenticationexception e) catch (exception e)

}

shiro實現使用者認證

login public string login string username string password model model catch unknownaccountexceptione catch incorrectcredential ceptione doctype html h...

Shiro許可權認證

shiro的授權以及許可權 關係圖 我們需要在service層中先寫好方法 public inte ce shirouserservice然後imp繼承 service shirouserservice public class shirouserserviceimpl implements shi...

Shiro 認證模組

僅供參考。認證模組 該模組的核心物件是認證器authenticator,其唯一功能是完成token的認證。故authenticator介面中只定義了乙個方法 基於提交的token進行認證 authenticationinfo authenticate authenticationtoken auth...