在 VDS 上运行的不同 Web 应用程序是否应该各自拥有自己的用户帐户?

信息安全 Web应用程序 虚拟主机
2021-09-02 05:47:56

我使用 capistrano 在我的 VDS 上部署了我的第二个 Rails 应用程序。我应该将该应用程序服务器配置为作为不同的用户运行,还是与第一个应用程序相同?

如果我以不同的用户身份运行应用程序,它们是否会更安全,是否应该破坏其中一个应用程序?

1个回答

是的。这些帐户可让您限制允许 shell 访问的应用程序漏洞造成的损害程度。

让我们考虑一下您可能想要主动保护的内容:

  1. 使用 JavaScript 等同源权限提供的静态文件。这些不应被任何应用程序帐户写入,因为它们只需要读取并且只能由为它们服务的特定应用程序的用户帐户读取。
  2. 日志文件。这些需要由单个应用程序帐户编写,但不能读取。
  3. 配置文件和脚本。有些可能是共享的,但它们不应该被任何应用程序帐户写入,除非你有充分的理由,否则每个应用程序的配置文件只能由该应用程序用户读取。

如果您的用户与数据库权限相关联,那么任何应用程序表只能由该应用程序的用户修改,并且架构更改权限应保留给管理员。