Visual Studio 2015 - 无法登录,使用企业代理后面的NuGet等

时间:2015-07-22 18:30:06

标签: proxy nuget visual-studio-2015

我在需要身份验证的公司代理服务器后面。使用Visual Studio 2015,我无法登录,使用NuGet,浏览扩展程序等 - 所有需要通过代理才能访问Internet的内容。这在以前版本的Visual Studio中不是问题。

NuGet connection error

如果我运行充当中间代理的Fiddler,并将对公司代理进行身份验证,那么一切正常。或者,如果我将我的笔记本电脑放在公共互联网上(不在公司代理服务器后面),一切正常。

我尝试按照建议here修改C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ devenv.exe.config。我试过了

<defaultProxy enabled="true" useDefaultCredentials="true">
   <proxy bypassonlocal="True" proxyaddress="http://<yourproxy:port#>"/>
</defaultProxy>

<defaultProxy enabled="true" useDefaultCredentials="true">
   <proxy usesystemdefault="true"/>
</defaultProxy>

......但无济于事。其他人遇到这个问题?

更新:正如Dimitri所说,NuGet现在可以正常工作了。唯一仍然无效的是登录屏幕和“开始”页面上的“精选视频”Feed。我一直与我们的Microsoft帐户代表联系,我正在向Microsoft发送内存转储,以便他们进一步排除故障。

更新: NuGet再次停止工作。我们已经确定Fiddler使其有效的原因是because Fiddler forces TLS 1.0 connections。主要问题是我们的公司代理BlueCoat不允许TLS 1.2连接,并且Visual Studio不能像IE / Chrome那样优雅地回退到TLS 1.1或1.0。有了这些信息,我将前往我们的网络/安全团队试图到达某个地方。

4 个答案:

答案 0 :(得分:14)

在NUGET设置中使用此地址

http://packages.nuget.org/v1/FeedService.svc/ 

这个地址是HTTP protrocol并且工作正常。

答案 1 :(得分:14)

.Net 4.6(和Visual Studio 2015)的System.Net.ServicePointManager.SecurityProtocol默认值与之前版本的框架不同。除TLS 1.0外,默认值现在包括TLS 1.2和TLS 1.1。这就是为什么在早期版本的Visual Studio中这从来不是问题。

在我们的案例中,问题归结为我们的公司BlueCoat代理不支持TLS 1.2 ECDHE-ECDSA密码。长期解决方案是将BlueCoat更新为支持此新密码的版本。但是从短期来看,我们能够指定Windows尝试使用不同密码套件的顺序,因此它使用BlueCoat能够理解的密码。

  1. 打开本地组策略编辑器(gpedit.msc)
  2. 展开计算机配置 - &gt;管理模板 - &gt;网络 - &gt; SSL配置设置。
  3. 打开SSL Cipher Suite订单设置。
  4. 将设置设置为“已启用”,然后将SSL Cipher Suites命令设置为:
  5. TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_RC4_128_SHA,TLS_RSA_WITH_3DES_EDE_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256_P256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256_P256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384_P384,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384_P384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA_P256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA_P384,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA_P256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA_P384,TLS_DHE_DSS_WITH_AES_128_CBC_SHA256,TLS_DHE_DSS_WITH_AES_128_CBC_SHA,TLS_DHE_DSS_WITH_AES_256_CBC_SHA256,TLS_DHE_DSS_WITH_AES_256_CBC_SHA,TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA,TLS_RSA_WITH_RC4_128_MD5,SSL_CK_RC4_128_WITH_MD5

    (确保复制并粘贴后列表中没有空格)

    1. 点击“确定”,然后重新启动计算机。
    2. 默认情况下,唯一的变化是将TLS_ECDHE_RSA_WITH_AES_CBC_SHA_P256移至开头,以便不会首先为TLS 1.2协商更高强度的ECDSA密码。如果您遇到类似问题,可能需要与网络/安全团队合作,以确定您需要优先考虑的密码。

答案 2 :(得分:5)

使用fiddler4并让它充当代理(并解密https流量)解决问题 Using Fiddler to sniff Visual Studio 2013 requests (proxy firewall)

答案 3 :(得分:2)

许多用户(包括我)都有同样的问题: https://social.msdn.microsoft.com/Forums/en-US/06e580a4-fede-43cf-b285-3d3d66fb1b9a/cant-sign-into-vs-2015?forum=vssetup

更新: 新版nuget =&gt; nuget连接正在运行。

相关问题