RBAC介紹、simpleui的使用


RBAC介紹(****)

# 基於角色的訪問控制:RBAC  是基於角色的訪問控制(Role-Based Access Control )在 RBAC  中,權限與角色相關聯,用戶通過成為適當角色的成員而得到這些角色的權限。這就極大地簡化了權限的管理。這樣管理都是層級相互依賴的,權限賦予給角色,而把角色又賦予用戶,這樣的權限設計很清楚,管理起來很方便。

# rbac權限控制一般都是用在公司內部的管理系統中(python的django寫公司內部項目較多,rbac很重要)
# Django的 Auth組件 采用的認證規則就是RBAC

# rbac表分析
	-用戶表:auth_user
    -角色表(部門,組表):auth_group
    -權限表:auth_permission
    
    -角色和權限是多對多---》中間表:auth_group_permissions
    -用戶和角色是多對多---》中間表:auth_user_groups
    
    -django的auth多寫了一個表,用戶和權限的多對多:auth_user_user_permissions
    
# djago有個admin后台管理,配合auth,可以快速搭建出一個基於rbac的后台管理系統   

# 幾年前,好多公司內部的管理系統,就是使用django的admin快速搭建的
# admin不好看,第三方美化
	-django 1.x上很火的 Xadmin:前端基於jq+bootstrap,2.x上支持不好了,3.x直接不能用了,而且作者也棄坑了,他又做了一個前后端分離的admin
    -simple-ui:djanog 3.x

simple-ui的使用(對admin美化)

1 pip3 install django-simpleui
2 自定義左側導航欄
	import time
SIMPLEUI_CONFIG = {
    'system_keep': False,
    'menu_display': ['Simpleui','權限認證', '多級菜單測試','動態菜單測試'],      # 開啟排序和過濾功能, 不填此字段為默認排序和全部顯示, 空列表[] 為全部不顯示.
    'dynamic': True,    # 設置是否開啟動態菜單, 默認為False. 如果開啟, 則會在每次用戶登陸時動態展示菜單內容
    'menus': [
        {
        'name': 'Simpleui',
        'icon': 'fas fa-code',
        'url': '/home/' # 自己的地址(前后端混合項目)
    },
        {
        'app': 'auth',
        'name': '權限認證',
        'icon': 'fas fa-user-shield',
        'models': [{
            'name': '用戶',
            'icon': 'fa fa-user',
            'url': 'auth/user/'
        }]
    },
        {
        'name': '多級菜單測試',
        'icon': 'fa fa-file',
      	# 二級菜單
        'models': [
            {
            'name': 'Baidu',
            'icon': 'far fa-surprise',
            # 第三級菜單 ,
            'models': [
                {
                  'name': '愛奇藝',
                  'url': 'https://www.iqiyi.com/dianshiju/'
                  # 第四級就不支持了,element只支持了3級
                }, {
                    'name': '百度問答',
                    'icon': 'far fa-surprise',
                    'url': 'https://zhidao.baidu.com/'
                }
            ]
        },
            {
            'name': '內網穿透',
            'url': 'https://www.wezoz.com',
            'icon': 'fab fa-github'
        }]
    },
        {
        'name': '動態菜單測試' ,
        'icon': 'fa fa-desktop',
        'models': [{
            'name': time.time(),
            'url': 'http://baidu.com',
            'icon': 'far fa-surprise'
        }]
    }]
}




## 智慧大屏
https://gitee.com/kevin_chou/dataVIS


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM