关于Acegi的权限设置问题,求教!
copoplar
2008-11-06
本人最近在调试Acegi的时候发现:针对controller的权限控制没有问题,而对具体的某个action有问题,例如:可以控制create,list等不需要id参数action;对delete,edit,update等需要指定id的action无法控制,设置了也不起作用。不知道哪位大侠做过这方面的设置,望赐教!
|
|
copoplar
2008-11-10
看来研究ACegi的朋友比较少,自己顶一个!
前面看到帖子说,Acegi一旦部署到tomcat上就出现问题,本人昨晚上也遇到了,真的很郁闷,但考虑了半天,感觉开发这玩意的哥们不会这么败!而且在tomcat中说不定有一定要求。所以一早起来就改成static配置,打包调试,ok了!在tomcat里面可以控制权限了,虽然上面提到的问题还是没有解决,至少这问题的解决让我的心情好了很多。 |
|
biaoming
2008-12-29
要保护具体动作,这在acegi里叫做保护领域模型,需要用到acl,这才能控制你是delete的参数.
|
|
tongyi121
2008-12-30
copoplar 写道 看来研究ACegi的朋友比较少,自己顶一个!
前面看到帖子说,Acegi一旦部署到tomcat上就出现问题,本人昨晚上也遇到了,真的很郁闷,但考虑了半天,感觉开发这玩意的哥们不会这么败!而且在tomcat中说不定有一定要求。所以一早起来就改成static配置,打包调试,ok了!在tomcat里面可以控制权限了,虽然上面提到的问题还是没有解决,至少这问题的解决让我的心情好了很多。 其实部署失败的原因很可能是没有配置生产环境的数据源,我就遇到了这个问题。 |
|
tongyi121
2008-12-30
我也试了下,确实存在无法控制controller中的delete、edit等action,但是其实你应该注意到页面提交的request不是/domain/delete/**的形式,所以使用url方式控制不了也很正常,你将提交方式更改下应该就没问题了,但是漏洞还是存在,不知道该如何解决。
|
|
SSailYang
2009-01-04
是在不行就用 Filter 吧
|
|
tongyi121
2009-01-05
其实通过url的控制方式已经基本上满足了权限的需求,一般情况下,一个对象的权限可以被分为两种,改和看。
改的意思就是可以做所有crud的操作,对应的url为/domain/** 而看的权限只有list和show所有对应的url为/domain/list,/domain/show/** 实际项目中c、u、d分别分配给不同的用户基本上是不可能的,而拥有c的用户也可能会有u、d的权限。 |
|
copoplar
2009-01-15
tongyi121 写道 我也试了下,确实存在无法控制controller中的delete、edit等action,但是其实你应该注意到页面提交的request不是/domain/delete/**的形式,所以使用url方式控制不了也很正常,你将提交方式更改下应该就没问题了,但是漏洞还是存在,不知道该如何解决。
提交方式更改?如何更改? |
|
tongyi121
2009-01-15
你跟踪下程序应该可以发现,执行edit、delete等操作时的request的url都是/domain/index,将执行这些操作时的url更改为/domain/edit和/domain/delete
|