【问题标题】:Where to store system passwords in the Rails directory tree?在 Rails 目录树中的何处存储系统密码?
【发布时间】:2011-07-25 04:39:49
【问题描述】:

我的 Rails 应用程序中有许多“系统”密码,例如数据库密码和 XML 提要的单独 HTTP 身份验证密码。

我的麻烦是确切地知道如何将这些密码存储在我的目录中,以便它们尽可能安全。您对 Rails 3 有什么特别的建议?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 passwords


    【解决方案1】:

    在数据库中加密?

    在环境配置中?

    我过去都用过。现实情况是 HTTP 密码更像是一个 API 密钥。服务的提供者有责任保证你不能对访问做任何“邪恶”的事情。一般来说,建议不要将任何你不想公开的东西放在源代码控制中。过去,我不得不在我的应用程序之外部署单独的密钥文件。如果您正在做真正安全的事情(例如信用卡),那么您可以这样做。只需在有权访问密钥文件的服务器上创建一个用户。然后,您实际上是在使用对 Unix 机器的访问作为您的安全模型,而不是您的密钥文件的密码。

    【讨论】:

      【解决方案2】:

      只需确保将您的配置文件存储在配置文件夹中(或至少在公共文件夹之外;)。除此之外,您应该确保从外部访问您的 rails-app-user-account (强制 ssh-pubkey 身份验证)。

      另一个安全漏洞是签入的配置文件带有合理的密码信息(例如数据库访问)。我总是将 config/database.yml 添加到 .gitignore 并签入默认的 config/database.sample.yml 作为其他开发人员的模板。 “真实”的 config/database.yml 是使用特定于环境的配置值手动创建和配置的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-07-14
        • 1970-01-01
        • 2020-11-19
        • 2012-04-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多