我想使用基于权限的系统来限制Django应用程序中的某些操作。这些动作不必与特定模型相关(例如,访问应用程序中的各个部分,进行搜索...),因此我不能直接使用库存许可框架,因为该Permission
模型需要引用已安装的内容类型。
我可以编写自己的权限模型,但随后必须重写Django权限随附的所有功能,例如:
- 向用户和组分配权限的可能性。
- 该
permission_required
装饰。 User.has_perm
和相关的用户方法。- 该
perms
模板变量。 - ...
我已经检查了django-authority和django-guardian之类的一些应用程序,但是它们似乎通过允许每个对象的权限来提供与模型系统耦合的权限。
有没有一种方法可以重用此框架,而无需为项目定义任何模型(除了User
和Group
)?