本质上,我正在开发一个基于PHP的CMS,我希望为插件基础设施添加一个额外的安全层。目前,作者必须使用传统的方法保护他们的SQL子句,这是没有问题的。
CMS接受独立部分的查询,WHERE子句是其中的一部分。作为一个附加的安全层,我想做的是,在WHERE子句被添加到语句之前,让系统做一个快速的regex检查,以确保该子句是有效的。
where子句的公式已经被括号包围了,所以我认为它应该做的只是确保。。。
引文外有相等数量的括号
没有悬挂的引号
第一个括号不是右括号
最后一个括号不是左括号
没有评论
记住,这只是一个附加层,以防插件作者忘记了他的咖啡,没有消毒他的输入。这听起来像是一个明智的解决方案吗?有没有类似于我所描述的regex语句?这是我最擅长的一件事。

最佳答案

我说,为什么不呢?皮带和背带离开!我还是宁愿提供一个API,而不是让他们提交部分或全部查询。这将允许您使用参数化查询(准备好的语句)。

关于php - 在特定条件下在MySQL WHERE子句中使用Regex,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3374166/

10-13 08:47