c# - 有没有办法使用服务器不支持的密码套件进行连接?
问题描述
我有一个在 Windows 2012 R2 服务器上运行的 C# 应用程序,它需要向合作伙伴发布请求。它在 WebRequest.GetRequestStream() 失败,请求被中止:无法创建 SSL/TLS 安全通道。我可以通过 Postman 在同一台服务器上获得结果。我最好的猜测是,原因是密码套件不匹配。
从https://www.ssllabs.com/,唯一支持的密码套件是:
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f) ECDH secp256r1 (eq. 3072 bits RSA) FS 128 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030) ECDH secp256r1 (eq. 3072 bits RSA) FS 256
这两个在 2012 R2 中不可用。 https://docs.microsoft.com/en-us/windows/win32/secauthn/tls-cipher-suites-in-windows-8-1
我看到了有关如何限制服务器上的密码套件的说明,但没有添加它们。
有没有办法从程序中添加新的密码套件?
解决方案
请在服务器上尝试此更新:https: //support.microsoft.com/en-us/topic/update-adds-new-tls-cipher-suites-and-changes-cipher-suite-priorities-in-windows- 8-1-and-windows-server-2012-r2-8e395e43-c8ef-27d8-b60c-0fc57d526d94 - 虽然我自己无法尝试,但它看起来很有希望。添加的套件列在本文中间。
推荐阅读
- c - 在 atmega328p 上执行 LED 闪烁的某些任务
- android - Wear OS、Watch 无法下载 tts 的 zvoice 包
- android - 自定义 Android SwitchCompat
- c++ - 如何在模板类中使用结构作为成员
- r - 如果特定列在 r 中有值,如何删除重复项
- python - 使用 pip 从 pypi 安装软件包时,有没有办法排除特定版本?
- html - 画布圈改变顶部位置
- asp.net-core - 在net core web api中获取邮递员发送的二进制文件数据?
- angular - 单元测试延迟加载组件
- angular - 我有 Angular 8 上的应用程序它非常大的应用程序我可以在 Angular 10 上升级我的应用程序吗