2

我知道我可以$this->Auth->allow('');对所有用户的角色进行操作,但我想在 ACL 表中添加操作并从 ACL 表中获取操作权限,而且我有三个组用户 1 Admin、2 Users、3 Guest,我想添加手动为所有用户在表中执行名为“AutoCompleted”的操作的权限。表格如下:

acos、aros 和 aros_acos(通常的 CakePHP 表)

4

1 回答 1

1

用户的角色使用该aros_acos表,这是结构:

aros_acos 结构

要在此表中手动插入用户角色,您首先需要了解一些信息:

  1. 动作“自动完成”的 ID (acos)
  2. 您要分配此新权限的用户组的 ID (aros)

如果你打开你的acos表,你会看到:

acos表数据

在此表的某处,您会发现“AutoCompleted”ID,在此示例中为 35(参见上图)。

现在,打开aros包含所有用户组信息的表:

aros 表数据

在此表中的某处,您会找到用户组 ID,在此示例中为 15(参见上图)。

好的,这就是我们所拥有的:

  1. 操作 ID (aco_id):35
  2. 用户组 ID (aro_id):15

有了这些信息,您现在可以在aros_acos表中手动插入新权限:

INSERT INTO  `sgc`.`aros_acos` (
    `id` ,
    `aro_id` ,
    `aco_id` ,
    `_create` ,
    `_read` ,
    `_update` ,
    `_delete`
)
VALUES (NULL ,  '15',  '35',  '1',  '1',  '1',  '1')

, _create, _read,接收值_update是因为我们希望允许用户执行此操作。_delete1

于 2012-11-02T02:02:58.963 回答