У меня возникла проблема при установке сертификата x509 в системе через vb.net. Сам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
Я что-то упустил?
Каков тип/расширение файла сертификата? это может быть .cer или .pfx? Используете ли вы тот же файл, когда вы проводили сравнение между его установкой вручную и кодом? –
Кстати, второй сертификат, похоже, является сертификатом эмитента. Скорее всего, вы захотите установить его в папку доверенных корневых центров сертификации вместо папки «Личные» (предполагая, что вы доверяете эмитенту этого сертификата). –
Расширение файла сертификата - .p12. Да, я использую тот же файл для обеих установок. –