На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> VB.NET:Сертификат безопасности с полями на русском
    Мой web клиент работает с сертификатами. Допустим, у меня есть два сертификата на имена:
    1. Иванов Иван Иванович
    2. Klinton Bill Salomonovich
    Код для получения данных сертификата такой:
    ExpandedWrap disabled
      <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>

    Данный кусок кода работает только со вторым сертификатом, а при использовании первого все поля остаются пустыми.
    В чем проблема? Где надо копать?
      Очень плохо, что никто не интересуется таким важным вопросом.
      Пришлось решать всё локально! Спасибо сокамернику за помощь.
      Решается проблема следующим образом:
      ExpandedWrap disabled
        <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>

      Данный кусок кода даст нам текстовые поля сертификата в виде одной строки.
      Её потом можно разбить на части и получить требуемые значения...
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0957 ]   [ 17 queries used ]   [ Generated: 25.04.24, 09:14 GMT ]