如何隐藏敏感的Twilio帐户信息(account_sid& auth_token)

时间:2013-10-22 16:37:19

标签: ruby-on-rails twilio

我正在介绍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

1 个答案:

答案 0 :(得分:2)

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

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

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

或者,如果您必须将其检入github,请使用gnupg等对称加密,并在主机上对其进行解密。

在所有这些情况下,你必须小心,不要意外地检查它到git。将localsettings.rb添加到.gitignore文件是一个好主意。

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