【发布时间】:2011-02-04 07:53:07
【问题描述】:
我从 CodeIgniter 获取 URI 段,并在查询 Oracle 数据库时使用它们。保护这些细分市场的方法是什么?因为我找不到 php 的 Oracle 转义方法(php 中的 MySQL 转义方法是 mysql_real_escape_string())。
顺便说一句,CodeIgniter 中的安全性真的像他们试图在配置文件中告诉你的那样极其危险吗?我认为只要您在使用您正在使用的数据库系统的任何查询中适当地转义这些 URI 段,它就是安全的,但我不知道我是否正确。
谢谢。
【问题讨论】:
-
自从我上次看CI以来已经有一段时间了,但这不是ORM自动转义值吗?无论如何,仍然有老伙伴addlashes。这不是很好,也不是绝对防守,但仍然
-
还有转义方法。嗯,我不太确定,但我认为你应该阅读一些关于 CI 异地的文档
-
使用始终准备好的语句,这样您就可以绑定值而不必担心 SQL 注入,尤其是在您使用 Oracle 时。由于查询将被缓存在数据库端,因此也非常推荐使用准备好的语句而不是普通的 SQL
-
+1 表示准备好的语句。不仅绑定变量是 100% 安全的,并且允许在 Oracle 中缓存查询,而且它们还让 Oracle 每次都跳过代价高昂的硬解析。在这里您可以快速了解使用绑定变量的好处:akadia.com/services/ora_bind_variables.html
标签: php oracle security codeigniter escaping