Node.js 如何在开源项目中隐藏Twitter Oauth的消费者秘密?

Node.js 如何在开源项目中隐藏Twitter Oauth的消费者秘密?,node.js,open-source,twitter-oauth,everyauth,Node.js,Open Source,Twitter Oauth,Everyauth,对于在开源项目中使用Oauth的Twitter,如何隐藏消费者机密?是否在产品部署之前向代码中添加机密 这通常也适用于开放源代码中的机密/密码。标准解决方案是将其存储在配置文件中。因此,每个想要安装和运行软件的人都需要注册自己的密码才能使用您的软件 通常,对于基于服务器的软件,每个安装都是一个单独的服务。例如,NBC Universal、NPR和Huffington Post都使用相同的软件,但被视为不同的实体。因此,这在总体上是有意义的 但是,对于基于桌面的软件,情况并非如此。NBC、NPR和

对于在开源项目中使用Oauth的Twitter,如何隐藏消费者机密?是否在产品部署之前向代码中添加机密


这通常也适用于开放源代码中的机密/密码。

标准解决方案是将其存储在配置文件中。因此,每个想要安装和运行软件的人都需要注册自己的密码才能使用您的软件

通常,对于基于服务器的软件,每个安装都是一个单独的服务。例如,NBC Universal、NPR和Huffington Post都使用相同的软件,但被视为不同的实体。因此,这在总体上是有意义的


但是,对于基于桌面的软件,情况并非如此。NBC、NPR和《赫芬顿邮报》使用的文字处理器并不被认为是不同的软件,只是微软的word。因此,对于基于桌面的软件(或移动应用程序),除了在构建过程中包含必要的私钥/密码外,解决方案与此类似。同样,将这些都保存在配置文件中会使工作更轻松。只需确保上载到公共repo的示例/默认配置文件不包含任何机密。

您还可以将它们存储在环境变量中

everyauth.twitter.consumerKey(process.env.twitter\u CONSUMER\u KEY)
.consumerSecret(process.env.TWITTER\u CONSUMER\u SECRET)