Как получить X509Certificate из клиентского запроса

У меня есть веб-сервис, который я защитил с помощью сертификатов. Теперь я хочу идентифицировать клиента, глядя на отпечаток сертификата. Это означает, что у меня есть где-то в моей службе список отпечатков пальцев, которые связаны с каким-то пользователем.

На самом деле, мой первый вопрос (немного не по теме): хороший ли это подход или мне все же следует ввести некоторую конструкцию пароля для имени пользователя?

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

Я много читал об этом (например, этот пост: Как мне получить сертификат X509Certificate, отправленный от клиента в веб-службе? ), но не смог найти ответа.

У меня нет HTTPContext, так что это не вариант. В упомянутом выше сообщении говорится о Context.Request.ClientCertificate.Certificate , но я думаю, они также имеют в виду HTTPContext . Также нельзя добавить в web.config.

15
задан Community 23 May 2017 в 10:32
поделиться