4.許可權元件的應用 **
1. 拷貝rbac元件到新專案中,並且註冊
2. 遷移資料庫
1. 修改rbac使用者表
manytomanyfield 中 關聯寫上role ,不要寫字串
```class user(models.model):
"""使用者表"""
# name = models.charfield('使用者名稱', max_length=32)
# pwd = models.charfield('密碼', max_length=32)
roles = models.manytomanyfield(role, verbose_name='使用者所擁有的角色', blank=true)
class meta:
abstract = true # 遷移的時候不生成表,繼承使用 當基類
```2. 已有的使用者表繼承rbac的user
```class userprofile(user)
```3. 執行資料庫遷移的命令
python manage.py makemigrations
python manage.py migrate
3. 配置上rbac的路由
```python
url(r'^rbac/',include('rbac.urls',namespace='rbac')),
```4. 角色管理
新增角色
5. 選單管理
新增選單
6. 批量操作許可權
錄入許可權的標題、分配一級選單下的二級選單和子許可權
7. 分配許可權
許可權分配的檢視中 rbac的使用者類替換成 使用使用者表的類
新增使用者 給使用者分配角色 給角色分配許可權
8. 應用上許可權
1. 加上許可權的中介軟體
```middleware = [
...'rbac.middlewares.rbac.rbacmiddleware'
]```
2. 新增上許可權的相關配置
```# 許可權相關的配置
# 白名單
white_list = [
r'^/crm/login/$',
r'^/crm/reg/$',
r'^/admin/.*',
]# 免認證的url位址
no_permission_list = [
r'^/crm/index/$',
]# 存許可權的session key
permission_session_key = 'permission'
# 存選單的session key
menu_session_key = 'menu'
```3. 登入成功許可權資訊的初始化
```python
from rbac.service.init_permission import init_permission
認證成功:
# 進行許可權資訊的初始化(儲存許可權資訊 選單資訊 登入狀態)
init_permission(request,obj)
```9. 動態生成二級選單
``````
加上css js
``````
10. 路徑導航
``````
11. 許可權控制到按鈕級別
```html
新增```
drf 許可權元件
目錄許可權就是某些功能只對特定的使用者開放,比如django中建立使用者可分為超級使用者和普通使用者,此時超級使用者就有許可權進入後台管理系統,而普通使用者就沒有許可權,這是怎麼做到的呢?這就是許可權元件的作用。from rest framework.permissions import basep...
我的許可權元件
首先 設定三種要素 使用者 群組 角色。使用者為登入用,對應到人。群組對應為使用者的集合,是一種特殊的使用者。角色為一組許可權項的集合,使用者 群組 都有各自的角色。許可權的實現通過 permission 類和rule 類來實現。permission 供外部呼叫,rule 為乙個介面,為許可權判斷規...
許可權元件之rbac
rbac 基於角色的許可權訪問控制 role based access control rbac的主要流程 給每個角色賦予不同的許可權,是這個角色的員工都有這個角色的所有許可權。乙個角色可以有多個人員擔任,乙個員工可以擔任多個角色 比如部門經理 業務員等 當員工成功登陸系統時,系統需要獲取這個員工的...