У меня есть приложение .NET, которое я хочу использовать в качестве клиента для вызова веб-службы SSL SOAP. Я получил сертификат действительного клиента под названием foo.pfx
. В самом сертификате есть пароль.
Я нашел сертификат в следующем месте: C:\certs\foo.pfx
Чтобы вызвать веб-службу, мне нужно прикрепить клиентский сертификат. Здесь код:
public X509Certificate GetCertificateFromDisk(){
try{
string certPath = ConfigurationManager.AppSettings["MyCertPath"].ToString();
//this evaluates to "c:\\certs\\foo.pfx". So far so good.
X509Certificate myCert = X509Certificate.CreateFromCertFile(certPath);
// exception is raised here! "The specified network password is not correct"
return cert;
}
catch (Exception ex){
throw;
}
}
Похоже, что исключение распространяется на приложение .NET, пытающееся прочитать диск. Метод CreateFromCertFile
является статическим методом, который должен создать новый экземпляр X509Certificate. Метод не переопределяется и имеет только один аргумент: путь.
Когда я проверяю Исключение, я нахожу это:
_COMPlusExceptionCode = -532459699
Source=mscorlib
Вопрос: кто-нибудь знает, в чем причина исключения? Указанный сетевой пароль неверен?