我正在为我的框架/应用程序构建一个ACL
插件。
我以前使用过的ACL
应用程序具有controller
/action
验证,这意味着它检查用户是否可以访问控制器和视图。
现在在许多应用中,user
可以访问controller
和view
,但仍然不能访问内容。
例如:
user1可以访问controller
:games和view
:play,但不能访问id
:1
我的第一个想法是检查$_GET
变量,但这还不够,因为不可能知道内容要查找的变量是什么。
因此,我的问题是,您将如何验证用户是否有权访问视图的内容?
好吧,你知道Controller中内容的id,也知道试图访问它的用户。只需将contentId添加到ACL检查例程中?您只需要添加更多的ACL数据,在这些情况下,仅使用控制器和方法的当前实现是不够的。
例如$acl->userIsAllowedTo('view',1,'gamescontroller')左右。