【发布时间】:2012-02-08 23:08:02
【问题描述】:
我正在为我的 CakePHP 应用程序 (1.3.14) 实现 ACL 组件。我的所有设置都正确,但有一些地方我仍然很模糊。
主要是,我是否需要为特殊的基本用户组 (ARO) 明确设置权限 (ACO)?
为简单起见,假设我有管理员,然后是其他所有人(普通用户)。那么我是否需要为这些普通用户创建一个组并映射他们的所有允许权限?随着应用的发展,这些权利的管理似乎永远不会结束。
另外,如何将用户分配到多个组?
理想情况下,如果一个人有一个用户帐户,则 Auth 组件将授予对整个系统的访问权限。然后 ACL 会简单地拒绝它们进入受现有组保护的部分。
好像ACL和Auth的耦合度太高了。但这可能是我新的(有限的)理解。任何澄清将不胜感激。
更新
我已经开始赏金了。总之,我想实现满足/解决以下问题的 CakePHP ACL(最好,但可以接受匹配的第三方组件):
- 将用户分配到多个组
- 轻松维护“公共”用户组 - 不必不断添加普通用户可以访问的控制器/操作
- 管理对控制器/访问权限的访问的代码示例
- 正确测试用户所属组的代码示例。
【问题讨论】:
-
@bfavaretto,请注意插话。我看到你回答了几个 ACL 问题。
-
我很高兴他们在 cake2.0 上更改了 Auth,我认为现在编写一个满足您列出的目标的组件应该不难。现在 Auth 和 ACL 完全分开了,你不需要使用 ACL =)
-
@pleasedontbelong:您可以在 CakePHP 1.2+ 中单独使用 Authentication 组件 -- 不需要 ACL。