开发部分中 secrets.yml 中的 OAuth 凭据
Posted
技术标签:
【中文标题】开发部分中 secrets.yml 中的 OAuth 凭据【英文标题】:OAuth credentials in secrets.yml in development section 【发布时间】:2017-07-03 07:11:21 【问题描述】:我的 Rails 应用程序使用 OAuth 身份验证。对于生产凭证,我使用 dotenv gem。配置/secrets.yml:
production:
secret_key_base: <%= ENV['SECRET_KEY_BASE'] %>
facebook_app_id: <%= ENV['FACEBOOK_APP_ID'] %>
facebook_app_secret: <%= ENV['FACEBOOK_APP_SECRET'] %>
为了测试,我使用了专门注册的 Facebook 应用程序,该应用程序具有“redirect_uri”到http://localhost。
我应该对“开发”部分使用相同的方法,还是可以编写注册用于测试的应用程序的信誉?我如何理解没有人可以使用它(用于钓鱼网站),因为在应用程序的设置中有指向“localhost”的“redirect_uri”。
【问题讨论】:
【参考方案1】:建议不要暴露信用,即使是为了测试。您应该对开发和测试采用相同的方法。此外,将包含所有凭据的文件添加到 .gitignore
【讨论】:
你能解释一下为什么推荐它吗?以这种形式分发开源应用程序更容易(当有测试凭据时)。其他开发人员可以更快地运行测试套件。 开源的情况就不同了。对于私有存储库,您不想公开有关您的应用程序的信息,这就是建议不要公开凭据的原因。以上是关于开发部分中 secrets.yml 中的 OAuth 凭据的主要内容,如果未能解决你的问题,请参考以下文章
Rails 5.1 Capistrano 使用 secrets.yml.key 部署
Rails:无法使用新的`config / secrets.yml`