不做大哥好多年 不做大哥好多年
首页
  • MySQL
  • Redis
  • Elasticsearch
  • Kafka
  • Etcd
  • MongoDB
  • TiDB
  • RabbitMQ
  • 01.GO基础
  • 02.面向对象
  • 03.并发编程
  • 04.常用库
  • 05.数据库操作
  • 06.Beego框架
  • 07.Beego商城
  • 08.GIN框架
  • 09.GIN论坛
  • 10.微服务
  • 01.Python基础
  • 02.Python模块
  • 03.Django
  • 04.Flask
  • 05.SYL
  • 06.Celery
  • 10.微服务
  • 01.Java基础
  • 02.面向对象
  • 03.Java进阶
  • 04.Web基础
  • 05.Spring框架
  • 100.微服务
  • Docker
  • K8S
  • 容器原理
  • Istio
  • 数据结构
  • 算法基础
  • 算法题分类
  • 前置知识
  • PyTorch
  • 01.Python
  • 02.GO
  • 03.Java
  • 04.业务问题
  • 05.关键技术
  • 06.项目常识
  • 10.计算机基础
  • Linux基础
  • Linux高级
  • Nginx
  • KeepAlive
  • ansible
  • zabbix
  • Shell
  • Linux内核

逍遥子

不做大哥好多年
首页
  • MySQL
  • Redis
  • Elasticsearch
  • Kafka
  • Etcd
  • MongoDB
  • TiDB
  • RabbitMQ
  • 01.GO基础
  • 02.面向对象
  • 03.并发编程
  • 04.常用库
  • 05.数据库操作
  • 06.Beego框架
  • 07.Beego商城
  • 08.GIN框架
  • 09.GIN论坛
  • 10.微服务
  • 01.Python基础
  • 02.Python模块
  • 03.Django
  • 04.Flask
  • 05.SYL
  • 06.Celery
  • 10.微服务
  • 01.Java基础
  • 02.面向对象
  • 03.Java进阶
  • 04.Web基础
  • 05.Spring框架
  • 100.微服务
  • Docker
  • K8S
  • 容器原理
  • Istio
  • 数据结构
  • 算法基础
  • 算法题分类
  • 前置知识
  • PyTorch
  • 01.Python
  • 02.GO
  • 03.Java
  • 04.业务问题
  • 05.关键技术
  • 06.项目常识
  • 10.计算机基础
  • Linux基础
  • Linux高级
  • Nginx
  • KeepAlive
  • ansible
  • zabbix
  • Shell
  • Linux内核
  • python基础

  • python模块

  • django

  • flask

  • SYL

    • day01

    • day02

    • day03

    • day04

    • day05

    • day06

    • day07

    • day08

    • day09

      • 01.RBAC角色权限管理类
        • 02.课程播放接口权限限制2
        • 03.路径模板两张表设计
        • 04.路径页面接口开发
      • day10

      • day11

      • day12

    • Celery

    • 微服务

    • python
    • SYL
    • day09
    xiaonaiqiang
    2021-03-10
    目录
    1.基于 Django 的后台管理平台,采用 RBAC 权限管理机制
    1. RBAC角色权限管理机制实现思路

    01.RBAC角色权限管理类

    # 1.基于 Django 的后台管理平台,采用 RBAC 权限管理机制

    • 用户表、角色表、权限表、资源列表
      • 用户表:账号、姓名、邮箱、添加时间、最后登录时间、账号是否禁止登录
      • 角色表:商品管理员、订单管理员、超级管理员
      • 资源列表(路径正则):资源名称(项目模块名称),资源路径(后台路由)
        • 资源分类:商品模块、订单模块、营销模块、权限模块、内容模块、其他模块
      • 权限表:对某一个路由的增删改查权限

    # 1. RBAC角色权限管理机制实现思路

    # 面向资源编程
    https://www.shiyanlou.com/v1/books/        # 请求后端 books书籍表中数据
    	get
        post
    # 用户表
    # 角色表
    # 权限表
    get/post/put/delete 对应关系
    
    1
    2
    3
    4
    5
    6
    7
    8
    • 所有权限的本质是对数据库中表中数据增删改查的操作
    • 而这些增删改查的操作是通过前端不同路由,通过get、post、put、delete方法操作数据库的
    • 对权限的控制,最简单的方法就是判断当前用户是否可以对指定路由请求操作的权限
    • 把角色和这个角色能够访问的 url 和 请求方式进行关联(因为正是的业务逻辑用户权限划分力度可能非常细致)
    • 再简单的业务逻辑中这一张表就是权限表
    路由 资源(可能对应的是后端路由的 name名称,可以通过name名称解析出对应路由) 请求方式 说明
    https://www.shiyanlou.com/v1/books/ get 判断用户是否可以查询books表中数据
    https://www.shiyanlou.com/v1/books/ post 判断用户是否可以添加books表中数据
    https://www.shiyanlou.com/v1/books/ put 判断用户是否可以更新books表中数据
    https://www.shiyanlou.com/v1/books/ delete 判断用户是否可以删除books表中数据
    • 后端如何判断用户权限
      • 用户发送求方法 https://www.shiyanlou.com/v1/books/ 的url
      • 后端首先查询时哪一个用户,然后查询当前用户的角色
      • 最后判断这个角色是否可以访问 https://www.shiyanlou.com/v1/books/ 的对应方法即可
      • 如果这个角色有权限访问这个url就返回数据,不能访问就返回 401状态码
    上次更新: 2024/3/13 15:35:10
    06.订单支付回调接口
    02.课程播放接口权限限制2

    ← 06.订单支付回调接口 02.课程播放接口权限限制2→

    最近更新
    01
    04.数组双指针排序_子数组
    03-25
    02
    08.动态规划
    03-25
    03
    06.回溯算法
    03-25
    更多文章>
    Theme by Vdoing | Copyright © 2019-2025 逍遥子 技术博客 京ICP备2021005373号
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式