許可權介紹
# 1 寫過許可權類---》控制使用者,是否有許可權訪問我們的介面
# 2 之前咱們直接定死,普通使用者,超級使用者,管理員 這種身份,給不同人設定不同許可權
# 3 比如都是網際網路使用者:抖音 acl控制
-遊客使用者只能檢視
-登陸使用者可以檢視和評論
-粉絲超過1000使用者,開直播
# 4 公司內部 這些許可權
-招員工
-發工資
-開發程式碼
-刪除程式碼
-開董事會
-開除員工
---分部門:開放部門:開發程式碼,刪除程式碼
---人力資源:招員工,開除員工
---財務部門:發工資
---董事會:開董事會
# 5 常見的許可權控制方案
-1 acl :訪問控制列表
-使用者 :使用者表
-許可權 :許可權表
-使用者和許可權中間表:是多對多:一個使用者有多個許可權,一個許可權可能對應多個使用者
-將使用者直接與許可權對接,每個使用者有個許可權列表
-2 RBAC:Role-Based Access Control,基於角色的訪問控制
-將使用者與角色(組,部門)對接,然後角色(組,部門)與物件的許可權對接。
-3 ABAC:Attribute-Based Access Control,基於屬性的訪問控制
-4 PBAC:Policy-Based Access Control,基於策略的訪問控制
# 6 作為python寫的專案,一般是公司內部專案
-python 寫rbac許可權控制比較多
# 7 django--》大而全--》提供了一套可以基於rbac許可權控制的 後臺管理
-auth+admin:一套rbac許可權控制
-基於他admin+auth-->快速開發出公司內部的專案
# 8 django中如何設計RBAC控制的--》透過6張表控制
-auth_user # 使用者表
-auth_group # 角色表,組表,部門表
-auth_permission #許可權表
-auth_user_group # 中間表:使用者和角色多對多
-auth_grou_permission# 中間表:部門和許可權
-多一個:為了更細粒度的區分許可權:使用者和許可權多對多
-auth_user_permission
# 9 admin 許可權演示
-django 的admin 有什麼許可權,是自己增加的,就是對錶的增刪查改許可權
- 增加了個組[圖書看-刪-增組]:對圖書有 檢視,刪除,增加許可權
- 增加使用者 :lqz,屬於--圖書看-刪-增組
is_staff: 1
is_active:1
is_superuser:0 # 不是超級使用者
-root使用者是超級管理員--》有所有許可權