Статус: Участник
Группы: Участники
Зарегистрирован: 08.09.2014(UTC) Сообщений: 12 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png)
|
Здравствуйте. Информационная система интегрируется с ЕСИА по средствам OAuth2. Необходимо в запросе отправить подпись от определённых параметров Для реализации подписи сначала пробовал КриптоПро CSP, с ним все работает. Вопрос возник в том, как можно использовать КриптоПро JCP в c#? Какую библиотеку необходимо подключить в проект?
|
|
|
|
Статус: Вам и не снилось
Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC) Сообщений: 831 Откуда: Крипто-Про
Сказал(а) «Спасибо»: 1 раз Поблагодарили: 48 раз в 44 постах
|
Зачем JCP В C#? Используйте тот же КриптоПро CSP через КриптоПро .NET. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 08.09.2014(UTC) Сообщений: 12 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png)
|
А как asp.net c# восприм контейнер установленный на сервере в криптопро? На локальной машине через криптопро csp я по номеру сертификата выбираю и подписываю строку.и методом get отправляются даные на esia. Для автортзации, Все проходит.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,476 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал «Спасибо»: 553 раз Поблагодарили: 2243 раз в 1749 постах
|
Автор: ArtfulAngel ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) А как asp.net c# восприм контейнер установленный на сервере в криптопро? На локальной машине через криптопро csp я по номеру сертификата выбираю и подписываю строку.и методом get отправляются даные на esia. Для автортзации, Все проходит. Никаких проблем нет. Примеры в SDK. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 08.09.2014(UTC) Сообщений: 12 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png)
|
помогите разобраться тогда. 1) на Windows server 2003 установил Крипто Про CSP, установил сертификат с контейнером в локальное хранилище компьютера в реестр. при запуске сайта написанного на ASP.NET для авторизации с ЕСИА по серийному номеру должен найтись сертификат и контейнер подписи, при попытке подписать выдает ошибку "Набор ключей не существует". В то время как на локальной машине все проходит идеально. 2) для подписи параметров для ЕСИА использую вот такой код: Код:ContentInfo contentInfo = new ContentInfo(new System.Text.UTF8Encoding().GetBytes(data));
SignedCms signedCms = new SignedCms(contentInfo, true);
CmsSigner cmsSigner = new CmsSigner(cert1);
cmsSigner.SignedAttributes.Add(new Pkcs9SigningTime());
signedCms.ComputeSignature(cmsSigner, true);
Правильно ли я делаю? Отредактировано пользователем 4 января 2016 г. 7:38:14(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,476 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал «Спасибо»: 553 раз Поблагодарили: 2243 раз в 1749 постах
|
Автор: ArtfulAngel ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) помогите разобраться тогда. 1) на Windows server 2003 установил Крипто Про CSP, установил сертификат с контейнером в локальное хранилище компьютера в реестр. при запуске сайта написанного на ASP.NET для авторизации с ЕСИА по серийному номеру должен найтись сертификат и контейнер подписи, при попытке подписать выдает ошибку "Набор ключей не существует". В то время как на локальной машине все проходит идеально. 2) для подписи параметров для ЕСИА использую вот такой код: Код:ContentInfo contentInfo = new ContentInfo(new System.Text.UTF8Encoding().GetBytes(data));
SignedCms signedCms = new SignedCms(contentInfo, true);
CmsSigner cmsSigner = new CmsSigner(cert1);
cmsSigner.SignedAttributes.Add(new Pkcs9SigningTime());
signedCms.ComputeSignature(cmsSigner, true);
Правильно ли я делаю? Под учетной записью, в которой работает приложение, должен быть доступ к закрытому ключу. cert1 - как получается? Как устанавливался сертификат? Штатными средствами CSP с привязкой к контейнеру в хранилище локального ПК + давался доступ к контейнеру в реестре? |
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,476 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал «Спасибо»: 553 раз Поблагодарили: 2243 раз в 1749 постах
|
|
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 08.09.2014(UTC) Сообщений: 12 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png)
|
Автор: Андрей * ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Автор: ArtfulAngel ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) помогите разобраться тогда. 1) на Windows server 2003 установил Крипто Про CSP, установил сертификат с контейнером в локальное хранилище компьютера в реестр. при запуске сайта написанного на ASP.NET для авторизации с ЕСИА по серийному номеру должен найтись сертификат и контейнер подписи, при попытке подписать выдает ошибку "Набор ключей не существует". В то время как на локальной машине все проходит идеально. 2) для подписи параметров для ЕСИА использую вот такой код: Код:ContentInfo contentInfo = new ContentInfo(new System.Text.UTF8Encoding().GetBytes(data));
SignedCms signedCms = new SignedCms(contentInfo, true);
CmsSigner cmsSigner = new CmsSigner(cert1);
cmsSigner.SignedAttributes.Add(new Pkcs9SigningTime());
signedCms.ComputeSignature(cmsSigner, true);
Правильно ли я делаю? Под учетной записью, в которой работает приложение, должен быть доступ к закрытому ключу. cert1 - как получается? Как устанавливался сертификат? Штатными средствами CSP с привязкой к контейнеру в хранилище локального ПК + давался доступ к контейнеру в реестре? cert1 получается так: Код:
X509Store store = new X509Store(StoreLocation.LocalMachine);
store.Open(OpenFlags.ReadOnly);
X509Certificate2Collection collection = (X509Certificate2Collection)store.Certificates.Find(X509FindType.FindByTimeValid, DateTime.Now, false);
X509Certificate2Collection Results = (X509Certificate2Collection)store.Certificates.Find(
X509FindType.FindBySerialNumber, certcn, false);
cert1 = Results[0];
Сертификат установлен через CSP с привязкой в хранилище локального ПК, доступ к контейнеру не давался.
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 08.09.2014(UTC) Сообщений: 12 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png)
|
Уважаемые гуру. подскажите пожалуйста. пытаюсь настроить права безопасности для использования ключей ЭЦП, ничего не выходит. в Пуле приложения сделал следующие настройки: удостоверение выбрал пользователя которого специально создал для этих целей и сделал загрузку профиля пользователя. ![](/forum2/Themes/soclean/icon_file.gif) 1.png (34kb) загружен 14 раз(а).В оснастке сертификата - управление закрытыми ключами сертификата - добавил этого пользователя. но при запуске сайта и попытке подписать строку он выдает сообщение "Набор ключей не существует". как только я в оснастке сертификата - управление закрытыми ключами сертификата - добавляю группу "все", подпись строки происходит, но сильно долго и в результате при пере направлении на ЕСИА возвращается ошибка "ESIA-007015: Time of the request is outside the bounds." Почему приложение ASp.Net не воспринимает пользователя которого я ему указал?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,476 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал «Спасибо»: 553 раз Поблагодарили: 2243 раз в 1749 постах
|
Автор: ArtfulAngel ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Уважаемые гуру. подскажите пожалуйста. пытаюсь настроить права безопасности для использования ключей ЭЦП, ничего не выходит. в Пуле приложения сделал следующие настройки: удостоверение выбрал пользователя которого специально создал для этих целей и сделал загрузку профиля пользователя. ![](/forum2/Themes/soclean/icon_file.gif) 1.png (34kb) загружен 14 раз(а).В оснастке сертификата - управление закрытыми ключами сертификата - добавил этого пользователя. но при запуске сайта и попытке подписать строку он выдает сообщение "Набор ключей не существует". как только я в оснастке сертификата - управление закрытыми ключами сертификата - добавляю группу "все", подпись строки происходит, но сильно долго и в результате при пере направлении на ЕСИА возвращается ошибка "ESIA-007015: Time of the request is outside the bounds." Почему приложение ASp.Net не воспринимает пользователя которого я ему указал? А сертификат как был установлен? |
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close