Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.224.73.125] |
|
Сообщ.
#1
,
|
|
|
Мой web клиент работает с сертификатами. Допустим, у меня есть два сертификата на имена:
1. Иванов Иван Иванович 2. Klinton Bill Salomonovich Код для получения данных сертификата такой: <br>If Me.Request.ClientCertificate.IsPresent Then<br> Dim fio As String = Me.Request.ClientCertificate.Get("SubjectCN")<br> lastname.Value = fio.Split(" ", 3)(0)<br> firstname.Value = fio.Split(" ", 3)(1)<br> middlename.Value = fio.Split(" ", 3)(2)<br>End If<br> Данный кусок кода работает только со вторым сертификатом, а при использовании первого все поля остаются пустыми. В чем проблема? Где надо копать? |
Сообщ.
#2
,
|
|
|
Очень плохо, что никто не интересуется таким важным вопросом.
Пришлось решать всё локально! Спасибо сокамернику за помощь. Решается проблема следующим образом: <br>Imports System.Security.Cryptography.X509Certificates<br>...<br>Dim myX509 As X509Certificate = New X509Certificate( _<br> Me.Request.ClientCertificate.Certificate)<br>...<br>certificate.Value = myX509.GetName()<br> Данный кусок кода даст нам текстовые поля сертификата в виде одной строки. Её потом можно разбить на части и получить требуемые значения... |