四、Shiro之IniRealm以及用戶登陸認證,角色認證,權限認證

一、咱們在項目test文件夾下面新建resourse文件夾並將她設置爲資源文件夾:java

二、在resourse文件夾下面新建user.ini文件apache

user.ini文件裏面聲明一個用戶:api

先寫一個用戶標籤[user]測試

而後添加一個用戶:houru密碼:miyuespa

認證測試:

新建一個測試類:code

測試類代碼:blog

package com.shiro.shiroframe; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.mgt.DefaultSecurityManager; import org.apache.shiro.realm.text.IniRealm; import org.apache.shiro.subject.Subject; import org.junit.jupiter.api.Test; public class IniRelamTest { @Test public void InirelamTest(){ IniRealm iniRealm=new IniRealm("classpath:user.ini"); DefaultSecurityManager defaultSecurityManager=new DefaultSecurityManager(); defaultSecurityManager.setRealm(iniRealm); SecurityUtils.setSecurityManager(defaultSecurityManager); Subject subject=SecurityUtils.getSubject(); UsernamePasswordToken usernamePasswordToken=new UsernamePasswordToken("houru","miyue"); subject.login(usernamePasswordToken); System.err.println(subject.isAuthenticated()); } }

注意,上面的一切操做只不過是把用戶信息存在一個資源文件裏,而後使用IniRealm讀取,這樣理解就很簡單資源

 受權測試:

首先修改ini文件:get

 此時java代碼追加角色驗證和權限驗證:it

//用戶角色驗證
    subject.checkRole("admin"); //用戶權限驗證
    subject.checkPermission("user:delete");

若是驗證經過,代碼執行不報錯。不然報錯

相關文章
相關標籤/搜索