完整 demo
>
>
org.apache.shirogroupid
>
>
shiro-allartifactid
>
>
1.2.5version
>
dependency
>
#定義使用者
[users]
#使用者名稱:z3admin,密碼:12345,角色:admin
z3admin = 12345, admin
#使用者名稱:l4productmanager,密碼:abcde,角色:產品經理
l4productmanager = abcde,productmanager
#定義角色
[roles]
#管理員什麼都能做
admin = *
#產品經理只能做產品管理
productmanager = addproduct,deleteproduct,editproduct,updateproduct,listproduct
#訂單經理只能做訂單管理
ordermanager = addorder,deleteorder,editorder,updateorder,listorder
/**
* 獲取 subject 物件
* shiro 這個安全框架下, subject 就是當前使用者
* @return subject 物件
*/private
static subject getsubject
(user user)
測試登入/**
* 登入
* @param user
* @return
*/private
static
boolean
login
(user user)
catch
(authenticationexception e)
return subject.
isauthenticated()
;}// ********************== 測試登入 *************************
//登陸每個使用者
for(user user : userlist)
----
----
----
- 測試登入輸出資訊 --
----
-------
z3admin - 登陸成功,用的密碼是:12345
l4productmanager - 登陸成功,用的密碼是:abcde
w5 - 登入失敗,用的密碼是:111
測試是否包含角色/**
* 是否包含角色
* @param user 使用者
* @param role 角色
* @return
*/private
static
boolean
hasrole
(user user, string role)
// ********************== 測試是否包含角色 ********************
// 判斷能夠登入的使用者是否擁有某個角色
for(user user : userlist)}}
----
----
----
-- 測試是否包含角色輸出資訊 --
----
-------
z3admin - 擁有角色:admin
z3admin - 不擁有角色:productmanager
l4productmanager - 不擁有角色:admin
l4productmanager - 擁有角色:productmanager
測試是否擁有許可權/**
* 是否擁有許可權
* @param user 使用者
* @param permit 許可權
* @return
*/private
static
boolean
ispermitted
(user user, string permit)
// ********************=== 測試是否擁有許可權 ***************===
// 判斷能夠登入的使用者,是否擁有某種許可權
for(user user : userlist)}}
----
----
----
-- 測試是否擁有許可權的輸出資訊 --
----
-------
z3admin - 擁有許可權: addproduct
z3admin - 擁有許可權: addorder
l4productmanager - 擁有許可權: addproduct
l4productmanager - 不擁有許可權: addorder
Shiro的INI配置檔案
一 ini檔案簡介 ini配置檔案是一種key value的鍵值對配置,分為 main users roles urls 四個部分,每乙個部分中的key不可重複,號代表注釋,shiro.ini檔案預設在 web inf 或classpath下,shiro會自動查詢,ini配置檔案相當於乙個靜態資料庫...
C Windows 服務 《二》INI配置檔案
目錄 1.c windows 服務 一 初入門 2.c windows 服務 二 ini配置檔案 3.c windows 服務 三 timer設定 一 工具 vs2015 net framework4.5。二 操作 1 建立inihelp幫助類 2 豐富幫助類操作 3 windows例項呼叫 三 1...
讀寫配置檔案 ini
配置檔案中經常用到ini檔案,在vc中其函式分別為 其中個引數的意思 lpctstr lpstring 是鍵值,也就是變數的值,必須為lpctstr或cstring型別 lpctstr lpfilename 完整的ini檔案路徑名 lpctstr lpdefaut 如果沒有其前兩個引數值,則將此值賦...