Ключевое слово в защите информации
ключевое слово
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход. Новые регистрации запрещены.

Уведомление

Icon
Error

5 Страницы123>»
Опции
К последнему сообщению К первому непрочитанному
Offline Volk358  
#1 Оставлено : 5 марта 2012 г. 14:19:17(UTC)
Volk358

Статус: Активный участник

Группы: Участники
Зарегистрирован: 24.12.2011(UTC)
Сообщений: 65

Сказал(а) «Спасибо»: 3 раз
Всем привет!
Исходя из документации CAPICOM мы имеем следующую картину:
1. Объект CAPICOM.Store реализует интерфейс Store
2. Одно из свойств объекта CAPICOM.Store это объект CAPICOM.Store.Certificates
3. Объект CAPICOM.Store.Certificates реализует интерфейс Certificates
4. У объекта Certificates есть метод Item который возвращает объект Certificate реализующий интерфейс Certificate
5. Объект Certificate имеет свойство PrivateKey, в котором находиться объект PrivateKey который реализует интерфейс...

...в общем неважно что он там реализует, потому что объекта PrivateKey нет в свойстве объекта Certificate, которое, как заверяет документация, реализует интерфейс который обладает таким свойством!

Я чего то не понимаю?

Проблемы нет только в IE. Где искать это свойство?
ЗЫ: Вообще задача стоит такая: проверить наличие флешки в пк, но именно той, сертификат которой был выбран на сайте. Может есть другой способ это проверить?
Offline Андрей Писарев  
#2 Оставлено : 5 марта 2012 г. 14:29:25(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
Volk358 написал:
Всем привет!
Исходя из документации CAPICOM мы имеем следующую картину:
1. Объект CAPICOM.Store реализует интерфейс Store
2. Одно из свойств объекта CAPICOM.Store это объект CAPICOM.Store.Certificates
3. Объект CAPICOM.Store.Certificates реализует интерфейс Certificates
4. У объекта Certificates есть метод Item который возвращает объект Certificate реализующий интерфейс Certificate
5. Объект Certificate имеет свойство PrivateKey, в котором находиться объект PrivateKey который реализует интерфейс...

...в общем неважно что он там реализует, потому что объекта PrivateKey нет в свойстве объекта Certificate, которое, как заверяет документация, реализует интерфейс который обладает таким свойством!

Я чего то не понимаю?

Проблемы нет только в IE. Где искать это свойство?
ЗЫ: Вообще задача стоит такая: проверить наличие флешки в пк, но именно той, сертификат которой был выбран на сайте. Может есть другой способ это проверить?



в интерфейсе ICertificate2 - есть PrivateKey


Техническую поддержку оказываем тут
Наша база знаний
Offline Volk358  
#3 Оставлено : 5 марта 2012 г. 14:33:12(UTC)
Volk358

Статус: Активный участник

Группы: Участники
Зарегистрирован: 24.12.2011(UTC)
Сообщений: 65

Сказал(а) «Спасибо»: 3 раз
Ссылочку, будьте добры! :)
Offline Андрей Писарев  
#4 Оставлено : 5 марта 2012 г. 14:38:10(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
Volk358 написал:
Ссылочку, будьте добры! :)


Пардон, на что? на PrivateKey Anxious

http://msdn.microsoft.co...p/aa387352(v=vs.85).aspx

там же есть и Property :)
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#5 Оставлено : 5 марта 2012 г. 14:46:14(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
Цитата:
...в общем неважно что он там реализует, потому что объекта PrivateKey нет в свойстве объекта Certificate, которое, как заверяет документация, реализует интерфейс который обладает таким свойством!


кстати, как это удалось проверить? Anxious
где пример?

или PrivateKey - не возвращается? :) ... а привязка то есть сертификата к нему? (или я не о том.. "с утра в понедельник")...


Отредактировано пользователем 5 марта 2012 г. 14:47:36(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#6 Оставлено : 5 марта 2012 г. 14:48:25(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
Цитата:
Проблемы нет только в IE

... огласите весь список ... где нашлась проблема :)

Или есть попытка использовать Capicom не в IE, а другом браузере ?

Отредактировано пользователем 5 марта 2012 г. 14:49:47(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Volk358  
#7 Оставлено : 5 марта 2012 г. 14:51:23(UTC)
Volk358

Статус: Активный участник

Группы: Участники
Зарегистрирован: 24.12.2011(UTC)
Сообщений: 65

Сказал(а) «Спасибо»: 3 раз
Какой объект реализует "ICertificate2"?
просто я работаю с сертификатами так:
Создаю объект CAPICOM.Store, затем открываю CAPICOM.Store.Open..., выбираю сертификат и пытаюсь получить это свойство CAPICOM.Store.Certificates.Item(1).PrivateKey. (Это вкратце)
Как докопаться до это объекта - PrivateKey? В каком объекте сертификата есть свойство PrivateKey?
Вы сказали что оно есть в объекте реализующем интерфейс ICertificate2. А как найти этот объект (реализующий интерфейс ICertificate2)?
Offline Андрей Писарев  
#8 Оставлено : 5 марта 2012 г. 14:53:31(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
Volk358 написал:
Какой объект реализует "ICertificate2"?
просто я работаю с сертификатами так:
Создаю объект CAPICOM.Store, затем открываю CAPICOM.Store.Open..., выбираю сертификат и пытаюсь получить это свойство CAPICOM.Store.Certificates.Item(1).PrivateKey. (Это вкратце)
Как докопаться до это объекта - PrivateKey? В каком объекте сертификата есть свойство PrivateKey?
Вы сказали что оно есть в объекте реализующем интерфейс ICertificate2. А как найти этот объект (реализующий интерфейс ICertificate2)?


так.. а в SDK что... нет упоминаний про privatekey ? и нет примеров? (того же.. удаления закрытого ключа) :)
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#9 Оставлено : 5 марта 2012 г. 14:54:35(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
vbs Из SDK
Код:

If Certificate.HasPrivateKey Then
      Wscript.Stdout.Writeline "Private Key:"
      Wscript.Stdout.Writeline "  Container name   = " & Certificate.PrivateKey.ContainerName
      ' Don't display unique container name for hardware token because it may cause UI to be displayed.
      If StoreLocation = CAPICOM_SMART_CARD_USER_STORE OR Not Certificate.PrivateKey.IsHardwareDevice Then
         Wscript.Stdout.Writeline "  Unique name      = " & Certificate.PrivateKey.UniqueContainerName
      End If
      Wscript.Stdout.Writeline "  Provider name    = " & Certificate.PrivateKey.ProviderName
      Wscript.StdOut.Write     "  Provider type    = " 
      If Certificate.PrivateKey.ProviderType > UBound(ProviderTypes) Then
         Wscript.Stdout.Writeline ProviderTypes(0) & " (" & CStr(Certificate.PrivateKey.ProviderType) & ")"
      Else
         Wscript.Stdout.Writeline ProviderTypes(Certificate.PrivateKey.ProviderType) & " (" & CStr(Certificate.PrivateKey.ProviderType) & ")"
      End If
      Wscript.StdOut.Write     "  Key spec         = " 
      If Certificate.PrivateKey.KeySpec > UBound(KeySpecStrings) Then
         Wscript.Stdout.Writeline KeySpecStrings(0) & " (" & CStr(Certificate.PrivateKey.KeySpec) & ")"
      Else
         Wscript.Stdout.Writeline KeySpecStrings(Certificate.PrivateKey.KeySpec) & " (" & CStr(Certificate.PrivateKey.KeySpec) & ")"
      End If
      Wscript.Stdout.Writeline "  Accessible       = " & Certificate.PrivateKey.IsAccessible
      Wscript.Stdout.Writeline "  Protected        = " & Certificate.PrivateKey.IsProtected
      Wscript.Stdout.Writeline "  Exportable       = " & Certificate.PrivateKey.IsExportable
      Wscript.Stdout.Writeline "  Removable        = " & Certificate.PrivateKey.IsRemovable
      Wscript.Stdout.Writeline "  Machine keyset   = " & Certificate.PrivateKey.IsMachineKeyset
      Wscript.Stdout.Writeline "  Hardware storage = " & Certificate.PrivateKey.IsHardwareDevice
   Else
      Wscript.Stdout.Writeline "Private Key: Not found."
   End If
   Wscript.Stdout.Writeline
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#10 Оставлено : 5 марта 2012 г. 14:59:46(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
Код:
==== client-side ==== 
<input id="clientCert" name="clientCert" type="hidden" /> 
<script type="text/javascript"> 

  CurrentUserStore = new ActiveXObject('CAPICOM.Store'); 
                 
  CurrentUserStore.Open(CAPICOM_CURRENT_USER_STORE); 

  certs = CurrentUserStore.Certificates.Select(); 
  cert = certs.Item(1); 
  privateKey = certs.Item(1).PrivateKey;  // 

  document.getElementById("clientCert").value = cert.Export();          
</script> 


типа этого и не работает?
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
5 Страницы123>»
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.