如何将我的WordPress插件安全地连接到远程数据库?

时间:2016-05-13 作者:Kristen Sepp

首先,我对wordpress插件没有太多经验,但我正在开发一个插件,该插件必须连接并将数据发送到远程数据库(它已经在这样做了)。但此时我的连接根本不安全,因为所有数据库信息都显示给网站管理员。

这是我目前的代码,它可以工作,但我如何才能确保没有人会看到此文件中的数据库数据?

<?php
function webARX_connect_to_db(){
  $servername = "remote_host";
  $username = "username";
  $password = "password";
  $dbname = "database_name";

  // Create connection
  $webARX_connection = new wpdb($username, $password, $dbname, $servername);

  if (empty($webARX_connection->show_errors())){
    return $webARX_connection;
  } else {
    return $webARX_connection->show_errors();
  }
}
?>

2 个回复
SO网友:jake

我建议设置一个API,并确保站点是HTTPS(具有SSL证书),以加密服务器之间的通信。

如果您还没有一个证书,那么可以使用免费的证书,例如https://letsencrypt.org/

SO网友:wax

问得好。

有几件事:

首先,最佳实践告诉我们始终将这些类型的资产保持在Web服务器的文档根目录之外。从权限的角度来看,PHP不受与Web服务器相同的限制,因此您可以在与文档根目录相同的级别上创建一个目录,并将所有敏感数据和代码放在那里。

其次,创建一个新的数据库用户,该用户的功能有限。使用此帐户进行呼叫,而不是超级特权用户。

使用这两种方法将大大降低您的风险。

希望我能提供一些帮助。

祝你好运

相关推荐

Wordpress login security

我已经在我的wp登录页面上设置了一个日志脚本。我注意到一个特定的ip地址——193.176.147.7一直在访问我的登录页面。葡萄球菌病总是快速连续,3次发作。这是我的插件在挂起ip之前允许的失败尝试数。我应该担心吗?我能采取什么预防措施吗?例如,阻止特定IP将有所帮助,或者我应该阻止某些范围的IP吗?我做了一个whatismyip。com查找,但他们没有任何信息。更改我的wp登录名。php对其他东西有帮助吗?