php硬编码,关于安全性:如何在PHP中保护硬编码的登录名/密码?

我正在编写一个简单的PHP脚本来访问Foursquare API。 PHP将始终访问相同的Foursquare帐户。 目前,我的登录信息已硬编码在脚本中。 保护此信息的最佳方法是什么?

如果我遵循此线程的建议,则应将登录信息放在网站根目录之外的配置文件中:

如何在PHP中保护数据库密码?

这是最好的建议吗? 还是有更好的方法来保护登录信息?

当然,最好的方法是根本不存储它。

如果不能这样做,请将其存储在PHP文件中(作为变量)应确保不会将其发送到客户端。如果您对Web服务器突然停止解释PHP感到疑惑,可以将其放在文档根目录之外或拒绝访问的单独文件中(例如,通过.htaccess指令访问)。

+1-最好将其放在文档根目录之外的文件中。

(这里有特定于Linux的详细信息,因此,如果这不是您的平台,请原谅...)

如果您正在apache上运行并且可以访问配置文件(共享主机可能不是这种情况),则可以在VirtualHost配置(或httpd.conf或其他随附的配置文件)中放置如下一行:

SetEnv FOURSQUARE_PW"your password"

然后,您的php脚本可以在$_SERVER['FOURSQUARE_PW']处对其进行访问。

这样做的好处是您可以使配置文件只能由root用户读取,因为apache将使用init.d作为root用户启动。

我没有看到真正的优势。 您想阻止谁读取文件? 恶意的PHP脚本? 这些对象要做的第一件事通常是print_r($_SERVER)-不好意思。

我承认它有一个小的优势(如果有的话),具体取决于环境。 Web堆栈可能是最有可能破坏服务器的方法,但可能还有其他方法。 如果攻击者通过其他方式获得访问权限,则他们可能能够读取但不能写入网站文件...

将其作为变量存储在.php文件中,作为根目录之外的根目录中的一个文件名,这是不容易猜到的,这是一种确保凭证安全的合理安全方法。但是,如果您完全可以避免将其存储在服务器上,那将是最好的选择。提供一个登录页面,以根据需要将该信息输入以用于会话,然后在不再需要该信息时将其丢弃。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值