我已经使用NodeJS构建了一个应用程序,该应用程序使用多个第三方付费服务,可通过其API访问。
根据最佳做法,我还没有将包含这些API密钥的文件提交到我的存储库。但是,现在我想要使用Elastic Beanstalk进行部署,但似乎没有办法直接从我的repo部署而不提交密钥。
使用必要密钥部署应用程序的正确/最佳方法是什么,而不会因为将它们提交给不安全的回购而冒着安全风险?
答案 0 :(得分:0)
许多第三方托管服务(如AWS,Heroku,Openshift等)允许您为应用程序设置环境变量。通常将API密钥设置为环境变量是关于安全性的最佳实践,因为它避免将它们存储在本地或版本历史中。
至于如何设置它们,这将取决于服务。
编辑:亚马逊在此处提供了一个页面:https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb3-setenv.html
简短的回答是使用:
eb setenv key=value