限制Django管理员只允许超级用户

时间:2011-10-13 16:02:57

标签: django django-admin

我目前正在构建一个使用LDAP身份验证后端的Django应用程序。因此,所有经过身份验证的ldap用户也可以登录管理界面。有没有办法可以将管理界面锁定到只有超级用户?

1 个答案:

答案 0 :(得分:5)

情况应该不是这样。仅仅因为有用户帐户并不意味着它可以用来登录管理员。

要访问管理员User.is_staff == True,默认情况下不是这样。只需在您希望能够登录管理员的实际用户上设置标记,就可以了。

如果由于某种原因添加了LDAP用户且is_staff设置为True,则可以执行以下操作:

User.objects.update(is_staff=False)

然后,仅针对您要授予以下权限的用户:

u=User.objects.get(username='admin_user')
u.is_staff = True
u.save()