gpt4 book ai didi

php - 在多开发 nginx 设置中保护密码

转载 作者:可可西里 更新时间:2023-11-01 06:30:54 25 4
gpt4 key购买 nike

我们的服务器上安装了 Ubuntu12.04+PHP+nginx。我们的开发人员可以访问/usr/lib/php5/和/var/www/文件夹。我们从事很多项目,在给定时间有 50-100 个不同的应用程序/模块,每个应用程序/模块都处于事件状态。

我们想提出一种机制来保护我们的数据库密码,并考虑以下因素:

  • 系统管理员创建密码并将其注册到某处(文件、sqlite 数据库等)
  • 应用程序提供一个 key ,指示他们想要哪个数据库和什么权限级别,并且此模块返回一个对象,其中包含连接所需的一切。类似于“user_manager.client1.ro”、“user_manager.client1.rw”之类的东西。
  • 该机制应向应用程序提供特定密码,因此可以通过“www-data”访问,但除非知道其 key ,否则无法看到所有其他密码。

我们已经设法得到了一个原型(prototype),但中央密码提供模块在 www 数据空间中运行,因此文件/sqlite 始终可以被/var/www/或/usr 中的任何其他文件访问/lib/php5,因此所有密码都可能被泄露。

有没有办法设置密码提供模块以 root 权限运行并且应用程序从中请求密码?我知道我们可以为此构建一个全新的服务,但构建和维护似乎太多了(特别是因为该服务成为我们的单点故障。)

有什么建议吗?

最佳答案

使用权限,您可以执行以下操作:

1) 给一个开发者一个用户

2) chown/var/www/下的每个文件夹给用户 www-data,以及该站点的特定组,例如: /var/www/site-a www-数据组-a /var/www/site-b www-数据组-b 等等

3) chmod 每个目录(以及所有带-R 的子目录和文件)到 770

4) 将每个开发人员添加到他实际开发的每个组中。

关于php - 在多开发 nginx 设置中保护密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16930604/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com