MVC中的权限控制
想到两种方法:
1、建一张权限表,在Controller基类中判断用户是否有使用该控制器该方法的权限;
2、在每个方法前调用函数判断用户是否有权限访问。
大家一般是怎么做的呢?
另外,如何在CodeIgniter中管理权限?该框架没有提供这一功能,有个叫FreakAuth的插件,不太想用。自己写的话怎样实现呢?改写Controller基类?添加hook?还是在每个方法中判断?
谢谢
------解决方案--------------------
------解决方案--------------------去研究下 thinkphp试试
www.thinkphp.cn
------解决方案--------------------咱也没到这种境界 学习
------解决方案--------------------没用过ci, 不过既然能够知道controller和action了,
那么只要你自己继承基类,写个认证方法,判断当前用户是否有权限访问controller和action
要采用此认证的controller就继承这个基类。
------解决方案--------------------没有遇见过你分析的问题
我用过MVC的ruby-on-rails和分析过MVC模式的uchome
没有你说的给每一个用户分配方法权限问题
他们的处理只只给控制器分配方法,比如:这个控制器只能用哪些方法,至于哪些用户可以用,可设一前置函数
我一般是这样处理的
1、在控制器设定前置验证函数,可以标示应用于哪些方法,如果没有权限,则提示,不用执行方法
2、在方法中直接进行验证权限,比如有的方法需要验证的,可以验证session,cookie,全局全变,或全局方法
------解决方案-------------------- up
------解决方案--------------------大多数MVC框架都可以实现这一功能。
如果是ZF的话,可以用Controller的helper实现。
如果自己写代码,可以用Template设计模式实现。