【发布时间】:2018-07-17 18:01:34
【问题描述】:
我们目前在 Windows server 2012 R2 上使用 TFS 2015.3。使用 NARTAC 指定使用 TLS1.1/1.2 并禁用 TLS1.0 后,我们的构建层服务器无法连接到应用层服务器。
有没有人遇到同样的问题并解决了?谢谢
问候,
【问题讨论】:
我们目前在 Windows server 2012 R2 上使用 TFS 2015.3。使用 NARTAC 指定使用 TLS1.1/1.2 并禁用 TLS1.0 后,我们的构建层服务器无法连接到应用层服务器。
有没有人遇到同样的问题并解决了?谢谢
问候,
【问题讨论】:
似乎 TLS 1.1 和 TLS 1.2 不支持它。
确保您安装的 TFS、底层 .NET 版本和 Windows Server 都支持 TLS 1.2 端点。
TFS 使用的 .NET Framework 版本必须支持 TLS 1.2。某些 .NET Framework 版本可能需要对“SchUseStrongCrypto”进行额外的注册表设置,如here 所述。
不管怎样,你可以试试下面提到的解决方案:
默认情况下,.Net 有一个名为“useStrongCrypto”的设置,允许 客户端 PC 使用 TLS 1.1 及更高版本。
为了让您的本地客户端 PC 能够使用 TLS 1.1 及更高版本(或作为 Microsoft 术语是“强加密”)您需要编辑以下内容 注册表项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\SchUseStrongCrypto = 00000001 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\SchUseStrongCrypto= 00000001或者您可以简单地将以下内容剪切并粘贴到 .reg 文件中并运行它(只有在您知道自己在做什么的情况下才这样做)。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319] "SchUseStrongCrypto"=dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319] "SchUseStrongCrypto"=dword:00000001来源:Getting WebDeploy working after disabling insecure Ciphers like SSL 3.0 and TLS 1.0
还有这篇文章供大家参考:Misbehaving HTTPS Servers impair TLS 1.1 and TLS 1.2
【讨论】:
.NETFramework\v4.0.30319下添加条目
不是 \Microsoft.NETFramework\ 您忘记了第二个注册表集 Microsoft 之后的 \
用途:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319]
"SchUseStrongCrypto"=dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319]
"SchUseStrongCrypto"=dword:00000001
【讨论】: