Django用户没有获得分配的组的权限

时间:2014-05-20 10:57:18

标签: django django-admin django-permissions

我正在使用django admin后端来创建用户组。我创建了一个名为admin的组,并为其分配了多个权限。

但是当我将此组admin分配给用户时,该组的权限不会自动分配给用户。

django文档说:

A user in a group automatically has the permissions granted to that group. 
For example, if the group Site editors has the permission can_edit_home_page, 
any user in that group will have that permission.

如果我理解正确与否,有人可以告诉我吗?或者我是否需要自己编写一些代码以将组的权限分配给用户。

我使用django rest框架和south和postgres作为数据库。

我还使用django shell检查了

当我手动分配用户特定权限时,他们会被分配。此外,当我分配组特定权限时,它们也会分配给该组。

但是当我向用户分配一个组时,该组被分配但组权限不是。

1 个答案:

答案 0 :(得分:1)

组权限不会作为用户权限复制到用户,但用户仍应拥有所有组权限。

示例:

User Anton
  - can add X

Group Admin
  - can change X
  - can delete X

只要他不在管理员组中,安东只能添加X.当他是该组的成员时,他将能够更改/删除X.如果您在django-admin中查看用户权限,他们看起来仍然是相同的。