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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Higen  
#1 Оставлено : 1 марта 2018 г. 12:06:14(UTC)
Higen

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

Группы: Участники
Зарегистрирован: 01.03.2018(UTC)
Сообщений: 8
Российская Федерация

Здравствуйте!
Появилась проблема на виртуальной машине, на которой работает сервис по обмену информацией с другим сервисом. При этом подписываются XML запросы.
Все работает нормально примерно сутки, потом при попытке скрипта получить сертификат из контейнера выводится сообщение "Вставьте ключевой носитель", хотя до этого все работало хорошо и ключевой носитель был доступен. В этот момент, если открыть криптопро и посмотреть какие есть доступные сертификаты, то увидим, что ни одного сертификата действительно нет. Отключаем скрипт (который ждет пока вставят ключевой носитель) и криптопро опять видит все подписи, перезапускаем скрипт и он тоже все уже видит и работает в штатном режиме.
Ключевой носитель вставлен в сервер. Версия крипто про 3.67777
С чем может быть связана проблема?
Вот часть кода, где получаю сертификат по номеру sCSPSerial.

Dim store As New Security.Cryptography.X509Certificates.X509Store(Security.Cryptography.X509Certificates.StoreName.My, Security.Cryptography.X509Certificates.StoreLocation.LocalMachine)
store.Open(Security.Cryptography.X509Certificates.OpenFlags.OpenExistingOnly Or Security.Cryptography.X509Certificates.OpenFlags.ReadOnly)

Dim storeU As New Security.Cryptography.X509Certificates.X509Store(Security.Cryptography.X509Certificates.StoreName.My, Security.Cryptography.X509Certificates.StoreLocation.CurrentUser)
storeU.Open(Security.Cryptography.X509Certificates.OpenFlags.OpenExistingOnly Or Security.Cryptography.X509Certificates.OpenFlags.ReadOnly)

Dim certCollValidL As Security.Cryptography.X509Certificates.X509Certificate2Collection = store.Certificates
Dim certCollValidU As Security.Cryptography.X509Certificates.X509Certificate2Collection = storeU.Certificates
Dim certCollValid As New Security.Cryptography.X509Certificates.X509Certificate2Collection(certCollValidU)

For Each pCerU As X509Certificate2 In certCollValidL
Dim bFoundCer As Boolean = False
For Each pCerL As X509Certificate2 In certCollValidU
If FormatCSPNumber(pCerU.SerialNumber, "") = FormatCSPNumber(pCerL.SerialNumber, "") Then bFoundCer = True : Exit For
Next
If Not bFoundCer Then certCollValid.Add(pCerU)
Next
Dim sFoundSerial As String = sCSPSerial.Replace(" ", "").ToUpper.Trim

For ii As Integer = 0 To certCollValid.Count - 1
Dim sCode1 As String = FormatCSPNumber(sFoundSerial, "")
Dim sCode2 As String = FormatCSPNumber(certCollValid(ii).SerialNumber, "")

If sCode1 = sCode2 Then
pSignercert = certCollValid(ii)

Exit For
End If
Next
.....
store.Close()
storeU.Close()
В конце закрываю контейнеры.


Текст лога
Error at Signe Response at 01.03.2018 9:27:22
System.Security.Cryptography.CryptographicException: Действие было отменено пользователем.

at CryptoPro.Sharpei.CPUtils.CreateProvHandle(CspParameters parameters, Boolean randomKeyContainer)
at CryptoPro.Sharpei.CPUtils.GetKeyPairHelper(CPCspAlgorithmType keyType, CspParameters parameters, Boolean randomKeyContainer, Int32 dwKeySize, SafeProvHandleCP& safeProvHandle, SafeKeyHandleCP& safeKeyHandle)
at CryptoPro.Sharpei.Gost3410CryptoServiceProvider.GetKeyPair()
at CryptoPro.Sharpei.Gost3410CryptoServiceProvider..ctor(CspParameters parameters)
at CryptoPro.Sharpei.NetDetours.CPX509Certificate2.get_PrivateKey()
at ImportExportBaseClass.CryptoProNet.SignSmevRequest.SignXmlFile(Stream& fromStream, Stream& toStream, String sCSPSerial, String CSPPathPfx, String sLogFileName, String sXmlWithCspFilePath, String sSmevVersion)

Заранее спасибо!

Отредактировано пользователем 1 марта 2018 г. 17:15:47(UTC)  | Причина: Не указана

RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.