gpt4 book ai didi

c# - 在 azure 上使用 pkcs#12 调用服务

转载 作者:太空宇宙 更新时间:2023-11-03 13:41:36 24 4
gpt4 key购买 nike

我收到了 P12 证书,需要使用该证书从 Azure 辅助角色调用 Web 服务。我上传了证书,将其转换为 pem 文件并以编程方式添加,但我总是在 GetRequest 上遇到异常:

The request was aborted: Could not create SSL/TLS secure channel.

我知道 p12 还包含一个私钥,所以这可能是问题所在......

String strPem = "***valid PEM in BAS64***";
Uri uriGateway = new Uri("https://xxxx");
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uriGateway);
byte[] baPem = Convert.FromBase64String(strPem);
ServicePointManager.Expect100Continue = true;
ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(AcceptAllCertifications);
X509Certificate2 cert = new X509Certificate2(baPem);
request.Method = "GET";
request.ClientCertificates.Add(cert);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();

最佳答案

我找到了解决方案。

创建 x509Certificate 并使用 Import 方法导入 p12 证书文件。

var certificateFileName = Server.MapPath("~/Cert/cert.pfx");
X509Certificate2 cert = new X509Certificate2();
cert.Import(certificateFileName,"pw",X509KeyStorageFlags.PersistKeySet);

现在它可以工作了......

关于c# - 在 azure 上使用 pkcs#12 调用服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19633628/

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