2013-08-30 69 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"]