Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум на Исходниках.RU > .NET: Web приложения > VB.NET:Сертификат безопасности с полями на русском |
Автор: Radius 24.09.03, 08:30 |
Мой web клиент работает с сертификатами. Допустим, у меня есть два сертификата на имена: 1. Иванов Иван Иванович 2. Klinton Bill Salomonovich Код для получения данных сертификата такой: <{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}> <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> Данный кусок кода работает только со вторым сертификатом, а при использовании первого все поля остаются пустыми. В чем проблема? Где надо копать? |
Автор: Radius 26.09.03, 07:18 |
Очень плохо, что никто не интересуется таким важным вопросом. Пришлось решать всё локально! Спасибо сокамернику за помощь. Решается проблема следующим образом: <{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}> <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> Данный кусок кода даст нам текстовые поля сертификата в виде одной строки. Её потом можно разбить на части и получить требуемые значения... |