如何在开源项目中隐藏使用Oauth的Twitter consumer secret
?您是否在生产部署之前将密码添加到代码中?
这也适用于您的开源代码中的秘密/密码。
答案 0 :(得分:4)
您也可以将它们存储在环境变量中。
everyauth.twitter.consumerKey(process.env.TWITTER_CONSUMER_KEY)
.consumerSecret(process.env.TWITTER_CONSUMER_SECRET)
答案 1 :(得分:3)
标准解决方案是将其存储在配置文件中。因此,每个想要安装和运行软件的人都需要注册他/她自己的密码来使用你的软件。
通常,对于基于服务器的软件,每个安装都是单独的服务。例如,NBC Universal,NPR和Huffington Post都使用相同的软件,但被认为是不同的实体。因此,这一般是有道理的。
但是,对于基于桌面的软件,情况并非如此。 NBC,NPR和Huffington Post使用的文字处理器不被认为是不同的软件,而只是Microsoft Word。因此,对于基于桌面的软件(或移动应用程序),解决方案类似,只是在构建过程中包含必要的私钥/密码。再次,将这一切保留在配置文件中可以使生活更轻松。只需确保您上传到公共存储库的示例/默认配置文件不包含任何机密。