gpt4 book ai didi

c# - 实现 Swish 支付 C# - 仅在 Azure 上 - 发送客户端证书 - 请求被中止 : Could not create SSL/TLS secure channel

转载 作者:太空宇宙 更新时间:2023-11-03 15:04:46 25 4
gpt4 key购买 nike

在写这个问题之前,我已经经历了很多问题和答案,但我似乎无法找到解决方案。我想要做的是将应用程序托管为 Azure 应用服务,需要调用 Swish API。

请查看此线程以了解我的实现如何在本地正常运行:

C# HttpClient with X509Certificate2 - WebException: The request was aborted: Could not create SSL/TLS secure channel

来自 Azure 的系统诊断日志:

https://pastebin.com/EBFb3zrA

我已经尝试过 Microsoft 论坛和 SO 的解决方案,但似乎没有一个能解决问题:

https://social.msdn.microsoft.com/Forums/azure/en-US/ca6372be-3169-4fb5-870f-bfbea605faf6/azure-webapp-webjob-exception-could-not-create-ssltls-secure-channel?forum=windowsazurewebsitespreview

//Tested both, none of them work
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12
//ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11

由于很多问题都是基于访问外部服务而不是发送客户端证书,因此复杂性也有所增加。

我所做的是在 Azure 上的 SSL 证书 选项卡中导入测试证书。由于 .p12.pfx 都是 PKCS #12 文件,我只是重命名了 .p12 文件。该应用程序作为 B1 Basic 应用服务计划运行,因此大多数功能都应该存在。

https://stackoverflow.com/a/6821061/3850405

我也试过本指南将证书添加到 Azure -> 应用程序设置 -> 应用程序设置中的证书存储:

https://azure.microsoft.com/en-us/blog/using-certificates-in-azure-websites-applications/

当这不起作用时,我尝试将 WEBSITE_LOAD_CERTIFICATES 添加到我的应用程序中的 appSettings,但它导致了 HTTP 503。

Swish证书和英文导游:

https://www.getswish.se/content/uploads/2015/06/Guide-Testverktyg_20151210.zip

最佳答案

我们能够在 Azure Web 应用程序中完成这项工作。诀窍是 appSetting WEBSITE_LOAD_CERTIFICATES 并在 Azure 门户中上传所有 Swish 证书。也就是说,来自 Swish 的 .pfx 文件包含三个证书,其中两个是根证书。所以我们导出根证书并在 TLS/SSL 设置 -> 公钥证书 (.cer) 下上传 .cer 文件,然后它开始工作。您还需要将它们上传到所有部署槽,因为证书不会自动复制到槽。

关于c# - 实现 Swish 支付 C# - 仅在 Azure 上 - 发送客户端证书 - 请求被中止 : Could not create SSL/TLS secure channel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44243148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com