Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 安全HTTP基本身份验证_Javascript_Node.js_Rest_Http_Basic Authentication - Fatal编程技术网

Javascript 安全HTTP基本身份验证

Javascript 安全HTTP基本身份验证,javascript,node.js,rest,http,basic-authentication,Javascript,Node.js,Rest,Http,Basic Authentication,我正在连接一些API并使用基本身份验证,如下所示: this.jenkins=jenkinsapi.init('https://USERNAME:PASSWORD@this-is-a-jenkins.server.local:8080',{strictSSL:false}) 我担心的是,用户的密码只是以变量或纯文本的形式存在。它位于“private”方法中,但是如果任何人能够查看服务器上的源代码,他们就可以查看用户名和密码 如何在仍然使用http basic auth的情况下使其更安全?看看环境

我正在连接一些API并使用基本身份验证,如下所示:

this.jenkins=jenkinsapi.init('https://USERNAME:PASSWORD@this-is-a-jenkins.server.local:8080',{strictSSL:false})

我担心的是,用户的密码只是以变量或纯文本的形式存在。它位于“private”方法中,但是如果任何人能够查看服务器上的源代码,他们就可以查看用户名和密码


如何在仍然使用http basic auth的情况下使其更安全?

看看环境变量

其中
ENV_VARIABLE
是在运行应用程序的系统中定义的内容。对于iNtance,在我的Node.js应用程序中,运行在Heroku上,并在Github上公开托管,我使用
process.env.MONGOLAB_URI
,而不是包含数据库名称、用户名和密码的SQL类型字符串。由于Heroku的原因,我已经自动配置了这个变量,但我也能够在我的操作系统(本例中是Windows)中本地设置该变量,以便代码也可以在本地运行


还可以查看Jenkins如何使用环境变量。

使用配置文件存储用户名/密码,理想情况下,该文件加载在服务器中,而不是在webapp或构建中,因此即使开发人员也不知道产品的用户名/密码。
process.env.ENV_VARIABLE