我正在为CakePHP 2应用程序实现基于组(角色)的ACL系统。
现在,我知道ACL会根据我数据的未来变化自动填充aco / aro表,但是如何根据我现有数据填写这些表?我发现很少有关于管理现有数据的文档。
以下是我拆分模型的方法。
Group模型既是请求者又是受控制的。共有4组。
public $actsAs = array(
'Acl' => array('type' => 'both')
)
我有一个User模型,它被控制并绑定到Group以获取请求者行为。现有用户不到11000人。
public $actsAs = array(
'Acl' => array('type' => 'controlled')
)
function bindNode($user) {
return array('model' => 'Group', 'foreign_key' => $user['User']['group_id']);
}
我还有其他一些受控制的模型。模型是客户端(260个条目),注释(少于500个条目)和注册(约20000个条目)。
public $actsAs = array(
'Acl' => array('type' => 'controlled')
)
答案 0 :(得分:0)
事实证明我误解了什么是ACO模型。我真正需要的唯一一件事是团队的4个ARO条目。 ACO没用,因为我不需要对同一类型的模型进行不同的访问。