内容简介:Django在安全性上表现出色,但是在日常开发中难免会有没有注意到的地方,今天我们就讲一个非常有用的技巧。众所周知Django的发生异常的时候会有错误信息,弄不好,不怀好意的人就通过这些不经意的信息,提出到铭感信息,我们可以使用sensitive_variables处理敏感信息。这样在发生错误的时候Django会做脱敏处理。
Django在安全性上表现出色,但是在日常开发中难免会有没有注意到的地方,今天我们就讲一个非常有用的技巧。
千万不要在正式环境中设置DEBUG=True,除非你想跑路
sensitive_variables
众所周知Django的发生异常的时候会有错误信息,弄不好,不怀好意的人就通过这些不经意的信息,提出到铭感信息,我们可以使用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 ...
这样在发生错误的时候Django会做脱敏处理。
保护所有变量
@sensitive_variables() def my_function(): ...
注意:如果有多个装饰器,需要把这个放在第一个。
处理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'], )
或者处理所有参数
@sensitive_post_parameters() def my_view(request): ...
更多信息请阅读: 官方文档
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 下一代网络钓鱼技术——滥用Azure信息保护功能
- 云晓春:新形势下关键信息基础设施的安全保护
- “人脸和指纹都在裸奔” 个人生物信息期待立法保护
- 基于安全管理控制平台的铁路旅客隐私信息保护技术架构
- 微软Chromium版Edge浏览器企业特性公布:支持Windows 10信息保护
- 黑客窃取了美国边境管理局的生物识别信息数据库,这也提醒我们,是时候重视“个人生物信息”的保护了!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。