在代理后面的Windows上访问NPM而不存储密码

时间:2018-02-05 16:28:53

标签: node.js npm proxy visual-studio-2017 kerberos

我在Visual Studio 2017和命令行中使用NPM。

根据我的调查,NPM没有使用Windows身份验证进行身份验证来访问http://registry.npmjs.org/,因此npm被公司代理阻止。

要解决问题,下面的解决方案可以正常工作但具有安全漏洞:

npm config set registry http://registry.npmjs.org/
npm config set http-proxy http://user:pass@ip:port
npm config set https-proxy http://user:pass@ip:port
npm config set proxy http://user:pass@ip:port
npm set strict-ssl false

这会将密码存储在NPM配置中的BASE64编码文本中(不太好!)

另一种解决方案是始终为每个命令提供代理设置以避免存储密码,但这仍然不理想,例如:

npm --without-ssl --insecure --proxy http://user:pass@ip:port install package-name

我已经尝试过CNTLM,它在存储密码方面更安全,但每次更新密码时都必须更新CNTLM,因此不太理想。

我们是否可以设置NPM进行身份验证以使用Kerberos或任何其他安全方法从VS或命令行继续执行凭据?

0 个答案:

没有答案