• RBAC-基于角色的访问控制


    什么是RBAC

    是基于角色的访问控制,一般用于公司内部系统,给每个部门或用户分发访问权限。

    django的auth就是内置了一套基于RBAC的权限系统

    是基于角色的访问控制(Role-Based Access Control )在 RBAC  中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。这就极大地简化了权限的管理。这样管理都是层级相互依赖的,权限赋予给角色,而把角色又赋予用户,这样的权限设计很清楚,管理起来很方便。
    

    前后台权限控制

    # 1)后台用户对各表操作,是后台项目完成的,我们可以直接借助admin后台项目(Django自带的)
    # 2)后期也可以用xadmin框架来做后台用户权限管理
    
    # 3)前台用户的权限管理如何处理
    #   定义了一堆数据接口的视图类,不同的登录用户是否能访问这些视图类,能就代表有权限,不能就代表无权限
    #   前台用户权限用drf框架的 三大认证
    

    Django中的RBAC

    # 后台权限控制,公司内部系统的类似东西
    '''
    	user表
        permssion表
        group表
        user_groups表是user和group的中间表
        group_permissions表是group和permssion中间表
        user_user_permissions表是user和permission中间表
    '''
    # 前台(主站),需要用三大认证
    

    Django的内置RBAC(六表)

    权限三表

    """
    User表:用户表
    Group表:部门表
    Permission表:权限表
    表间关系:
    	User表与Group表之间:一个用户可以同时担任多个部门职务,一个部门可以有多个用户,多对多关系
    	Group表与Permission表之间:一个部门可以有多个权限,一个权限可以被多个部门拥有,多对多关系
    	User表与Permission表之间:一个用户除了能拥有部门所享有的权限外还能享有特殊权限,一个权限除啦能被多个部门享有还可能被多个用户享有,多对多关系
    """
    

    img

    权限六表

    img

  • 相关阅读:
    OA系统
    高考
    眼压高
    国家职业资格目录,即“专业技术人员职业资格项目”和“技能人员职业资格项目”,介绍
    hexo 添加图床
    《漂向北方》Namewee
    mysql主从架构
    【20220621】稻花香
    【20220614】生活目标变了
    【20220615】连岳摘抄
  • 原文地址:https://www.cnblogs.com/guanxiying/p/13307852.html
Copyright © 2020-2023  润新知