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

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline kosteo-osa  
#1 Оставлено : 26 ноября 2014 г. 12:51:06(UTC)
kosteo-osa

Статус: Новичок

Группы: Участники
Зарегистрирован: 26.11.2014(UTC)
Сообщений: 5
Российская Федерация
Откуда: Пермь

Сказал(а) «Спасибо»: 1 раз
Здравствуйте,
Для шифрования используется самоподписанный сертификат c алгоритмом шифрования RSA.
На целевой машине установлен КриптоПРО CSP 3.6 и КриптоПРО.Net. При попытке получить закрытый ключ данного сертификата получаю следующую ошибку:
Цитата:
System.Security.Cryptography.CryptographicException: Набор ключей не существует at System.Security.Cryptography.Utils.CreateProvHandle(CspParameters parameters, Boolean randomKeyContainer) at System.Security.Cryptography.Utils.GetKeyPairHelper(CspAlgorithmType keyType, CspParameters parameters, Boolean randomKeyContainer, Int32 dwKeySize, SafeProvHandle& safeProvHandle, SafeKeyHandle& safeKeyHandle) at System.Security.Cryptography.RSACryptoServiceProvider.GetKeyPair() at System.Security.Cryptography.X509Certificates.X509Certificate2.get_PrivateKey() at CryptoPro.Sharpei.NetDetours.CPX509Certificate2.get_PrivateKey() at dk.nita.saml20.protocol.Saml20SignonHandler.TransferClient(IDPEndPoint idpEndpoint, Saml20AuthnRequest request, HttpContext context) at dk.nita.saml20.protocol.Saml20AbstractEndpointHandler.ProcessRequest(HttpContext context)


В чем может быть проблема и как ее решить?

P.S. На машине без КриптоПРО код выполняется без ошибок.
Offline Максим Коллегин  
#2 Оставлено : 26 ноября 2014 г. 14:55:35(UTC)
Максим Коллегин

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

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

Сказал «Спасибо»: 38 раз
Поблагодарили: 737 раз в 634 постах
Спасибо, посмотрим.
Знания в базе знаний, поддержка в центре поддержки
Offline Максим Коллегин  
#3 Оставлено : 26 ноября 2014 г. 16:40:55(UTC)
Максим Коллегин

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

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

Сказал «Спасибо»: 38 раз
Поблагодарили: 737 раз в 634 постах
А какой вызов в Saml20SignonHandler.TransferClient?
Знания в базе знаний, поддержка в центре поддержки
Offline Максим Коллегин  
#4 Оставлено : 26 ноября 2014 г. 16:46:58(UTC)
Максим Коллегин

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

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

Сказал «Спасибо»: 38 раз
Поблагодарили: 737 раз в 634 постах
А еще лучше бы помог пример, вопроизводящий проблему и сертификат с ключом в pfx.
Знания в базе знаний, поддержка в центре поддержки
Offline kosteo-osa  
#5 Оставлено : 26 ноября 2014 г. 17:25:23(UTC)
kosteo-osa

Статус: Новичок

Группы: Участники
Зарегистрирован: 26.11.2014(UTC)
Сообщений: 5
Российская Федерация
Откуда: Пермь

Сказал(а) «Спасибо»: 1 раз
На данный момент используется сконфигурированный для нашей системы демонстрационный пример из проекта по работе с SAML для .Net (http://digitaliser.dk/group/42063/resources).
Код можно взять здесь: esia
Файл metadata.xml нужно положить в папку c:\metadata\idp. Можно положить и в любую другую папку, но тогда в конфиге проекта Webdemo нужно изменить секцию <IDPEndPoints metadata="C:\metadata\idp">
Ключ в архиве - пароль test1234.

Отредактировано пользователем 27 ноября 2014 г. 9:54:37(UTC)  | Причина: Забыл написать про ключ.

Offline Максим Коллегин  
#6 Оставлено : 27 ноября 2014 г. 19:53:30(UTC)
Максим Коллегин

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

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

Сказал «Спасибо»: 38 раз
Поблагодарили: 737 раз в 634 постах
После авторизации на test esia перенаправляет на http://esia.web2edu.ru. Что-то нужно еще донастроить?
Знания в базе знаний, поддержка в центре поддержки
Offline Максим Коллегин  
#7 Оставлено : 27 ноября 2014 г. 20:03:50(UTC)
Максим Коллегин

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

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

Сказал «Спасибо»: 38 раз
Поблагодарили: 737 раз в 634 постах
Но проблемную строку я нашел:
Код:
var _certificate = FederationConfig.GetConfig().SigningCertificate.GetCertificate();
            var key = _certificate.PrivateKey;

У меня работает. Вопрос - как вы создавали сертификат? Или установили из pfx? Когда я импортирую pfx в Local Machine - код отрабатывает без ошибок.

Отредактировано пользователем 27 ноября 2014 г. 20:04:47(UTC)  | Причина: Не указана

Знания в базе знаний, поддержка в центре поддержки
Offline kosteo-osa  
#8 Оставлено : 28 ноября 2014 г. 6:48:31(UTC)
kosteo-osa

Статус: Новичок

Группы: Участники
Зарегистрирован: 26.11.2014(UTC)
Сообщений: 5
Российская Федерация
Откуда: Пермь

Сказал(а) «Спасибо»: 1 раз

  • После авторизации на esia-portal1.test.gosuslugi.ru отправляет на esia.web2edu.ru/login.ashx - так и должно быть. Это зашито в метаданных ЕСИА к нашей системе.
  • Создавал сертификат следующим образом: IIS Manager->Сертификаты сервера->Создать самозаверенный сертификат. Создавал на сервере где вертится esia.web2edu.ru. Попробовал поиспользовать - возникла ошибка. Экспортировал сертификат, установил его на своей машине - снова ошибка. Снес со своей машины КриптоПРО CSP и КриптоПРО.Net - все заработало. На сервере такое повторить невозможно, т.к. там используется сертификат ГОСТ.
Offline Максим Коллегин  
#9 Оставлено : 28 ноября 2014 г. 10:06:52(UTC)
Максим Коллегин

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

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

Сказал «Спасибо»: 38 раз
Поблагодарили: 737 раз в 634 постах
воспроизводится только если сайт в IIS хостится? какая ОС на сервере и Вашей машине?
Знания в базе знаний, поддержка в центре поддержки
Offline kosteo-osa  
#10 Оставлено : 28 ноября 2014 г. 11:06:06(UTC)
kosteo-osa

Статус: Новичок

Группы: Участники
Зарегистрирован: 26.11.2014(UTC)
Сообщений: 5
Российская Федерация
Откуда: Пермь

Сказал(а) «Спасибо»: 1 раз
Потестировал еще. Выяснил, что все хорошо только если проект хостится на IIS Express. Если проект хостится на локальном IIS, то падает с ошибкой.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
2 Страницы12>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.