Я потребляю некоторые услуги, и поставщик услуг, выдавший сертификат, выдал сертификат.
Итак, я установил сертификат на LocalMachine , и с помощью следующего кода я прикрепляю сертификат к веб-запросу, который я отправляю, чтобы получить ответ от веб-службы.
X509Certificate cert = null;
string ResponseXml = string.Empty;
// Represents an X.509 store, which is a physical store
// where certificates are persisted and managed
X509Store certStore = new X509Store(StoreName.My, StoreLocation.LocalMachine);
certStore.Open(OpenFlags.ReadOnly);
X509Certificate2Collection results =
certStore.Certificates.Find(X509FindType.FindBySubjectDistinguishedName,
Constants.CertificateName, false);
certStore.Close();
if (results != null && results.Count > 0)
cert = results[0];
else
{
ErrorMessage = "Certificate not found";
return ErrorMessage;
}
webClient.TransportSettings.ClientCertificates.Add(cert);
Это прекрасно работает, когда я запускаю код с ASP.net Cassini (сервер разработки ASP.NET).
Но когда я размещаю этот код в IIS 7.0 , он выдает запрещено 403 Ошибка в качестве ответа.
Пожалуйста, предложите.