更新時(shí)間:2022-02-08 11:19:16 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽3038次
INI配置文件是一種key/value的鍵值對(duì)配置,分為[main]、[users]、[roles]、[urls]四個(gè)部分,每一個(gè)部分中的key不可重復(fù),#號(hào)代表注釋,shiro.ini文件默認(rèn)在/WEB-INF/ 或classpath下,shiro會(huì)自動(dòng)查找,INI配置文件相當(dāng)于一個(gè)靜態(tài)數(shù)據(jù)庫(kù)。
(1)[main]
這部分配置類對(duì)象,或設(shè)置屬性等操作,內(nèi)置了根對(duì)象,securityManager。
[main]
securityManager.屬性=值
key=value
securityManager.對(duì)象屬性=com.xxx.pojo.People #后面值是字符串
peo=com.xxx.pojo.People
securityManager.對(duì)象屬性=$peo #出現(xiàn)$時(shí)才表示是引用對(duì)象
(2)[users]
定義用戶,密碼及用戶可以具有的角色.
[users]
用戶名=密碼,角色1,角色2 #角色部分可以省略.
zhangsan=zs
zhangsan=zs,role1,role2
(3)[roles]
定義角色具有的權(quán)限
角色名=權(quán)限名,權(quán)限名
role1=user:insert,user:update
role2=insert,update
role3=user:*
(4)[urls]
定義哪個(gè)控制器被哪個(gè)過(guò)濾器過(guò)濾
[urls]
控制器名稱=過(guò)濾器名稱
/login=authc
/**=anon
public static void main(String[] args) {
// 創(chuàng)建工廠
Factory<SecurityManager> factory = new IniSecurityManagerFactory("classpath:shiro.ini");
// 創(chuàng)建容器
SecurityManager manager = factory.getInstance();
SecurityUtils.setSecurityManager(manager);
// 獲取當(dāng)前的subject
Subject subject = SecurityUtils.getSubject();
。。。。。。
略
}
通過(guò)上述介紹,相信大家對(duì)Shiro配置文件INI已經(jīng)有所了解,大家如果對(duì)此比較感興趣,想了解更多相關(guān)知識(shí),不妨來(lái)關(guān)注一下動(dòng)力節(jié)點(diǎn)的Java視頻,里面的課程內(nèi)容細(xì)致全面,從入門到精通,很適合沒(méi)有基礎(chǔ)的小伙伴學(xué)習(xí),希望對(duì)大家能夠有所幫助。
Java實(shí)驗(yàn)班
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
Java就業(yè)班
有基礎(chǔ) 直達(dá)就業(yè)
Java夜校直播班
業(yè)余時(shí)間 高薪轉(zhuǎn)行
Java在職加薪班
工作1~3年,加薪神器
Java架構(gòu)師班
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)