如何使用带有ssl的证书通过https://连接到Web服务

时间:2011-01-27 22:10:31

标签: c# ssl ssl-certificate

我是这方面的新手......如何使用ssl证书通过https://连接到webservice?需要遵循的必要步骤是什么?我已经有一个已经安装在远程服务器上的签名证书。

有什么想法吗?

我想在c#中这样做。我应该使用OpenSSL.NET吗?

亲切的问候,

Eric Karijo

1 个答案:

答案 0 :(得分:4)

如果您使用的是C#,则HttpWebRequest类具有clientCertificates集合属性。简而言之,您在发送请求之前将证书添加到此集合中。

你想要按照

的方式做一些流程
  • 在您的计算机密钥库中安装证书(或者您确实要存储/分发客户端证书
在C#中

  • 创建webrequest
  • 从密钥库加载证书
  • 将证书添加到clientCertificates 集合发送请求

所以(对不起,如果这不是100%):

// instanstiate request
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(requestUrl);

// access keystore, find your cert
X509Store keystore = new X509Store("My", StoreLocation.CurrentUser);
X509CertificateCollection certs = keystore.Certificates.Find(X509FindType.FindBySubjectName, "Name Of Cert", true);

// add cert to request object
req.ClientCertificates = certs;


// continue with preparing the request and submitting