加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Heroku的环境变量是否是存储敏感数据的安全方

发布时间:2020-12-17 02:22:48 所属栏目:百科 来源:网络整理
导读:我使用Heroku来部署Rails应用程序.我将敏感数据(如API密钥和密码)存储在Heroku的环境变量中,然后在使用各种AP??I的rake任务中使用这些数据. 我只是想知道Heroku的环境变量是多么安全?是否有办法散列这些变量,同时保留在某种程度上在后台使用它们的能力? 我
我使用Heroku来部署Rails应用程序.我将敏感数据(如API密钥和密码)存储在Heroku的环境变量中,然后在使用各种AP??I的rake任务中使用这些数据.

我只是想知道Heroku的环境变量是多么安全?是否有办法散列这些变量,同时保留在某种程度上在后台使用它们的能力?

我在这里遇到了一个前一个帖子:Is it secure to store passwords as environment variables (rather than as plain text) in config files?.

但是,当我仍然需要使用未加密的密码来执行重要的后台任务时,它并不能完全覆盖实例.

解决方法

几件事(主要是我的意见):

1. API密钥!=密码

当您谈论API密钥时,您谈论的是一个通常已经非常安全的公共令牌.如今API的本质是它们需要某种先前的身份验证(在应用程序或用户级别)以创建更强大的安全级别.

我首先要确保你在ENV变量中存储什么类型的数据.如果它是纯密码(对于电子邮件等),也许可以考虑将您的设置迁移到其中一个云提供程序(SendGrid / Mandrill等),允许您只使用API??密钥

API密钥的优点在于它们可以在不影响基本帐户的情况下进行更改,以及限制与API约束的交互性.密码会影响基本帐户

2. ENV Vars是操作系统级别的

They are part of the operating environment in which a process runs.
For example,a running process can query the value of the TEMP
environment variable to discover a suitable location to store
temporary files,or the HOME or USERPROFILE variable to find the
directory structure owned by the user running the process.

您必须记住环境变量基本上意味着您将数据存储在您正在运行的环境中.通常意味着“OS”,但如果需要,也可以是OS的虚拟实例.

底线是您的ENV vars存在于服务器的核心.与文本文件相同的方式将位于硬盘驱动器上的目录中 – 环境变量位于操作系统的核心

除非您收到服务器本身的黑客攻击,否则很难以编程方式获取ENV变量数据,至少在我的经验中如此.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读