У меня проблема с установкой сертификата x509 в систему через vb.net.
Сама установка прошла успешно, но когда я устанавливаю ее с помощью кода, я получаю одну запись в окне «Управление сертификатами», как показано ниже:
Однако, когда я устанавливаю его вручную, используя функцию импорта в окне «Управление сертификатами», я получаю две записи в списке для этого сертификата:
Проблема, с которой я сталкиваюсь, заключается в том, что когда я использую этот сертификат для выполнения определенных задач (передача некоторой информации сторонней службе), он работает только тогда, когда он импортирован вручную (в списке сертификатов есть две записи). Похоже, что при установке сертификата через код он не устанавливается полностью. Я провел много исследований кода, используемого для установки сертификата, и он выглядит довольно прямолинейно:
With ofd
.Title = "Select Certificate"
.FileName = ""
.CheckFileExists = True
If .ShowDialog <> Windows.Forms.DialogResult.Cancel Then
Dim cert As New X509Certificate2(.FileName, "xxxxxxx", X509KeyStorageFlags.UserKeySet)
Dim certStore As New X509Store(StoreName.My, StoreLocation.CurrentUser)
certStore.Open(OpenFlags.ReadWrite)
certStore.Add(cert)
certStore.Close()
End If
End With
Я что-то упускаю?