【发布时间】:2013-11-19 21:08:38
【问题描述】:
我有一个在 Ruby 2.0 上运行的 Ruby on Rails 应用程序(v4.0.1,尽管我认为这与此处无关),我允许用户对第三方服务进行 OAuth 以让我访问他们的数据。
我已将应用程序的使用者密钥和使用者秘密存储在不受源代码控制的环境变量中。
在 OAuth / OAuth2 舞蹈中的最后一次回调之后,我的每个用户都有令牌,可用于访问他们的信息。
对于他们的登录凭据,我使用一种散列方式将他们的密码以纯文本形式存储在我的数据库中,所以我想我应该对他们的令牌做类似的事情,但因为我需要使用这些令牌来访问他们的数据,我需要能够重现纯文本,所以我试图找出进行对称加密的最佳方法。
我打算将我的加密密钥存储为环境变量,然后使用https://gist.github.com/nono/2995118 之类的东西来加密令牌。这安全吗?
有人用过这个https://github.com/reidmorrison/symmetric-encryption gem吗?
我正在努力避免自己重新发明轮子。有什么建议吗?
【问题讨论】:
标签: ruby-on-rails ruby encryption oauth oauth-2.0