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

2022-08-30 05:54:06

当PHP应用程序建立数据库连接时,它通常需要传递登录名和密码。如果我为我的应用程序使用单个最低权限登录名,那么PHP需要在某个地方知道该登录名和密码。保护该密码的最佳方法是什么?似乎只是在PHP代码中编写它不是一个好主意。


答案 1

有几个人误认为这是一个关于如何在数据库中存储密码的问题。这是错误的。它是关于如何存储允许您访问数据库的密码。

通常的解决方案是将密码从源代码中移出到配置文件中。然后,将管理和保护该配置文件的任务留给系统管理员。这样,开发人员就不需要知道有关生产密码的任何信息,并且源代码管理中没有密码的记录。


答案 2

如果您在其他人的服务器上托管,并且在 Webroot 外部没有访问权限,则始终可以将密码和/或数据库连接放在文件中,然后使用 .htaccess 锁定文件:

<files mypasswdfile>
order allow,deny
deny from all
</files>

推荐