0

我正在介绍 Twilio + RoR 的精彩世界,到目前为止我有一个愉快的体验。

但是,我注意到如果我要公开我的项目,我会暴露敏感的 Twilio 帐户信息:

  • Account_sid
  • Auth_token
  • Twilio 电话号码

我的问题是,如何在 Rails 应用程序中隐藏这三条信息,以便在推送到 GitHub 时,其他人无法访问它们?

下面是一些示例代码:

class SMS < ApplicationController
  def text
    message = params[:message]
    number = params[:number]
    account_sid = 'xxxxxxxxxxxxHIDExxxxxxxxxxxxxxxxx'
    auth_token = 'yyyyyyyyyyyyyHIDEyyyyyyyyyyyyyy'

    @client = Twilio::REST::Client.new account_sid, auth_token

    @message = @client.account.messages.create({:to => "+1"+"#{number}",
                                   :from => "zzzzHIDEzzzz",
                                   :body => "#{message}"})
    redirect_to '/index'
  end
end
4

1 回答 1

2

答案是首先不要将该信息发布到 GitHub。

当我使用 Twilio 应用程序时,我使用了一个localsettings.py(Python,但对于 Ruby 应该是相同的)文件来保存我下载并带外分发的敏感信息。

用户友好的界面可以是从服务器凭据下载此文件的设置脚本。

或者,如果您必须将其签入 github,请使用诸如 gnupg 之类的东西对其进行对称加密,然后在您的主机上对其进行解密。

在所有这些情况下,您必须小心不要意外将其签入 git。添加localsettings.rb到您的.gitignore文件是一个好主意。

(如果您已经将其推送到 github,请参阅此处了解如何撤消该操作。)

于 2013-10-22T16:39:42.730 回答