Django:直接从request.POST [“item”]处理数据的风险

时间:2013-04-22 10:06:59

标签: python django security django-models django-forms

有时我的表单在逻辑上有点复杂,需要验证而不仅仅是类型检查或正则表达式,所以我最终直接从request.POST['item']处理数据,如:

  • datetime.strptime(request.POST['item'], FORMAT)
  • MyModel.objects.filter(name=request.POST['item2']

据我所知,第一个例子会在最坏的情况下抛出异常,因此没有安全问题,而对于第二个例子,Django ORM会阻止SQLi。这是对的吗?

我在URLConf中也有正则表达式,所以我想在views.py中处理从URL中获取的数据是安全的,因为URLConf已经使用正则表达式对其进行了验证,对吗?

1 个答案:

答案 0 :(得分:1)

是。如果这些案例不安全,则会出现安全问题,如果被发现,可以快速修补。