Статус: Активный участник
Группы: Участники
Зарегистрирован: 19.01.2015(UTC) Сообщений: 67
Сказал(а) «Спасибо»: 5 раз Поблагодарили: 2 раз в 2 постах
|
UPD. Прошу прощения. Проблему решил - по найденной же на форуме ссылке (указал ее ниже). Но из-за не внимательности взял данные из Фидлера не из того поля. Здравствуйте. Помогите опознать ошибку пожалуйста. Связываюсь со СМЭВ через Wcf. Использую Ваш пример, входящий в КриптоПро (спасибо !!!). Использую сертификат, выданный УЦ рекомендованный для работы со СМЭВ Код:Проверка завершена успешно ошибок не обнаружено
проверка целостности контейнера успешно
Ключ обмена доступен
экспорт открытого ключа успешно
импорт открытого ключа успешно
подпись успешно
проверка успешно
создание ключа обмена успешно
экспорт ключа разрешен
алгоритм GOST R 34.10-2001 DH
GOST R 34.10-2001, default exchange parameters
GOST R 34.11-94, default parameters
сертификат в контейнере соответствует закрытому ключу
сертификат в хранилище My
Ключ подписи отсутствует
загрузка ключей успешно
Связываюсь с сервисом http://smev-mvf.test.gosuslugi.ru:7777/gateway/services/SID0003029/1.00 В примере ничего не менял - кроме адреса сервиса, и изменил отпечатки сертификатов на свои ( Примечание ! Я задал один и тот же отпечаток в серверный отвечаток и в клиентский...) Проблемка: Отправка сообщения прошла отлично ! Ответ пришел отличный (смотрю в фидлере) ! Но вылетело исключение в программе: Код:System.ServiceModel.Security.MessageSecurityException' occurred in mscorlib.dll
Additional information: Входящее сообщение было подписано токеном, отличающимся от токена, использованного для шифрования тела сообщения. Ожидалось, что токены будут одинаковы.
Hresult: -2146233087
Server stack trace:
в System.ServiceModel.Security.TokenTracker.RecordToken(SecurityToken token)
в System.ServiceModel.Security.ReceiveSecurityHeader.ReadToken(XmlDictionaryReader reader, Int32 position, Byte[] decryptedBuffer, SecurityToken encryptionToken, String idInEncryptedForm, TimeSpan timeout)
в System.ServiceModel.Security.ReceiveSecurityHeader.ExecuteReadingPass(XmlDictionaryReader reader)
в System.ServiceModel.Security.LaxModeSecurityHeaderElementInferenceEngine.ExecuteProcessingPasses(ReceiveSecurityHeader securityHeader, XmlDictionaryReader reader)
Через гугл нашел эту тему на форуме: http://www.cryptopro.ru/...sts&t=6457#post40487В самом низу имеется решение (сохранить из base64 в файл cer и проимпортировать). Вот только беда в том, что полученный, таким образом, сертификат - он и равен тому, что у меня и был использован ! Подскажите пожалуйста... Отредактировано пользователем 22 января 2015 г. 17:43:47(UTC)
| Причина: Не указана
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 19.01.2015(UTC) Сообщений: 67
Сказал(а) «Спасибо»: 5 раз Поблагодарили: 2 раз в 2 постах
|
Вообще. Смущает, что в итоге оба сертификата в программе идентичны... как такое может быть ? Должно быть 2 сертификата. Но у меня на руках всего лишь один !
С другой стороны - подписанное сообщение проходит через СМЭВ, и приходит корректный ответ !
PS. У меня есть смутное сомнение.... Может мне выдали не тот токен ? Неужели в министерстве сами не знают, что нужно выдавать ?
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close