【发布时间】:2012-02-25 05:21:47
【问题描述】:
我是 Zend 和 PHP 的新手,我正准备着手开发一个门户类型的应用程序,该应用程序将容纳多个内部应用程序。我已经设置了 Zend_Auth,现在可以通过 Active Directory 登录。
我们一直在讨论使用 Zend_Acl 设置资源,为门户中的每个应用程序设置一个资源。从表面上看,Zend_Acl 似乎可以处理我们需要的授权和对资源的分层访问。
经过一些研究,我发现将 Zend_Acl 与 Zend_Navigation 结合起来很常见,但有时会出现问题。
除了*使用前端控制器插件来检查每个请求的资源访问/权限之外,我们的要求是,我们改为控制视图 (HTML) 中显示给用户的元素。例如,如果用户“Bob”无权访问博客应用程序,我们不希望 Bob 在他的导航菜单上看到它。
对我来说,引入所有这些逻辑以及是否在视图中检查是错误的;我认为他们应该尽可能地愚蠢。有没有更好的方法来处理这个?根据您的视图代码中的用户角色有条件地显示或隐藏元素对我来说是错误的。
【问题讨论】:
-
这是一个类似的问题,请查看:stackoverflow.com/questions/8907820/… 另外,我希望当您写“而不是使用前端控制器插件”时,您实际上的意思是“除了使用前端控制器插件”; )
-
@bububaba 确实如此。谢谢你的澄清。
标签: php zend-framework zend-view zend-acl