RestfulAPI 驗證 與授權

2022-03-15 23:58:35 字數 1257 閱讀 2803

rest_framework =

8、自定義許可權類

參考:1) 建立繼承basepermission的許可權類

2) 實現has_permission方法

3) 實現體根據許可權規則 確定有無許可權

4) 進行全域性或區域性配置

認證規則

i.滿足設定的使用者條件,代表有許可權,返回true

ii.不滿足設定的使用者條件,代表有許可權,返回false

"""```

9、自定義許可權例項 # utils/permissions.py

from rest_framework.permissions import basepermission

from django.contrib.auth.models import group

class mypermission(basepermission):

def has_permission(self, request, view):

# 唯讀介面判斷

r1 = request.method in ('get', 'head', 'options')

# group為有許可權的分組

group = group.objects.filter(name='管理員').first()

# groups為當前使用者所屬的所有分組

groups = request.user.groups.all()

r2 = group and groups

r3 = group in groups

# 讀介面大家都有許可權,寫介面必須為指定分組下的登陸使用者

return r1 or (r2 and r3)

# 遊客唯讀,登入使用者唯讀,只有登入使用者屬於 管理員 分組,才可以增刪改

from utils.permissions import mypermission

class testadminorreadonlyapiview(apiview):

permission_classes = [mypermission]

# 所有使用者都可以訪問

def get(self, request, *args, **kwargs):

return apiresponse(0, '自定義讀 ok')

# 必須是 自定義「管理員」分組 下的使用者

def post(self, request, *args, **kwargs):

return apiresponse(0, '自定義寫 ok')

RESTful架構與RESTful API設計

rest這個詞是roy thomas fielding博士在他2000年的博士 中提出的,fielding將他對網際網路軟體的架構原則定名為rest,即representational state transfer的縮寫,翻譯為 表現層狀態轉化 如果乙個架構符合rest原則,就稱它為restful架...

Restful API的設計與實踐

restful是一種軟體架構風格,設計風格而不是標準,只是提供了一組設計原則和約束條件。它主要用於客戶端和伺服器互動類的軟體。基於這個風格設計的軟體可以更簡潔,更有層次,更易於實現快取等機制。restful這個名稱應該很多人都不陌生,但是我發現不少人對restful存在或多或少的理解偏差。為了更好的...

授權驗證,驗證碼工作方式

函 數 授權驗證,驗證碼工作方式 輸出引數 0 合法,1 期限已過,2 帳號無效 算 法 1 demo帳號只有時間限制 2 real帳號則有雙重限制 int lxverifycode if stringlen string npt password 8 輸入驗證碼小於8位 if stringlen ...