我应该在CakePHP中使用什么作为访问控制对象?

时间:2014-02-20 16:44:29

标签: cakephp acl cakephp-2.4

我是ACL新手

该网站是关于经销商可以在多个国家/地区拥有多个品牌的汽车。 例如: 经销商:John Doe 拥有英国的奥迪品牌和法国的起亚品牌。

我有以下型号: - 牌 - 国家 - 经销商 - BrandsCountriesDealers(将上述三个链接在一起)

经销商无法添加/编辑品牌或国家/地区。他只能添加/编辑/删除他有权访问的国家/地区的汽车以及他拥有的品牌。

我想知道我是否只使用BrandsCountriesDealers型号的特定外键作为ACO,当经销商添加汽车时,我通过检查BrandsCountriesDealers模型中的记录检查该车的品牌和国家是否有效访问?

我希望这很清楚。

1 个答案:

答案 0 :(得分:0)

实施ACL有点困难但并非不可能。一旦你习惯使用ACL,你就可以轻松有力地使用ACL。可能需要一些研究来配置和学习它,但它确实是非常简单的。

我认为你应该出于某些原因使用ACL:

  1. 它使您的代码非常干净整洁:
  2.   

    您无需继续分配

       if user logged in do this
    
       or if user type is this do that
    
    1. 访问级别:无需为每种类型的用户编写验证。
    2. 高安全性:ACL正在使用Auth组件
    3. 可以将每种方法授予一种或多种用户类型(角色)
    4. 几乎所有东西都存储在数据库中,因此您的代码再次清晰
    5. 我记得当我开始使用ACL时,我跟着this tutorial。它是葡萄牙语。我不知道这种语言,但我一步一步地按照它来完成它。

      http://www.youtube.com/watch?v=EIjfwqqGRhs