您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在python中防止SQL注入

5b51 2022/1/14 8:22:54 python 字数 2168 阅读 560 来源 www.jb51.cc/python

我在 Python中有一些代码在sqlite DB中设置char(80)值. 该字符串是通过文本输入字段直接从用户获取的,并使用JSON结构中的POST方法发送回服务器. 在服务器端,我当前将字符串传递给调用SQL UPDATE操作的方法. 它有效,但我知道它根本不安全. 我希望客户端无论如何都是不安全的,因此任何保护都应放在服务器端.我可以做些什么来再次保护UPDATE操作SQL注入? 我正在寻

概述

该字符串是通过文本输入字段直接从用户获取的,并使用JSON结构中的POST方法发送回服务器.

在服务器端,我当前将字符串传递给调用sql UPDATE操作的方法.

它有效,但我知道它根本不安全.

我希望客户端无论如何都是不安全的,因此任何保护都应放在服务器端.我可以做些什么来再次保护UPDATE操作sql注入?

我正在寻找的是一个“引用”文本以便它不会混淆sql解析器的函数.我希望这样的功能存在,但找不到它.

编辑:
这是我当前设置char字段名称标签代码

def setLabel( self,userId,refId,label ):
    self._db.cursor().execute( """
        UPDATE items SET label = ? WHERE userId IS ? AND refId IS ?""",( label,refId) )
    self._db.commit()
con.execute("insert into person(firstname) values (?)",("Joe",))

这逃脱了“乔”,所以你想要的是

con.execute("insert into person(firstname) values (?)",(firstname_from_client,))

总结

以上是编程之家为你收集整理的在python中防止SQL注入全部内容,希望文章能够帮你解决在python中防止SQL注入所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶