【发布时间】:2012-03-22 17:50:46
【问题描述】:
我的应用程序中有 ACL 层设置。但是我需要打印一份报告以供管理,哪些 acos 被哪个 aro 允许(仅在这种情况下是用户);我查看了 aco 表和 aco_aro 表,但生成一个简单的报告(例如,哪个 aco 可以通过哪个 aro 访问)对我来说没有任何意义。
那么我该如何生成所谓的报告呢?目前,如果您无权访问某些 acos,您会收到权限被拒绝消息,但仅此而已。我将不得不一一查看所有这些并将它们与用户进行比较,这是非常艰巨的手动任务,如果不是不可能的话,也是极其困难的!所以我想知道你们是否为此使用了一些审计或其他东西。
编辑
由于没有人回答这个问题,我将调整我的要求。如何在用户登录时获得用户的权限?有人可以告诉我如何检查。谢谢
** 试过了**
if ($this->Auth->login()) {
debug($this->Acl->check( 'User', 'Posts', $action = '*'));
但是得到这个
Warning (512): DbAcl::check() - Failed ARO/ACO node lookup in permissions check. Node references:
Aro: User
Aco: Posts [CORE/Cake/Controller/Component/Acl/DbAcl.php, line 79]
/app/Controller/UsersController.php (line 20)
false
【问题讨论】:
-
试过 $this->Acl->view($id) 但这不起作用
标签: cakephp cakephp-1.3 cakephp-2.0