当前位置:脚本大全 > > 正文

django参数判断(Django保护敏感信息的方法示例)

时间:2021-10-08 00:03:39类别:脚本大全

django参数判断

Django保护敏感信息的方法示例

django在安全性上表现出色,但是在日常开发中难免会有没有注意到的地方,今天我们就讲一个非常有用的技巧。

千万不要在正式环境中设置debug=true,除非你想跑路

sensitive_variables

众所周知django的发生异常的时候会有错误信息,弄不好,不怀好意的人就通过这些不经意的信息,提出到铭感信息,我们可以使用sensitive_variables处理敏感信息。

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 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会做脱敏处理。

    保护所有变量

  • ?
  • 1
  • 2
  • 3
  • @sensitive_variables()
  • def my_function():
  •   ...
  • 注意:如果有多个装饰器,需要把这个放在第一个。

    处理post的sensitive_post_parameters

    sensitive_post_parameters 和上面的类似只是它是用来处理post请求的。

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 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'],
  •   )
  • 或者处理所有参数

  • ?
  • 1
  • 2
  • 3
  • @sensitive_post_parameters()
  • def my_view(request):
  •   ...
  • 更多信息请阅读:官方文档

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持开心学习网。

    原文链接:http://litets.com/article/2019/5/8/393.html

    上一篇下一篇

    猜您喜欢

    热门推荐