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

ruby-on-rails – Heroku的环境变量是否是存储敏感数据的安全方式?,第1张

概述我使用Heroku来部署Rails应用程序.我将敏感数据(如API密钥和密码)存储在Heroku的环境变量中,然后在使用各种AP​​I的rake任务中使用这些数据. 我只是想知道Heroku的环境变量是多么安全?是否有办法散列这些变量,同时保留在某种程度上在后台使用它们的能力? 我在这里遇到了一个前一个帖子:Is it secure to store passwords as environmen 我使用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变量数据,至少在我的经验中如此.

总结

以上是内存溢出为你收集整理的ruby-on-rails – Heroku的环境变量是否是存储敏感数据的安全方式?全部内容,希望文章能够帮你解决ruby-on-rails – Heroku的环境变量是否是存储敏感数据的安全方式?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1276149.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-09
下一篇2022-06-09

发表评论

登录后才能评论

评论列表(0条)

    保存