1. 程式人生 > 實用技巧 >使用shiro路徑萬用字元配置訪問許可權

使用shiro路徑萬用字元配置訪問許可權

簡述:

shiro框架通過攔截功能來實現對使用者訪問許可權的控制和攔截,shiro裡面支援Ant風格的萬用字元。

:匹配任意的一個字元,例如:"/admin?"可以匹配“/admin1”,"/admin2"。

*:匹配一個或者多個任意的字元。

**:匹配零個或者多個目錄。

設定路徑萬用字元:

[main]
#如果現在認證失敗,則跳轉到loginUrl配置的路徑
authc.loginUrl=/login.jsp
#需要配置上當角色認證失敗之後的跳轉頁面
roles.unauthorizedUrl=/role.jsp
#配置許可權認證失敗的跳轉頁面
perms.unauthorizedUrl=/role.jsp
jdbcRealm=com.gwolf.shiro.realm.MyRealm
securityManager.realm=$jdbcRealm
[urls]
#表示在messages下的所有路徑都需要進行認證的檢測
/messages/**=authc
#登陸的頁面是不需要進行檢測處理的
/shiroLogin=anon
#指定的頁面需要進行登入檢測,此時表示需要先進行身份認證,而後記性角色認證
/welcome.jsp=authc,perms[member:add]

設定路徑為admin開頭的所有資源都要進行許可權驗證:

[main]
#如果現在認證失敗,則跳轉到loginUrl配置的路徑
authc.loginUrl=/login.jsp
#需要配置上當角色認證失敗之後的跳轉頁面
roles.unauthorizedUrl=/role.jsp
#配置許可權認證失敗的跳轉頁面
perms.unauthorizedUrl=/role.jsp
jdbcRealm=com.gwolf.shiro.realm.MyRealm
securityManager.realm=$jdbcRealm
[urls]
#表示在messages下的所有路徑都需要進行認證的檢測
/messages/**=authc
/admin*=authc
#登陸的頁面是不需要進行檢測處理的
/shiroLogin=anon
#指定的頁面需要進行登入檢測,此時表示需要先進行身份認證,而後記性角色認證
/welcome.jsp=authc,perms[member:add]

然後在瀏覽器中輸入訪問地址:
http://localhost:8080/shirodemo/admin/adb.jsp將跳轉到程式的登陸頁面。