【问题标题】:Error while invoking Aws C# SDK through tls 1.2通过 tls 1.2 调用 Aws C# SDK 时出错
【发布时间】:2016-01-29 16:55:10
【问题描述】:

Paypal 很快就会强制要求在联系他们的 API 时使用 TLS 1.2。此行为已在他们的沙盒上强制执行。

我们只是被一个副作用困住了,即在调用 Paypal API 之后,对 AWS SDK 的任何后续调用都失败了。

有人遇到同样的问题并找到了解决方法吗?

【问题讨论】:

标签: c# amazon-web-services payment-gateway paypal-sandbox tls1.2


【解决方案1】:

正如this discussion on the AWS developer forums 所指出的,在此发布时,AWS 开发工具包不支持 TLS 1.2。因此,您将无法在您的应用程序中专门迁移到 TLS 1.2,直到他们也实现对它的支持。

存在一种解决方法,您可以手动设置应用程序的通信协议。在下面的示例中,ServicePointManager.SecurityProtocol 已更新以在应用程序中启用对 TLS 1.0、TLS 1.1 和/或 TLS 1.2 的支持:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;

此更改应允许您使用 TLS 1.2 与 PayPal 进行通信,同时根据需要回退到旧版本以与 AWS SDK 进行通信。

注意事项:

  • 手动设置此设置会使您有责任定期查看此设置并最终删除对旧 TLS 版本的支持,因为它们变得不必要和/或存在安全风险。这是将符合 PCI 的 API 迁移到 TLS 1.2 的动机。密切关注适用于 .NET 的 AWS 开发工具包的更新,以便您能够尽快放弃旧的 TLS 支持。
  • Tls11Tls12 仅在 .NET 4.5+ 版本的 SecurityProtocolType 枚举中可用。

进一步阅读:

【讨论】:

    猜你喜欢
    • 2015-02-10
    • 1970-01-01
    • 2015-10-13
    • 2019-03-13
    • 1970-01-01
    • 2017-11-04
    • 1970-01-01
    • 2023-04-06
    • 2017-01-09
    相关资源
    最近更新 更多