Django保護(hù)敏感信息的方法示例
Django在安全性上表現(xiàn)出色,但是在日常開發(fā)中難免會有沒有注意到的地方,今天我們就講一個(gè)非常有用的技巧。
千萬不要在正式環(huán)境中設(shè)置DEBUG=True,除非你想跑路
sensitive_variables
眾所周知Django的發(fā)生異常的時(shí)候會有錯(cuò)誤信息,弄不好,不懷好意的人就通過這些不經(jīng)意的信息,提出到銘感信息,我們可以使用sensitive_variables處理敏感信息。
from django.views.decorators.debug import sensitive_variables
@sensitive_variables('user', 'password', 'other')
def process_info(user):
password = user.pass_word
other = user.credit_card_number
name = user.name
...
這樣在發(fā)生錯(cuò)誤的時(shí)候Django會做脫敏處理。
保護(hù)所有變量
@sensitive_variables() def my_function(): ...
注意:如果有多個(gè)裝飾器,需要把這個(gè)放在第一個(gè)。
處理post的sensitive_post_parameters
sensitive_post_parameters 和上面的類似只是它是用來處理post請求的。
from django.views.decorators.debug import sensitive_post_parameters
@sensitive_post_parameters('pass_word', 'credit_card_number')
def record_user_profile(request):
UserProfile.create(
user=request.user,
password=request.POST['pass_word'],
credit_card=request.POST['credit_card_number'],
name=request.POST['name'],
)
或者處理所有參數(shù)
@sensitive_post_parameters() def my_view(request): ...
更多信息請閱讀: 官方文檔
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
基python實(shí)現(xiàn)多線程網(wǎng)頁爬蟲
python是支持多線程的, 主要是通過thread和threading這兩個(gè)模塊來實(shí)現(xiàn)的,本文主要給大家分享python實(shí)現(xiàn)多線程網(wǎng)頁爬蟲,需要的朋友可以參考下2015-09-09
numpy中的norm()函數(shù)求范數(shù)實(shí)例
這篇文章主要介紹了numpy中的norm()函數(shù)求范數(shù)實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
python3下pygame如何實(shí)現(xiàn)顯示中文
這篇文章主要介紹了python3下pygame如何實(shí)現(xiàn)顯示中文,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01
pandas.loc 選取指定列進(jìn)行操作的實(shí)例
今天小編就為大家分享一篇pandas.loc 選取指定列進(jìn)行操作的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05
Python使用pyautocad+openpyxl處理cad文件示例
這篇文章主要介紹了Python使用pyautocad+openpyxl處理cad文件,結(jié)合實(shí)例形式分析了Python使用pyautocad與openpyxl模塊讀寫cad文件相關(guān)應(yīng)用操作技巧,需要的朋友可以參考下2019-07-07

