2013-08-30 86 views
1

我使用Apache Shiro來管理我的應用程序安全性,並取得了巨大成功。但是,我正在嘗試在我的shiro.ini文件中指定一個url路徑,該文件將阻止基於分配'權限'的主題訪問指定頁面。Apache Shiro隱含[url]限制

我知道的權限一般工作,因爲我可以使用SecurityUtil來限制對方法和函數的訪問,這工作正常。

SecurityUtils.getSubject().isPermitted("account:create"); 

我顯然失去了一些東西,因爲當我嘗試通過我的ini配置文件來應用此使用默認燙髮過濾權限似乎被忽略。

[urls] 
... 
/accounts/create.jsf = perms["account:create"] 
... 

(從Shiro Docs獲得)

我本來以爲當指定網址被訪問燙髮過濾器:

我shiro.ini文件的相關部分實例化後,發現主題缺乏隱含的權限,頁面不能呈現!然而,頁面似乎被渲染得很好。 :(

我需要創建自己的實施燙髮過濾器,並指定其作用?我本來以爲是提供一個默認的地步!

任何幫助,將不勝感激。

回答

1

我完全忘了,在ini文件過濾器的順序導致「短路」時找到匹配。

高於這個過濾器我有一個作用基於過濾器匹配,ergo過濾器永遠不會到達。

[urls] 
... 
/** = auth, roles[XXX] 
... 
/accounts/create.jsf = perms["account:create"]