【问题标题】:How to fix to use TLS 1.2如何修复以使用 TLS 1.2
【发布时间】:2019-02-08 22:54:25
【问题描述】:

我使用的是 Windows 10、Visual Studio 2017、.Net 4.7。 并使用 DocuSign SOAP API 发送信封。我的代码使用的是 .NET 4.7 - 在 web.config 中检查并在项目属性 > 应用程序选项卡中确认。

然而,我不断收到来自 DocuSign 的错误,即我需要使用 TLS 1.2 并且我正在使用 TLS 1。

我还能做些什么来解决这个问题?

【问题讨论】:

  • 请提供minimal reproducible example 显示您的代码和配置。
  • web.config 有 4.7。项目属性也显示 4.7。当我发送信封时,我收到了我在 TLS 1 的错误。这一直工作到 2 月 4 日。
  • 描述你的应用是一回事。显示确切的代码和配置以及正确的 MCVE 是另一回事。

标签: c# .net docusignapi tls1.2


【解决方案1】:

您始终可以自己强制使用 TLS 版本:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

但是,在 .NET Framework 4.7 下这不是必需的。 TLS 1.2 是默认设置。

另见this blog post from Docusign

【讨论】:

  • 抱歉,Matt,但是 2.1.10 版是什么?我正在为 DocuSign 使用 SOAP API。我有.NET 4.7。我可以在 web.config 以及项目属性中看到这一点。并且在注册表中也是默认版本。 IIS 10 绑定到 CLR 4。我也看过所有那些博客,他们不谈论它。至于报告错误,根据 DocuSign 的说法,这个变化是去年发生的,所以我认为他们现在应该已经修复了。
  • 抱歉,我误读了您的问题,并认为您使用的是他们的 C# 客户端。相应地编辑了我的帖子。您是否尝试手动设置 TLS12?在调用 API 之前,您可以在代码中的任何位置执行此操作,最好只在应用程序启动时执行一次。此外,微软在here 上提供了更多详细信息。
  • 添加了该行,但消息仍然相同。我必须在每次调用时添加还是仅在第一次实例化 APIClient 时添加?
  • 它只需要添加一次,但在 net47 上确实不需要 - 所以我想还有其他事情发生。抱歉,我不确定为什么。也许如果您可以帮助其他人重现您的问题中的问题,那可能会导致解决方案。
猜你喜欢
  • 2018-12-10
  • 1970-01-01
  • 2018-10-13
  • 2021-12-20
  • 1970-01-01
  • 2019-10-09
  • 2018-08-17
  • 2020-02-10
  • 1970-01-01
相关资源
最近更新 更多