加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

django guardian 对象级别权限设计

发布时间:2020-12-15 17:14:44 所属栏目:大数据 来源:网络整理
导读:官方文档:https://django-guardian.readthedocs.io/en/stable/userguide/index.html django 目前权限两种: ?1.表级别,也是model,默认的表级别,add,delete,change ?2.对象级别,也是field 虽加入了guardian,设计思路还是user,group,role,类似于linux的3

官方文档:https://django-guardian.readthedocs.io/en/stable/userguide/index.html

django 目前权限两种:

?1.表级别,也是model,默认的表级别,add,delete,change

?2.对象级别,也是field

虽加入了guardian,设计思路还是user,group,role,类似于linux的3 2 1

安装配置django-guardian:

pip?install?django-guardian

在INSTALLED_APPS变量中加入guardian:

INSTALLED_APPS?=?(
????'guardian',)

添加一个backend到AUTHENTICATION_BACKENDS中,这样django才会具有对对象的权限控制:

AUTHENTICATION_BACKENDS?=?(
????'django.contrib.auth.backends.ModelBackend',?#?django默认的backend
????'guardian.backends.ObjectPermissionBackend',)

在guardian中,还支持对匿名用户AnoymousUser的Object级别的权限控制,这种需求很常见,比方说允许匿名发言的论坛或者blog系统。要做到这一点需要在settings中加入:

ANONYMOUS_USER_ID=-1

接下来我们执行python manage syncdb.执行完毕之后,系统将会创建一个User实例,叫做AnonymouseUser。

完成了以上几点,guardian就被安装好了,可以开始使用了。

设置和使用对象权限:


参考文章:

https://www.cnblogs.com/esperyong/archive/2012/12/20/2825909.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读