【发布时间】:2017-01-13 18:19:18
【问题描述】:
Zend Acl 文档展示了一个使用自定义断言的示例:
$acl->allow(null, null, null, new MyCustomAssertion());
问题是上面的代码是在创建规则时执行的,而不是在检查规则时执行的。在我的控制器中,我只能执行以下操作:
$acl->isAllowed('someUser', 'someResource')
与 Zend Rbac 不同,断言类已经实例化,我无法将用户 ID 和帖子 ID 传递给它来检查用户是否特别有权访问该帖子。
是否检查用户是否可以通过 Zend Acl 实现(以可维护的方式)从控制器访问帖子?
注意 1:我没有为此使用 Zend 框架,只是使用 Zend Acl 组件。 注 2:我不使用 Rbac 的原因是因为我需要 Acl 具有而 Rbac 没有的“拒绝”功能。
【问题讨论】: