mysql php security


mysql php security

在我的php页面上,我在顶部像这样连接到数据库

$db = mysql_connect("mysql.site.com","thedb", "pass"); 
mysql_select_db("dbase",$db); 

这安全吗?有人可以以某种方式扫描和查看我的代码,从而访问数据库吗?

更新

我问的原因是因为用户能够访问我的数据库,而且我很确定这不是通过 sql 注入。

最好将此

代码段移动到文档根目录之外的包含文件中 - 这将防止人们阅读它,以防您的网络服务器以某种方式配置错误并开始以纯文本形式提供PHP文件。虽然,仅就其本身而言,它足够安全 - 不太可能有人能够故意像这样错误配置您的服务器。

如果有人确实可以访问您的代码,那么是的,他们将能够读出密码。

对此,您可以做很多事情,但是确保此代码是来自Web根目录的目录会有所帮助。

(即,如果您从文件夹 /usr/htdocs/mysite 提供您的网站,请将其更改为 /usr/htdocs/mysite/public ,然后将您的包含放在我的网站而不是公共中。

您应该始终应用多层防御:

  1. 从源代码中删除凭据,并将其放置在 Web 服务器的文档根目录之外。
  2. 限制对数据库的访问,可能只能通过本地主机或套接字。
  3. 将用户的权限限制为仅必要的权限。

没关系,我可以说的重要事情是,转到您的数据库并授予该用户的受限权限,我的意思是仅选择,插入,更新和删除所需的表..除此之外,使用该信息创建一个文件,并在需要时包含它,这是我的建议。

如果有人浏览您的代码将能够看到该信息,但请始终尝试减少损害影响