Требовать от пользователя ввести пароль для X509Certificate2UI.SelectFromCollection () выбранный CA C Сертификат - PullRequest
0 голосов
/ 17 апреля 2020

В приложении ASP.NET C# я хочу, чтобы пользователь выбрал сертификат CA C , а затем введите пароль для сертификата .

В настоящее время я использую следующий код, чтобы позволить пользователю выбрать сертификат:

var store = new X509Store(StoreName.MY, StoreLocation.CurrentUser);
store.open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);
var certificates = X509Certificate2UI.SelectFromCollection(store.Certificates, "Digital Certificates", "Select a certificate from the following list:", X509SelectionFlag.SingleSelection);

Затем я хочу, чтобы пользователь должен был ввести пароль для выбранного сертификата. Как я могу это сделать?

1 Ответ

0 голосов
/ 17 апреля 2020

Вы не можете этого сделать. И код, который вы опубликовали, не является правильным способом выбора сертификата.

Код запускается на веб-сервере, и:

  • в диалоговом окне будут отображаться сертификаты, установленные на веб-сервере, а не на клиенте
  • пользователь никогда не увидит это диалоговое окно, так как оно вызывается на сервере, и на консоли сервера нет никого, кто мог бы выбрать сертификат или закрыть диалоговое окно; после открытия оно будет оставаться открытым до тех пор, пока вы не перезапустите Интернет. application.

этот код будет работать при локальной отладке кода / приложения, но после развертывания он не будет работать так, как вы можете себе представить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...