通過四郎或提取控制器名稱允許我有一個URI如someController/someAction?參數1 = AA & param2的= BB如何檢測URI是否是從URI
是存在的grails可以提取控制器名稱的一些方法和這個uri的動作名稱。
或shiro有任何方法來檢測此uri是否允許?
我有一個域菜單(名稱,網址),現在想獲得當前用戶允許的菜單列表。
URL諸如/ AUTH /登錄(可以是映射爲用戶:登錄),/用戶/登錄
SO 2天前,我提出這個問題。
現在我改變菜單(姓名,控制器,動作,PARAM),和過濾菜單列表如下:
def subject = SecurityUtils.subject;
menuList.each{
if(it.permission){
def perm = shiroPermissionResolver.resolvePermission("${it.permission.controller}:${it.permission.action}")
def isPermitted = subject.isPermitted(perm)
println "$isPermitted -> ${it.permission.controller}:${it.permission.action}"
}
}
對不起我的英語不好,感謝您的答覆。
順便說一句,這裏是如何緩存四郎另一個問題: how to use cache permissions in grails shiro
要proflux: 那麼ü認爲什麼是更好的方式來存儲的菜單列表? 原因:
- 由於其權限,它需要向用戶顯示不同的菜單。
- 有時候我們更新了一個webapp,但想稍後向用戶顯示菜單。 所以我們只需要改變如menu.visible。 (比改變硬代碼cfg或源代碼更好)。
- 我們正在使用extjs來顯示菜單(所以導航插件無法使用)。
對不起,因爲我不明白這個問題,你能舉個例子嗎? – 2010-12-13 02:59:06
我只是認爲,如果我有一個網址,如何將其更改爲控制器+操作。可能/ auth/login映射到用戶:登錄 – atian25 2010-12-14 09:09:37
你能幫我理解爲什麼你將用戶界面菜單存儲在一個域類中嗎? – proflux 2010-12-15 17:45:14