我正在连接一些API并使用基本身份验证,如下所示:
this.jenkins = jenkinsapi.init('https://USERNAME:PASSWORD@this-is-a-jenkins.server.local:8080', {strictSSL: false});
我担心只是将用户的密码放在变量或纯文本中。这是一个私人的'方法,但如果任何人能够在服务器上查看源,他们将能够查看用户名和密码。
如何在使用http basic auth?
的同时使其更安全答案 0 :(得分:1)
看看环境变量。 These are available in Node.js
process.env.ENV_VARIABLE
ENV_VARIABLE
是运行应用程序的系统中定义的内容。对于isntance,在我在Heroku上运行的Node.js应用程序中,并在Github上公开托管,我使用process.env.MONGOLAB_URI
而不是包含数据库名称,用户名和密码的SQL类型字符串。由于Heroku,我自动配置了这个,但是我也可以在我的操作系统中本地设置变量(本例中是Windows),这样代码也可以在本地运行。
同时查看this answer关于在Jenkins中使用环境变量的信息。