gpt4 book ai didi

ruby-on-rails - 如果即使对于开源项目,rails 项目的任何源代码也应该被隐藏怎么办?

转载 作者:行者123 更新时间:2023-12-04 02:00:41 26 4
gpt4 key购买 nike

关闭。这个问题需要更多 focused .它目前不接受答案。












想改进这个问题?更新问题,使其仅关注一个问题 editing this post .

6年前关闭。




Improve this question




这是一个很难搜索的。如果我有一个开源 Rails Web 应用程序项目,其源代码是公开托管的,例如在 GitHub 上,如果该应用程序要在公共(public)网站的生产环境中运行,应该隐藏或交换哪些信息?我的假设是 config/initilizers/secret_token.rb 之类的东西,任何身份验证加盐的东西,以及数据库登录信息在生产和开发中都不应该是一样的。应该采取哪些其他预防措施来确保生产站点不会受到摆弄 session 的人或我不考虑的其他任何事情的影响?

最佳答案

特定于 Rails 的敏感信息来源

清除以下敏感信息:

  • config/environments/*.rb
  • config/initializers/cookie_verification_secret.rb
  • config/initializers/secret_token.rb
  • config/initializers/session_store.rb
  • 为支持第三方库而添加的任何文件,例如 config/memcached.yml
  • config/database.yml
  • db/seeds.rb
  • lib/tasks 中的任何 rake 任务.
  • test/fixtures/*

  • 一般变更

    包括这个只是因为我认为这是一个很好的 list ,在发布你在生产中也有的开源软件时要牢记。
  • 删除敏感信息:
  • 密码盐
  • 由代码或种子填充的默认用户凭据
  • 任何外部服务器或服务的身份验证信息
  • 数据库
  • 第三方 API
  • 电子商务解决方案
  • 任何可能公开商业 secret 的种子数据
  • 彻底测试代码以发现漏洞。如果它们在您的代码中并且您的代码可供公众使用,那么人们会找到它们并知道如何破坏您的网站。
  • 清理代码。该代码是您网站的一种宣传形式;它是代表您的站点/公司的众多事物之一。确保您更改了出于幽默或沮丧而编写的变量/函数名称/错误消息/种子数据/等,但在公众看来会很糟糕。
  • 积极地为项目贡献你的增强和错误修复,并响应外部的修复/增强请求,甚至为那些自己解决问题的人提出请求。这使项目保持活跃,也有助于宣传角度。
  • 确保你在信用到期时给予信用。既然您的代码是公开的,人们就会知道您是否使用了第三方代码/库。如果此类代码在其许可协议(protocol)中附带归属条款,请确保您的项目符合这些协议(protocol)。
  • 关于ruby-on-rails - 如果即使对于开源项目,rails 项目的任何源代码也应该被隐藏怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4799970/

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