Чтение данных из второго устройства чтения смарт-карт в веб-приложении - PullRequest
0 голосов
/ 05 декабря 2018

Хотя мой вопрос был больше года назад и так и не получил ответа, я думаю, что, возможно, нашел способ сделать это.Когда веб-приложение запущено и второй CAC вставлен в дополнительное устройство чтения на ПК, ActivClient считывает карту и помещает сертификат в хранилище.Я захожу в магазин и нахожу сертификат по имени человека:

enter code here

1 Ответ

0 голосов
/ 05 декабря 2018
[HttpPost]
    public ActionResult GetNewCardEdipi(string name)
    {
        //test multiple readers
        X509Store keystore = new X509Store(StoreName.My, StoreLocation.CurrentUser);
        keystore.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);
        var clientCert = keystore.Certificates;
        var certs = keystore.Certificates.Find(X509FindType.FindBySubjectName, name, false);
        var cuser = certs[0];
        var sub = cuser.Subject;
        string[] strs = sub.Split(',');

        string edi = strs[0].Substring(strs[0].LastIndexOf(".") + 1);
        //end
        return Json(edi);
    }

Это прекрасно работает.

...