rest - REST API URL 上的 TLS 版本
问题描述
我尝试通过 Docusign Support 开票,但他们以这种方式发送给我。我希望有人能够帮助解决这个问题。
从 11 月 16 日中部时间大约 12:30 开始,我们开始在非生产环境中的应用程序日志中出现错误。经调查,似乎https://demo.docusign.net/restapi开始使用以下内容响应 TLSv1 查询:
{
"errorCode": "TLS_INVALID_VERSION",
"message": "TLS Version is invalid, please update to TLS1.2 TLSv1.2 is
required. Currently using TLSv1"
}
考虑到 Docusign 几个月前就应该在他们的非生产环境中禁用 TLSv1,这让我们感到惊讶。那时,我们针对上述 URL 测试了我们的应用程序(在假定的切换之后),并且一切都与我们的应用程序一起工作,因此我们假设在应该切换时生产将继续工作。它确实做到了。
问题是,事实证明,Docusign 似乎没有禁用 TLSv1,而他们说他们应该这样做,这使我们之前所做的任何测试都无效。现在,我们面临着生产环境在未来某个未知时间点出现故障的风险。
那么,有谁知道 Docusign 何时会切换生产环境以禁用 TLSv1?我们正在研究更新应用程序中的库以使其至少支持 TLS 1.1 的选项,但这可能需要一些时间,这对我们来说是一个关键问题。
休
ps 在旁注中,该站点表示需要 TLS v1.2,但它仍然响应 TLS v1.1。
解决方案
在调用 REST API 之前添加此行
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; 它会正常工作。
推荐阅读
- mongodb - mongodb 是否利用缺少字段的索引?
- c# - 自定义类的工作方式类似于带有花括号的 using 语句
- javascript - 数组NodeJS / Cron上forEach的奇怪行为
- excel - 更新选择案例以从不同的列中提取状态并有条件地格式化
- c++ - 软件光栅化实现加速思路
- node.js - Node.js Sentry 错误捕获不起作用
- javascript - jQuery 更新事件和 DOM 事件不适用于弹出标签处理程序
- javascript - Promise.all 然后回调只执行一次
- java - 如何通过 POST 获取列表
- python - 尝试加入 2 个数据框,并将某些数据作为数组存储在一个单元格中