权限控制,美化admin,签发token逻辑,放在序列化类中写

发布时间 2023-05-30 22:06:02作者: 无敌大帅逼

1 权限控制

# ACL(访问控制列表)的权限控制:(针对互联网用户的产品)
	用户表
    id    name      password
    1     zhangsan   123
    
    权限表
    id   user_id    权限
    1     1         评论权限
    2     1          发抖音权限

    张三:[评论权限,发抖音权限]
# RBAC(Role-Based Access Control)基于角色的访问控制:(针对于公司内部项目)
权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。这就极大地简化了权限的管理。这样管理都是层级相互依赖的,权限赋予给角色,而把角色又赋予用户,这样的权限设计很清楚,管理起来很方便

# django的auth其实就实现了基于角色的访问控制---》通过表控制的
	-auth_user :用户表,存用户信息
    -auth_group:组,角色,存放角色信息
    -auth_permission:权限,存放权限信息
    # 分析:一个组(角色)中,有多个用户,一个用户,属于多种角色----》多对多
    -auth_user_groups:用户和组的多对多中间表
    # 分析:一个组,可能有多个权限,一个权限,也可能属于多个组---》多对多
    -auth_group_permissions:组和权限的多对多中间件
    # django,多了张表:auth_user_user_permissions
    # 分析:一个用户,可以有多个权限,一个权限,可以分配个多个用户---》多对多
    -auth_user_user_permissions:用户和权限多对多中间表
    

1.2 我们开发中做权限控制

# python开发,公司内部项目多,使用基于角色的访问控制的权限,比较多

# python+django 开发出一套公司内部项目,要带rbac的权限控制
	-1 基于django的auth+admin 快速开发,有更多操作,但是没学
    -2 基于django的auth+admin+第三方美化 快速开发
    	-国内的:simple-ui,xadmin(弃用了)
        -国外的:
   	-3 基于django+vue+自定制权限 
    	-djagno-vue-admin :第三方开源
        
     -4 完全自己写

1.3 基于django的auth+admin+第三方美化 快速开发

# 1 安装
pip3 install django-simpleui
# 2 配置文件配置,注册app
	INSTALLED_APPS = [
      'simpleui',
      ...
  ]
    
# 3 菜单栏定制
# 4 自定义菜单和页面
# 5 自定义按钮
# 6 切换图标
# 7 首页显示的隐藏


# 其实它可以开发出任意各种功能

1.4 djagno-vue-admin演示

# https://gitee.com/liqianglog/django-vue-admin

签发token逻辑,放在序列化类中写

models.py

image

views.py

注册用户:
image
登录用户:

image
效验是否登录:
image

ser.py

image
image

settings

image

urls

image