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

Уведомление

Icon
Error

3 Страницы<123
Опции
К последнему сообщению К первому непрочитанному
Offline cybermerlin  
#21 Оставлено : 21 января 2011 г. 19:38:56(UTC)
cybermerlin

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

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

Сказал(а) «Спасибо»: 2 раз
Поблагодарили: 3 раз в 3 постах
давно уже написали бы сами себе клиента
если на c# писать, то необходимо будет только добавить
_soapGnivcClass.ClientCredentials.ClientCertificate.SetCertificate( subjectName, StoreLocation.CurrentUser, StoreName.My );
для двухфакторной аутентификации Boo hoo!


ps
а даже не пожалею и второй строки, для лучшего впитывания
private IRUCAutoRegServiceInterfaceClient _iruc;

_iruc = new RUCAutoRegServiceInterfaceClient( "IRUCAutoRegServiceInterfacePort" );
_iruc.ClientCredentials.ClientCertificate.SetCertificate( subjectName, StoreLocation.CurrentUser, StoreName.My)

Отредактировано пользователем 21 января 2011 г. 19:41:56(UTC)  | Причина: Не указана

Offline artsb  
#22 Оставлено : 21 января 2011 г. 21:54:06(UTC)
artsb

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

Группы: Участники
Зарегистрирован: 06.05.2010(UTC)
Сообщений: 103
Откуда: центр Вселенной

Сказал(а) «Спасибо»: 2 раз
Поблагодарили: 1 раз в 1 постах
cybermerlin написал:
давно уже написали бы сами себе клиента

cybermerlin, спасибо за совет ;)
Я как раз так и сделал :) Просто ещё не успел отписаться.
Кстати, сначала, я написал тестовое приложение на C#. Оно заработало. Но чтобы не переписывать всё, что у меня уже сделано, просто написал узконаправленного SOAP-клиента. Только вот сегодня закончил. Первые тесты показали, что вроде бы работает :)

А в MS SOAP Toolkit видать кривой WSDLReader, так как я при тестах своего клиента, получал такие же ошибки. А возникали они у меня, когда не правильно составлял запрос. В частности, добавил пространство имён к имени тега, а оказалось, что не нужно было.

В общем, если что - я напишу :)
Всем спасибо!
Offline Zokeez  
#23 Оставлено : 31 января 2011 г. 18:12:50(UTC)
Zokeez

Статус: Участник

Группы: Участники
Зарегистрирован: 06.07.2010(UTC)
Сообщений: 13
Откуда: Chelyabinsk

Поблагодарили: 1 раз в 1 постах
artsb, когда вы писали клиента на С# не сталкивались с проблемой работы с отечественными сертификатами? Наткнулся тут на ошибку при вызове soap метода: "System.Net.WebException: Базовое соединение закрыто: Непредвиденная ошибка при приеме. ---> System.NotSupportedException: Алгоритм ключа сертификата не поддерживается", есть мнение что дело в сертификате, алгоритм подписи у него ГОСТ Р 34.10/34.11-2001, а .Net как я понял нормально работает для RSA сертификатов. А какая подпись в вашем клиентском сертификате?
Offline Максим Коллегин  
#24 Оставлено : 31 января 2011 г. 18:32:14(UTC)
Максим Коллегин

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

Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,408
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 37 раз
Поблагодарили: 722 раз в 626 постах
Знания в базе знаний, поддержка в центре поддержки
Offline artsb  
#25 Оставлено : 31 января 2011 г. 22:31:59(UTC)
artsb

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

Группы: Участники
Зарегистрирован: 06.05.2010(UTC)
Сообщений: 103
Откуда: центр Вселенной

Сказал(а) «Спасибо»: 2 раз
Поблагодарили: 1 раз в 1 постах
Zokeez написал:
artsb, когда вы писали клиента на С# не сталкивались с проблемой работы с отечественными сертификатами? Наткнулся тут на ошибку при вызове soap метода: "System.Net.WebException: Базовое соединение закрыто: Непредвиденная ошибка при приеме. ---> System.NotSupportedException: Алгоритм ключа сертификата не поддерживается", есть мнение что дело в сертификате, алгоритм подписи у него ГОСТ Р 34.10/34.11-2001, а .Net как я понял нормально работает для RSA сертификатов. А какая подпись в вашем клиентском сертификате?

У меня тоже "отечественный" сертификат. Я получил точно такую же ошибку в первый раз. Судя по всему, не удаётся получить закрытый ключ. Чтобы её обойти, нужно создать объект хранилища и в нём через поиск найти нужный сертификат. В этом случае, всё проходит как по маслу :)
Если не разберётесь, я завтра на работе выдеру кусочек из исходников.
Offline Zokeez  
#26 Оставлено : 1 февраля 2011 г. 11:40:30(UTC)
Zokeez

Статус: Участник

Группы: Участники
Зарегистрирован: 06.07.2010(UTC)
Сообщений: 13
Откуда: Chelyabinsk

Поблагодарили: 1 раз в 1 постах
artsb, спасибо, действительно работает :).

Про Sharpei тоже читал, но надеялся обойтись без дополнительного ПО.
Offline artsb  
#27 Оставлено : 1 февраля 2011 г. 12:07:41(UTC)
artsb

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

Группы: Участники
Зарегистрирован: 06.05.2010(UTC)
Сообщений: 103
Откуда: центр Вселенной

Сказал(а) «Спасибо»: 2 раз
Поблагодарили: 1 раз в 1 постах
Вот код:
Код:
X509Certificate2 cClientCertificate;
X509Store store = new X509Store("My", StoreLocation.CurrentUser);
 X509Certificate2Collection certCollection;

store.Open(OpenFlags.OpenExistingOnly);
// sCerificateName - имя сертификата. Значение параметра CN сертификата
certCollection = store.Certificates.Find(X509FindType.FindBySubjectName, sCerificateName, false);
cClientCertificate = certCollection[0];


Извиняйте за кривость. С C# работал впервые. Но тут главное идея :)
Offline artsb  
#28 Оставлено : 1 февраля 2011 г. 12:08:39(UTC)
artsb

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

Группы: Участники
Зарегистрирован: 06.05.2010(UTC)
Сообщений: 103
Откуда: центр Вселенной

Сказал(а) «Спасибо»: 2 раз
Поблагодарили: 1 раз в 1 постах
Zokeez написал:
artsb, спасибо, действительно работает :).

Про Sharpei тоже читал, но надеялся обойтись без дополнительного ПО.

О. Вы уже ответили :)
Offline Zokeez  
#29 Оставлено : 1 февраля 2011 г. 12:25:04(UTC)
Zokeez

Статус: Участник

Группы: Участники
Зарегистрирован: 06.07.2010(UTC)
Сообщений: 13
Откуда: Chelyabinsk

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