是否可以通过Ajax使直接数据库查询变得安全?

时间:2014-01-22 09:34:36

标签: ajax django security

假设您要格式化您的网址,以便您可以使用Ajax对请求进行直接模型查询。

在Django中进行查询

MyModel.objects.get(id=4)

使用Ajax

通过请求对url进行查询
/ajax/my-model/get/id/4/

问题在于这会带来巨大的安全问题,任何知道如何通过Ajax发出请求的用户都可以通过识别url对应于特定模型的查询来查询数据库。但是,如果这些查询可以变得安全,那么它将允许更加结构良好/可重复使用的客户端代码imo。

但我根本看不出这是如何安全的。我只是想确定这种怀疑是否正确。

2 个答案:

答案 0 :(得分:1)

永远不要相信来自客户的输入。我认为这是Web开发中的一般规则,适用于客户端的任何请求。我想你在这里有几个选择:

答案 1 :(得分:0)

在Django中,此类视图将受其身份验证机制的保护。可以设计视图,这样它只允许特定用户查询特定查询。