Ошибка при получении сертификата как устранить

Разгребая свои очередные заметки по тому, каким образом была решена та или иная проблема я наткнулся на, казалось бы, простую, на первый взгляд, проблему – ошибку “Ошибка при получении свойства сертификата (0x00000000)”, которая генерировалась при попытке установки нового сертификата в 1С. Но я потратил почти день на поиски решения… Наверное, в силу небольшого опыта работы с 1С. Мне редко приходится заниматься 1С, но иногда какие-то задачи на меня прилетаю.

По итогу решение оказалось простое, но не совсем очевидное (да, это был кэш). Возможно, это позволит сэкономить вам какое-то время при решении подобное проблемы.

Описание проблемы

При проверки настроек сертификата электронной подписи в 1С геренируется ошибка “Ошибка при получении свойства сертификата (0x00000000)”:

Окружение

Версия платформы: 1С:Предприятие 8.3 (8.3.17.1851)/

Конфигурация 1С: Управление торговлей, редакция 11 (11.4.13.282) – серверная версия.

Версия Крипто Про: 5.0.12000 KC1

Операционная системы: Windows Server 2008 R2 Standard x64.

ЭЦП расположена на токене Rutoken Lite.

Какие шаги не помогли решить проблемы

Итак, какие шаги я выполнял для устранения проблемы, но они не помогли решить проблему:

1. В Крипто Про я протестировал контейнер закрытого ключа. Проблем не обнаружено. Закрытый ключ присутствует на токене.

2. В какой-то момент генерировалась ошибка “Сертификат не имеет связи с закрытым ключом”, но я выполнил шаги из этого руководства для устранения этой ошибки.

3. Также я установил сертификат в личный контейнер пользователя.

4. Еще пробовал установить сертификат в личный контейнер пользователя вот таким способом.

5. Проверил наличие закрытого ключа в личном контейнере пользователя.

6. Пометил сертификат на удаление, удилил его и попробовал добавить сертификат заново.

7. Перезагружал сервер после выполнения шагов выше (несчетное количество раз).

8. Обновил версию Крипто Про до 5.0.12000 KC1.

Иногда менялась последовательность и комбинация действий. Это из того, что вспомнилось. Возможно делал что-то еще, но не столь важное.

Решение

Как видно из предыдущего раздела я выполнил довольно много действий, но тут я приведу то последнее действие, которое в итоге помогло мне решить проблему. Да, скорее всего, какие-то из действий предыдущего раздела были необходимо и без них решение ниже не помогло бы. Но я не могу сказать какие именно.

Как в итоге я смог устранить эту ошибку:

1. Пометил сертификат на удаление и удалил через удаление помеченных на удаление объектов (ток его удалил, другое ничего не удалял).

2. Очистил кэш 1С для пользователя.

3. Повторно импортировал сертификат.

Да, все таки думаю, что это было из-за кэша 1С. Где-то осела какая-то не актуальная информация о сертификате.

Ошибка при получении свойства сертификата (0x00000000)

Дата обновления: 28.06.2022

Номер карточки: SD0012282

Ошибка при получении свойства сертификата.png

Ошибка при получении свойства сертификата (0x00000000) — это проявление ошибки отсутствия связи сертификата в Личном списке сертификатов пользователя ОС с контейнером закрытого ключа.

Чтобы определить под каким пользователем ОС (на каком компьютере), необходимо наличие связи закрытого ключа с открытой частью сертификата, требуется  узнать режим запуска 1С:

  • Если база файловая и запускается через тонкий клиент на том же компьютере, то наличие связи надо проверять для пользователя ОС, под которым запускается сеанс 1С на этом компьютере (без повышения прав, т.е. без «запуск от имени администратора»).
  • Если файловая ИБ запускается через браузер, т.е. используется web-сервер (в том числе на одном и том же компьютере) и пользователь планирует работать с локальной подписью (т.е. сертификат будет доступен только одному пользователю и только на одном компьютере) — то наличие связи надо проверять на этом компьютере для пользователя, под которым запущен браузер, без повышения прав. В этом случае ошибки в проверках на сервере проблемой не являются.
  • Если файловая ИБ запускается через браузер и пользователь планирует использовать серверную подпись (т.е. сертификат будет доступен разным пользователям с разных компьютеров) — то наличие связи надо проверять для пользователя ОС, под которым запущен web-сервер, без повышения прав (и на том же компьютере, где запущен web-сервер). В этом случае ошибки в проверках на клиенте проблемой не являются.
  • Если база клиент-серверная и проверяется подпись на сервере, то наличие связи надо проверять для пользователя ОС, под которым запущен сервер 1С без повышения прав (если используется web-сервер, то все равно проверки выполнять для пользователя ОС, под которым запущен сервер 1С). В этом случае ошибка в проверке подписи на клиенте проблемой не является.
  • Если база клиент-серверная и проверяется подпись на клиенте, то наличие связи надо проверять для пользователя ОС, под которым запускается сеанс 1С на машине-клиенте без повышения прав. В этом случае ошибка в проверке подписи на сервере проблемой не является.

Необходимо выяснить в каком из вышеперечисленных режимов происходит запуск 1С при возникновении ошибки, а также в какой проверке возникает ошибка (проверка на сервере или на клиенте). Все дальнейшие рекомендации выполнять на нужной машине и в сеансе нужного пользователя ОС без повышения прав (т.е. без «запуск от имени администратора»).

1. Проверить, что сертификат установлен в Личный список сертификатов пользователя ОС, а также наличие связи с закрытым ключом:

1.1. Под пользователем ОС (см. выше, как определить) запустить консоль сертификатов — certmgr.msc

Ошибка при получении свойства сертификата 2.png

1.2. В консоли развернуть папку «Личное» и перейти в «Сертификаты».

Ошибка при получении свойства сертификата 3.jpg

1.3. Открыть проблемный сертификат.

Ошибка при получении свойства сертификата 4.jpg

 В сведениях о сертификате не должно быть красного креста или восклицательного знака.

Ошибка при получении свойства сертификата 5.jpg

  • Восклицательный знак обозначает, что цепочка до корневого сертификата не построена.
  • Красный крест обозначает, что сертификат истек или не выстроена цепочка сертификатов до корневого.

С подробной инструкцией как построить цепочку сертификатов, можно ознакомиться по ссылке.

В нижней части должен отображаться значок ключа с надписью: «Есть закрытый ключ для этого сертификата», если данный значок отсутствует, то это означает, что закрытого ключа нет (как это исправить — см. п. 2).

2. Проверка связи и перепривязка средствами криптопровайдера:

2.1. В сеансе пользователя ОС (без повышения прав) переустановить сертификат в Личное хранилище сертификатов с привязкой к закрытому ключу (Инструкция по переустановке http://1c-edo.ru/handbook/28/4008/).

2.2. Если сертификат установлен в Личном хранилище сертификатов администратора ОС (т.е. в реестре администратора), тогда нужно его (вместе с закрытым ключом) экспортировать в файл средствами Windows (в файл pfx). А затем импортировать в сеансе пользователя ОС, из под которого выполняется запуск 1С без повышения прав. Для этого необходимо в сертификате перейти на вкладку «Состав» и нажать «Копировать в файл…»

Ошибка при получении свойства сертификата 6.png

В мастере экспорта сертификатов необходимо выбрать «Да, экспортировать закрытый ключ» и нажать «Далее».

Ошибка при получении свойства сертификата 7.jpg

На следующем шаге автоматически определится предпочтительный формат экспортируемого файла (.PFX). Необходимо нажать «Далее».

Ошибка при получении свойства сертификата 8.jpg

После чего необходимо задать пароль для закрытого ключа, а также выполнить его повторный ввод в поле «Подтверждение» и нажать «Далее».

Ошибка при получении свойства сертификата 9.jpg

На следующем шаге мастера экспорта сертификатов требуется указать имя файла и доступную директорию компьютера.

Ошибка при получении свойства сертификата 10.jpg

И завершить экспорт. 

В сеансе пользователя, двойным щелчком левой кнопки мыши по экспортированному файлу, необходимо запустить мастер импорта сертификатов.

Ошибка при получении свойства сертификата 11.jpg

В поле «Расположение хранилища» выбрать «Текущий пользователь» и нажать «Далее».

Ошибка при получении свойства сертификата 12.jpg

Импортируемый файл определится автоматически.

Ошибка при получении свойства сертификата 13.jpg

На следующем шаге мастера необходимо ввести пароль, который был указан при экспорте файла, и нажать «Далее».

Ошибка при получении свойства сертификата 14.jpg

После чего завершить импорт сертификата, выбрав «Автоматически выбрать хранилище на основе типа сертификата».

Ошибка при получении свойства сертификата 15.jpg

И выполнить рекомендации из статьи  http://1c-edo.ru/handbook/28/4008/

Если криптосредство (КриптоПро, VipNet) не запускается без повышения прав в сеансе пользователя ОС, из-под которого выполняется запуск приложений 1С (запуск сервера 1С или web-сервера для файловой ИБ), рекомендуется выполнить переустановку криптосредства, чтобы оно было доступно в сеансе пользователя ОС, из-под которого выполняется запуск приложений 1С (и/или сервера/web-сервера).

Также вам может быть интересно:

Настройка клиент-серверного подписания электронных документов

Сертификат не найден на компьютере

Настройка криптопровайдера ViPNet CSP для работы с 1С-ЭДО

При открытии сайтов в браузере иногда возникают ошибки – домен в адресной строке выделяется красным с зачеркиванием или ресурс вообще не открывается. Типовая причина скрывается в сбоях работы сертификата SSL. Исправить их может только администратор сайта, но перед обращением к нему стоит проверить собственный компьютер.

Что такое SSL

Текущие тенденции сайтостроения предполагают высокую безопасность соединения пользователя с веб-ресурсом. Это необходимо для защиты персональных данных, секретных номеров банковских карт и информации о проводимых сделках. Организуется безопасность подключением протокола шифрования Secure Sockets Layer (сокращенно SSL).

SSL

Особенности сертификата:

  1. Сертификат выпускается доверенным центром Certification Authority (CA).
  2. После выдачи он подключается к домену средствами провайдера хостинга.
  3. Срок его действия ограничен 1 годом, после чего требуется продление.

Работа сайта возможна и без SSL, но поисковые системы «не доверяют» таким ресурсам и помечают их в браузере как неблагонадежные. Поэтому лучше разобраться, как решить проблему с защитой и полноценно пользоваться протоколом HTTPS. Сертификат актуален на сайтах, где присутствует регистрация, предлагается покупка товаров или онлайн-оплата различных сервисов.

Сертификат ССЛ

При появлении любых сомнений в исправности защиты регистрироваться на сайте или вводить ранее выданные логин и пароль не рекомендуется. Тем более не стоит осуществлять онлайн-оплату с банковских карт или электронных кошельков, ведь не исключено, что проблема возникла из-за взлома ресурса злоумышленниками.

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Причины появления ошибок SSL

Существует всего две причины, почему браузер отображает ошибку сертификата SSL со стороны сервера. Первая заключается в окончании срока активации, вторая – это покупка сертификата у поставщика без достаточных полномочий для выдачи «полноценной защиты». Например, виной может быть выбор самоподписанного сертификата, лишь эмулирующего работу реального протокола.

Остальные проблемы обычно скрываются на локальном компьютере:

  1. Произошел сброс системного времени.
  2. Неправильно настроена антивирусная программа.
  3. Сбоит браузер или установленное расширение.
  4. Срабатывает вредоносный скрипт.

Чтобы выяснить настоящую причину, пользователю браузера рекомендуется проверить все перечисленные факторы. При том же заражении компьютерными вирусами возможно проявление сразу нескольких симптомов – от изменения текущего времени и блокировки антивирусом до подключения перенаправления страниц в браузере и других неприятностей.

Изредка встречаются ситуации, когда проблема возникла со стороны администратора, если он ошибся при подключении нового сертификата или забыл продлить его действие. Обычно такие неполадки устраняются быстро, потому что после активации сайт проверяется и, в случае неработоспособности сертификата, проводится повторное подключение вплоть до получения положительного результата.

Время и дата

Сертификат SSL имеет четко обозначенный срок действия с датой активации и деактивации. Такой подход отчасти дает дополнительную защиту, потому что в случае технического сбоя в системных часах компьютера сайты перестают открываться. Сброс времени обычно происходит «назад», на дату изготовления материнской платы, на что и реагирует система.

Варианты исправления ситуации:

  1. Вручную внести корректную дату и время, после чего обновить страницу в браузере.
  2. Воспользоваться функцией синхронизации через интернет, встроенной в Windows.
  3. Заменить батарейку на памяти BIOS. При первом запуске ПК нужно внести корректные данные.

Каждый раз после изменения времени рекомендуется ручное обновление страницы или перезапуск браузера. Такой шаг активирует повторное соединение с сервером и позволяет зайти на сайт «с нуля», но уже с правильным временем, соответствующим сроку действия сертификата SSL (после активации и до ее завершения).

Настройки антивируса и брандмауэра

Программы для защиты компьютера от вирусов и хакерских атак иногда блокируют и «полезные» соединения, например, определенные домены или сразу весь протокол HTTPS, используемый при подключении сертификата SSL. Большинство антивирусов и брандмауэров проверяют его работу, и это становится причиной блокировки сайта как «злоумышленника, пытающего украсть данные».

Ошибка антивируса

Варианты исправления ситуации:

  1. Отключить режим «проверка протокола HTTPS». После этого зайти на сайт заново.
  2. Полностью выключить антивирусную программу. Перезагрузить ПК, открыть страницу.
  3. Сбросить настройки брандмауэра. Опять проводится перезапуск компьютера и веб-ресурса.

Функция временного отключения имеется в любой защитной программе, даже интегрированной в операционную систему Windows. Но это не гарантирует полную деактивацию приложения. В этом случае разобраться в ситуации поможет открытие сайта на другом компьютере или запуск безопасного режима (актуально для проводного подключения к интернету).

Браузер и операционная система

Наличие проблемы с браузером проще всего определить открытием сайта на другом устройстве или в другой программе. Иногда решение заключается в банальном обновлении версии приложения до актуальной. То же относится к операционной системе, если используется интегрированный браузер вроде Edge. Пакеты обновлений для того и выпускаются, чтобы устранять неполадки в ПО.

Браузер и операционная система

Варианты исправления ситуации:

  1. Полностью очистить историю браузера вместе с кэшем и другими данными.
  2. Временно отключить все ранее установленные и активные расширения.
  3. Переустановить программу после ее полной деинсталляции.

Остается еще один вариант – сбросить настройки браузера до состояния «по умолчанию». Способ аналогичен переустановке, но экономит время. Правда, он неэффективен, если проблема возникла из-за сбоя в одном из служебных файлов программы. Отдельное внимание стоит уделить расширению, выполняющему функции антивирусной защиты, ведь оно часто блокирует даже безопасное соединение.

Заражение компьютерными вирусами

Выдачей ошибки SSL браузер, вероятно, предупреждает о попытке его подмены, переадресации на сайт-клон или иной угрозе. В это случае рекомендуется провести полную проверку компьютера на наличие вирусов. Если присутствуют другие признаки заражения, стоит скачать парочку программ со свежими антивирусными базами (например, CureIt).

Заражение компьютерными вирусами

Варианты исправления ситуации:

  1. Временно отключить все программы из автозагрузки.
  2. Провести очистку диска от временных файлов.
  3. Перезагрузить компьютер после предыдущих шагов.

Выполняются перечисленные действия программами типа CCleaner. Они дают прямой доступ как к автозагрузке операционной системе, так и к списку расширений установленных браузеров. Также в таких программах обычно есть функция удаления ненужных системных файлов, в которых запросто может быть тело компьютерного вируса.

Если предложенные способы устранения ошибки SSL не помогли, остается ждать, пока проблему устранит администратор, или воспользоваться любым другим тематическим сайтом с аналогичным контентом.

На чтение 15 мин Просмотров 1.5к. Опубликовано 13.04.2021

Содержание

  1. Причины ошибки
  2. Как решить проблему генерации сертификата
  3. Что еще можно сделать?
  4. Нагрузка сервера сайта ФНС
  5. Заключение
  6. Виды и типы электронных подписей
  7. Механизм отправки документов подписанных усиленной электронной подписью
  8. Как создать электронную подпись в личном кабинете налогоплательщика
  9. Ошибка генерации сертификата ЭП
  10. Что делать если Вы забыли пароль для доступа к сертификату ключа проверки электронной подписи
  11. Схема создания ЭП
  12. Инструкция получения ЭП
  13. Возникновение ошибки генерации сертификата
  14. Варианты решения проблемы
  15. Просмотр реквизитов сертификата
  16. Остались вопросы?

После обновления личного кабинета в ИФНС пользователи массово столкнулись с проблемой «Ошибка генерации сертификата». Работа личного кабинета была переведена на новую версию и при подаче деклараций или уточнении люди столкнулись с проблемой. В новой версии кабинета необходимо получить новую электронную подпись. И как раз таки при выборе способа получения ЭП появляется «Ошибка генерации сертификата».
По отзывам пользователей в старом кабинете все функционирует нормально, однако на данный момент там нельзя уточнить, создать декларацию за 2017 год.
Поскольку вопросов много вначале кратко расскажем о возможных причинах этого сбоя, а ниже дадим советы и рекомендации как попытаться сгенерировать новый сертификат самостоятельно.

Причины ошибки

Официальный ответ от разработчиков содержит информацию, что в личном кабинете проводились регламентные работы, в связи с которыми появлялся данный сбой и советуют повторить операцию позже. Однако следующие попытки безрезультатны. Такое программное обеспечение необходимо тестировать и проверять под все популярные версии операционных систем и браузеров. А так как систем и веб браузеров много — система должна работать на 100%. И перед обновлением должна быть протестирована на ошибки и баги.
Ситуация усугубляется тем, что по отзывам пользователей данная ситуация продолжается с февраля 2019, а за это время можно было провести необходимые тесты и проверить работоспособность.

Ниже мы будем публиковать инструкции, которые помогли пользователям в получении электронной подписи.

Как решить проблему генерации сертификата

По мере поступления проверенной рабочей информации мы будем публиковать ниже инструкции для решения ошибок с генераций электронной подписи и других сбоев в ЛК.

  • Выбираем вариант «Электронная подпись хранится на Вашей рабочей станции».

Электронная подпись хранится на Вашей рабочей станции

Что еще можно сделать?

  • Просмотреть график проведения работы над порталом ФНМ и перенести работу с порталом на другой день.
  • После подачи запроса на регистрацию ключа — выходим из ЛК. Сообщение о присвоении сертификата вы получите при следующем входе в кабинет.
  • И не забываем что можно обратиться в техническую поддержку сайта или в отделение налоговой с паспортом и ИНН.

Нагрузка сервера сайта ФНС

Во время частых запросов и обращений к сайту налоговой «Ошибка генерации сертификата» частое явление, из-за постоянных обращений к сайту сервер может не выдерживать нагрузки. Как одна из причин сбой может появляться из-за большой загруженности портала Федеральной Налоговой Службы. Самый пик приходится на последние дни подачи налоговых деклараций от физических лиц и организаций. Большая часть из которых выпадает на первые кварталы года. Как вариант в таком случае действительно приходится ждать и повторять выпуск снова.

Заключение

Надеюсь мы разъяснили некоторые моменты в работе нового ЛК ФНС. Пробуйте исправить ошибку создания сертификата с помощью инструкции выше и сообщите помог ли вам способ. Если вам известные другие методы решения проблемы — сообщите нам в форме комментариев ниже и мы дополним нашу статью для помощи будущим читателям.
Информация представлена для ознакомления, более свежие новости смотрите на официальном сайте Госуслуг.

В прошлой статье мы разбирались с декларацией 3-НДФЛ и перед отправкой документов в личном кабинете налогоплательщика вводили пароль к сертификату электронной подписи, или выражаясь простым языком подписывали наши «толмуты» электронной подписью.

Отчёты по ИП и ООО можно сделать бесплатно здесь.

Как-то я упустил из виду, что не все знают что это такое. Тема полезная как для помощи при создании электронной подписи в своём личном кабинете налогоплательщика так и для общего образования. Учитывая, что многие мои читатели пенсионеры — люди преклонного возраста и недостаточно уверенные в общении с компьютером, «разложу всё по полочкам».

Прежде всего, давайте разберёмся для чего нужна электронная подпись и что за пароль от сертификата. Здесь всё просто, как и простая подпись из под ручки, она нужна для придания какому-либо документу юридической силы. Но простую-то можно сверить с той, что в паспорте и на худой конец провести графологическую экспертизу её подлинности. А как же сверить и проверить электронную? Здесь всё гораздо сложнее. Но сначала о видах и типах.

Виды и типы электронных подписей

Скажу сразу, видов не великое множество, а всего два:

  • простая электронная подпись;
  • усиленная;

Простая — это логин и пароль. Она подтверждает, что электронное сообщение отправлено именно их владельцем. И больше ничего. Нам же интересна усиленная. Она помимо идентификации отправителя ещё и подтверждает, что после подписания документ не менялся и приравнивается к документальной бумажке с подписанной ручкой.

Бывают усиленные тоже двух типов:

  • квалифицированная электронная подпись;
  • неквалифицированная;

В налоговой создаётся неквалифицированная усиленная электронная подпись и использоваться она может в документообороте только в рамках ИФНС! А вот использование квалифицированной подписи гораздо шире, но для её получения необходимо лично обратиться в удостоверяющий цент, аккредитованный Минкомсвязи России. И эта услуга платная.

Если же Вы её всё-таки приобретёте, то у Вас появиться возможность зарегистрироваться в личном кабинете налогоплательщика без мытарств по налоговым органам. А потом и входить туда с помощью этой самой подписи вместо логина и пароля при выборе этого способа авторизации. Кстати и в госуслуги тоже. Ну и конечно, подписывать ей все возможные электронные документы, в том числе и в налоговой конечно.

Далее следует общеобразовательный ликбез. Если он Вас не интересует, можете пропустить этот раздел и прокрутить вниз. Там уже расписано, как создать электронную подпись в личном кабинете налогоплательщика и само сабой про пароль к сертификату тоже. А специалистов в области криптографии прошу не судить меня строго за некоторые неточности и упрощения в этом опусе.

Механизм отправки документов подписанных усиленной электронной подписью

Правильнее было бы использовать слово алгоритм вместо механизм. Но не буду пугать основную часть нашей аудитории — пенсерменов «заумными» словами. И далее не пугайтесь, всё разъясню. Итак, как же, например, товарищ Иванов передаёт Налоговой через интернет подписанные документы? Да ещё чтоб их никто не смог прочитать и подменить. Научным языком примерно так:

Вначале Иванов и Налоговая генерируют открытые и закрытые ключи шифрования. Затем обмениваются открытыми между собой. На следующем этапе:

  1. Иванов шифрует «послание» своим закрытым ключом и как результат происходит его подписывание.
  2. Далее Иванов шифрует открытым ключом, который перед этим ему отправила Налоговая то, что получилось после выполнения пункта 1. Теперь никто посторонний не сможет ничего прочитать, если даже перехватит.
  3. После того как Налоговая получила «послание» Иванова, она сначала расшифровывает его своим закрытым ключом и видит там зашифрованный документ Иванова.
  4. Тут-то «Налоговая» расшифровывает его с помощью открытого ключа переданного ей Ивановым в самом начале. В результате чего происходит сверка подписи Иванова.

А на «рабоче-крестьянском» языке «явок и паролей» это будет приблизительно похоже на такое мероприятие:

Сначала Иванов готовит чемодан с запасным ключом и бумагу с собственноручно подписанными реквизитами, а Налоговая шкатулку тоже с запасным ключом. Идут на почту и отправляют друг другу посылки. Иванов укладывает в бандероль ключик от чемодана, а в ценное письмо бумагу со своими реквизитами и отправляет по отдельности. Налоговая — шкатулку посылкой и бандероль с одним ключиком тоже отдельно.

Иванов, получив посылку и бандероль прячет, например, свою подписанный документ в шкатулку и закрывает её ключом из полученной бандероли. Укладывает эту секретную шкатулку в свой чемодан и тоже закрывает уже на свой ключ. А потом посылкой отправляет эту «матрёшку» в Налоговую. Ключи от шкатулки и чемодана оставляет у себя.

Налоговая получает посылку и бандероль. Все ключики у неё уже имеются и если они подходят, она открывает ими и чемодан и шкатулку. Смотрит и сверяет подпись и реквизиты, указанные в документе с теми , что пришли ценной бандеролью ранее. Если всё совпадает и никаких исправлений и подозрений нет, то принимает их в работу.

Эту «белеберду» я написал для того, чтобы было понятно — усиленная электронная подпись это очень серьёзная штука с высочайшем уровнем защиты. И тот пароль, который Вы вводите для отправки электронного документа, это не просто пароль, как например для входа в «Одноклассники», а можно сказать, очень сложный механизм для запуска всех этих процессов шифрования, обмена данными, дешифрования, сверки данных.

Я уже не буду вдаваться в подробности о терминах. Например, что значит сертификат ключа проверки электронной подписи. Почему так, а не просто подпись. Хватит, и так столько ахинеи нанёс, что у самого голова пухнет. Ближе к теме.

Как создать электронную подпись в личном кабинете налогоплательщика

Если у Вас уже была электронная подпись в старой версии личного кабинета, то в новой (с 2018 года) её уже не будет и пароля естественно тоже. Так что сертификат ЭП придётся создавать заново.

Итак, заходите в личный кабинет и открываете свой профиль. Для этого сразу же на первой страничке находите наверху справа свою фамилию, имя, отчество и клацаете. Ну а в открывшемся окне всё по пунктам, как на картинке:

  1. выбираете вкладку «Получить ЭП»;
  2. вариант хранения электронной подписи;
  3. устанавливаете пароль для доступа к сертификату;
  4. вводите его ещё раз;
  5. жмёте кнопку «Отправить запрос»:

Почему лучше выбрать хранение ключа в системе ФНС России, думаю у Вас вопросов не вызовет. Если Вы прочитали разъяснения, то заметили и сами неоспоримые преимущества именно этого варианта.

После отправки запроса появляется окно ожидания с крутящимся кружочком. Иногда оно может задержаться на довольно таки продолжительное время:

Потом появиться окно, сообщающее о том, что сертификат успешно выпущен. Здесь можно будет вызвать окно со своим сертификатом, нажав на ссылку «Просмотреть сертификат»:

во всплывшем после этого окне ввести пароль, который Вы уже вводили дважды в самом начале и кнопка «Далее»:

А уже в следующем окне любуйтесь своим сертификатом, смотрите эти самые реквизиты, которые сверяют в налоговой при получении от Вас документов. Выглядит он примерно так:

Ошибка генерации сертификата ЭП

В первое время после запуска сайта налоговой это было довольно таки частое явление. Потом как бы всё «устаканилось». Сейчас вновь стали возникать такие «глюки». Я, например, об этом узнаю глядя на статистику посещаемости этого блога. Она резко возрастает. И всё за счёт статьи, которую вы сейчас читаете.

По этому поводу могу лишь сказать, что тут дело, скорее всего, не в вас и не в пароле, а в перегруженности портала ФНС. Особенно сильно это проявляется в последние дни сдачи налоговых деклараций организаций и прочих налоговых выплат физических лиц. Львиная доля их приходится обычно на первый квартал, то есть начало года.

Так что если на Вашем мониторе вышла надпись «Ошибка генерации сертификата электронной подписи» особо не расстраивайтесь. Наберитесь терпения и попробуйте проделать эту операцию ещё раз. А лучше вернитесь к этому в другой день. Возможно «глюки» к этому времени закончатся и Вам повезёт.

Что делать если Вы забыли пароль для доступа к сертификату ключа проверки электронной подписи

Не огорчайтесь. Ничего страшного в этом нет. Это же не пароль от личного кабинета налогоплательщика, в случае утраты которого, придётся повторно посещать ИФНС. Это в том случае, если Вы не потрудились задать кодовое слово для его восстановления по электронной почте.

Здесь всё гораздо проще. Обратите внимание на нижнее окно там есть ссылка «Отозвать текущий сертификат». Смело щёлкайте по ней и после этого создавайте новый сертификат и у Вас будет новый пароль:

Если Вы всё-таки опасаетесь сразу это делать, можете для убедительности сначала щёлкнуть на «Просмотреть сертификат»:

Перед вами откроется следующее окно, которое, надеюсь развеет Ваши сомнения:

На этом можно и закончить. И помните, что электронная подпись открывает перед Вами массу возможностей как в экономии своего времени, так и в плане экономии средств. Я уже не говорю о том, что это уже более прогрессивная ступень ведения Ваших дел. И не огорчайтесь, если Вы утеряли пароль к сертификату ЭП, его всегда можно восстановить.

Удачи Вам ! И до скорых встреч на страницах блога «ПенсерМен».

При пользовании онлайн-кабинетом налогоплательщика введен упрощенный механизм заверения документов путем электронной подписи (ЭП). Нововведения в последнее время связаны с установкой новой ЭП для пользователей старой версии аккаунта. При процедуре регистрации часто возникает ошибка генерации сертификата в личном кабинете налогоплательщика, решить которую можно несколькими способами.

Схема создания ЭП

Электронная подпись является усиленным вариантом подтверждения того, что документ признается действительным и приравнивается к бумажному виду, где ставятся письменные инициалы. В процессе регистрации кабинета на сайте налоговой службы есть возможность создания неквалифицированного типа ЭП, обладающей следующими свойствами:

  • применяется в документообороте в рамках ФНС;
  • система шифрования характеризуется высоким уровнем защиты.

Как было уже сказано выше, в старом кабинете была доступна электронная подпись, но в обновленной версии приходится регистрировать новый сертификат. Причем предлагается хранение регистрируемой ЭП на станции пользователя или на сервисе ФНС. Ввиду мошеннических действий рекомендуется обращаться к последнему варианту, так как он преимущественно безопасен и допускает применение на мобильных гаджетах. Когда налогоплательщик желает установить ЭП на свой ПК, потребуется обеспечить защиту ключа особыми программами. Ответственность ложится на плечи пользователя.

Инструкция получения ЭП

Следуя описанной ниже схеме, пользователь быстро зарегистрирует сертификат. Для этого нужно:

  • авторизоваться в личном кабинете (ввести логин, пароль или применить данные учетной записи в Госуслугах);
  • открыть профиль – кликнуть по пункту, где указаны ФИО и ИНН;
  • в профиле кликнуть на услугу «Получить электронную подпись»;
  • отметить нужный вариант хранения в списке предложенных;
  • установить паролевую комбинацию для открытия сертификата;
  • подтвердить ранее введенные данные повторным набором;
  • нажать на команду «Отправить запрос».

Внимание! Когда происходит направление информации на сервис, на странице появляется «Генерация электронной подписи».

Обратите внимание! Для процесса требуется установка программы, которая занимается генерацией ключей. Все характеристики указываются под пунктом «Требования к системе». Предусмотрены версии для операционных систем Windows и MacOs.

На этапе создания есть функция регистрации имеющейся квалифицированной ЭП. Она подразумевает владение сертификатом, выданным удостоверенным на то центром, а именно: организация должна быть аккредитована Минкомсвязью России. Для успешной работы в кабинете налогоплательщика следует произвести обмен данными, чтобы в дальнейшем использовать ЭП в системе электронного документооборота налоговой службы.

Возникновение ошибки генерации сертификата

В процессе регистрации пользователь может получить сообщение: «Ошибка генерации сертификата». Инцидент случается по разным причинам:

  • проведение технических работ на сайте ФНС;
  • регистрация ЭП занимает в большинстве случае продолжительное время.

По отзывам уже давно пользующихся электронной подписью ФНС граждан напрашивается вывод, что регистрация кодовых комбинаций занимает 30 минут, а в некоторых случаях удлиняется до 2 дней. Тогда встает вопрос, сколько формируется личный кабинет налогоплательщика.

Обратите внимание! При запуске услуги появляется сообщение о продолжительности регистрации и возможности выхода из кабинета при необходимости, что не мешает процедуре формирования данных.

Не исключены ситуации, когда не произведена установка дополнительных программ для генерации кодов (пользователь не воспользовался ссылкой при ознакомлении с требованиями к системе). В результате сервис не сможет найти рабочую станцию для сохранения сведений.

Варианты решения проблемы

Если происходит выявление проблемы ошибки при формировании ЭП в кабинете налогоплательщика, стоит прибегнуть к одному из способов:

  • повторно попробовать загрузить сертификат – часто вторичная или третичная попытка заканчивается успехом, так как система может быть перезагружена заявками;
  • ознакомиться с графиком проведения технических работ на сайте ФНС и перенести процедуру на другой день;
  • после отправки запроса на регистрацию электронного ключа выйти из кабинета, так как уведомление о присвоении сертификата поступит при следующей авторизации;
  • обратиться в отделение налоговой службы, предъявив ИНН и паспорт.

Важно знать! Часто первичный запуск генерации сертификата не позволяет получить данные. Однако при повторе операции все заканчивается удачно. Причем вторичный запрос производится в тот же день или спустя неделю.

Просмотр реквизитов сертификата

Когда пользователю удается получить ЭП из системы ФНС, появляется сообщение о выпуске ключей. При этом доступны две опции:

  • просмотр;
  • отзыв.

Если выбирается «Просмотр сертификата», необходимо ввести ранее установленный в процессе регистрации пароль. В результате открывается окно с информацией:

Ввиду безопасности использования ЭП устанавливается короткий период функционирования кода. По прошествии 3 месяцев следует повторно запросить формирование ключей.

Функция отзыва полезна в случае потери пароля для доступа к сертификату или подозрении на риск взлома аккаунта. Тогда необходимо кликнуть по соответствующей команде и выполнить ряд действий. В результате сервис удалит все сведения, после чего можно будет приступить к созданию новых ключей.

Ошибка генерации сертификата ЭП не всегда становится непреодолимой проблемой. Стоит повторно сделать запрос и дождаться положительных результатов, ведь в будущем данный вариант позволит сэкономить время при сдаче отчетности в налоговые органы. Если все-таки в данный момент не удается сформировать ключи, рекомендуется попробовать запустить процесс на следующий день.

Остались вопросы?

Проконсультируйтесь у юриста (бесплатно, круглосуточно, без выходных):

Внимание! Юристы не записывают на приём, не проверяют готовность документов, не консультируют по адресам и режимам работы МФЦ, не оказывают техническую поддержку по порталу Госуслуг!

Дата обновления: 28.06.2022

Номер карточки: SD0012282

Ошибка при получении свойства сертификата.png

Ошибка при получении свойства сертификата (0x00000000) — это проявление ошибки отсутствия связи сертификата в Личном списке сертификатов пользователя ОС с контейнером закрытого ключа.

Чтобы определить под каким пользователем ОС (на каком компьютере), необходимо наличие связи закрытого ключа с открытой частью сертификата, требуется  узнать режим запуска 1С:

  • Если база файловая и запускается через тонкий клиент на том же компьютере, то наличие связи надо проверять для пользователя ОС, под которым запускается сеанс 1С на этом компьютере (без повышения прав, т.е. без «запуск от имени администратора»).
  • Если файловая ИБ запускается через браузер, т.е. используется web-сервер (в том числе на одном и том же компьютере) и пользователь планирует работать с локальной подписью (т.е. сертификат будет доступен только одному пользователю и только на одном компьютере) — то наличие связи надо проверять на этом компьютере для пользователя, под которым запущен браузер, без повышения прав. В этом случае ошибки в проверках на сервере проблемой не являются.
  • Если файловая ИБ запускается через браузер и пользователь планирует использовать серверную подпись (т.е. сертификат будет доступен разным пользователям с разных компьютеров) — то наличие связи надо проверять для пользователя ОС, под которым запущен web-сервер, без повышения прав (и на том же компьютере, где запущен web-сервер). В этом случае ошибки в проверках на клиенте проблемой не являются.
  • Если база клиент-серверная и проверяется подпись на сервере, то наличие связи надо проверять для пользователя ОС, под которым запущен сервер 1С без повышения прав (если используется web-сервер, то все равно проверки выполнять для пользователя ОС, под которым запущен сервер 1С). В этом случае ошибка в проверке подписи на клиенте проблемой не является.
  • Если база клиент-серверная и проверяется подпись на клиенте, то наличие связи надо проверять для пользователя ОС, под которым запускается сеанс 1С на машине-клиенте без повышения прав. В этом случае ошибка в проверке подписи на сервере проблемой не является.

Необходимо выяснить в каком из вышеперечисленных режимов происходит запуск 1С при возникновении ошибки, а также в какой проверке возникает ошибка (проверка на сервере или на клиенте). Все дальнейшие рекомендации выполнять на нужной машине и в сеансе нужного пользователя ОС без повышения прав (т.е. без «запуск от имени администратора»).

1. Проверить, что сертификат установлен в Личный список сертификатов пользователя ОС, а также наличие связи с закрытым ключом:

1.1. Под пользователем ОС (см. выше, как определить) запустить консоль сертификатов — certmgr.msc

Ошибка при получении свойства сертификата 2.png

1.2. В консоли развернуть папку «Личное» и перейти в «Сертификаты».

Ошибка при получении свойства сертификата 3.jpg

1.3. Открыть проблемный сертификат.

Ошибка при получении свойства сертификата 4.jpg

 В сведениях о сертификате не должно быть красного креста или восклицательного знака.

Ошибка при получении свойства сертификата 5.jpg

  • Восклицательный знак обозначает, что цепочка до корневого сертификата не построена.
  • Красный крест обозначает, что сертификат истек или не выстроена цепочка сертификатов до корневого.

С подробной инструкцией как построить цепочку сертификатов, можно ознакомиться по ссылке.

В нижней части должен отображаться значок ключа с надписью: «Есть закрытый ключ для этого сертификата», если данный значок отсутствует, то это означает, что закрытого ключа нет (как это исправить — см. п. 2).

2. Проверка связи и перепривязка средствами криптопровайдера:

2.1. В сеансе пользователя ОС (без повышения прав) переустановить сертификат в Личное хранилище сертификатов с привязкой к закрытому ключу (Инструкция по переустановке http://1c-edo.ru/handbook/28/4008/).

2.2. Если сертификат установлен в Личном хранилище сертификатов администратора ОС (т.е. в реестре администратора), тогда нужно его (вместе с закрытым ключом) экспортировать в файл средствами Windows (в файл pfx). А затем импортировать в сеансе пользователя ОС, из под которого выполняется запуск 1С без повышения прав. Для этого необходимо в сертификате перейти на вкладку «Состав» и нажать «Копировать в файл…»

Ошибка при получении свойства сертификата 6.png

В мастере экспорта сертификатов необходимо выбрать «Да, экспортировать закрытый ключ» и нажать «Далее».

Ошибка при получении свойства сертификата 7.jpg

На следующем шаге автоматически определится предпочтительный формат экспортируемого файла (.PFX). Необходимо нажать «Далее».

Ошибка при получении свойства сертификата 8.jpg

После чего необходимо задать пароль для закрытого ключа, а также выполнить его повторный ввод в поле «Подтверждение» и нажать «Далее».

Ошибка при получении свойства сертификата 9.jpg

На следующем шаге мастера экспорта сертификатов требуется указать имя файла и доступную директорию компьютера.

Ошибка при получении свойства сертификата 10.jpg

И завершить экспорт. 

В сеансе пользователя, двойным щелчком левой кнопки мыши по экспортированному файлу, необходимо запустить мастер импорта сертификатов.

Ошибка при получении свойства сертификата 11.jpg

В поле «Расположение хранилища» выбрать «Текущий пользователь» и нажать «Далее».

Ошибка при получении свойства сертификата 12.jpg

Импортируемый файл определится автоматически.

Ошибка при получении свойства сертификата 13.jpg

На следующем шаге мастера необходимо ввести пароль, который был указан при экспорте файла, и нажать «Далее».

Ошибка при получении свойства сертификата 14.jpg

После чего завершить импорт сертификата, выбрав «Автоматически выбрать хранилище на основе типа сертификата».

Ошибка при получении свойства сертификата 15.jpg

И выполнить рекомендации из статьи  http://1c-edo.ru/handbook/28/4008/

Если криптосредство (КриптоПро, VipNet) не запускается без повышения прав в сеансе пользователя ОС, из-под которого выполняется запуск приложений 1С (запуск сервера 1С или web-сервера для файловой ИБ), рекомендуется выполнить переустановку криптосредства, чтобы оно было доступно в сеансе пользователя ОС, из-под которого выполняется запуск приложений 1С (и/или сервера/web-сервера).

Также вам может быть интересно:

Настройка клиент-серверного подписания электронных документов

Сертификат не найден на компьютере

Настройка криптопровайдера ViPNet CSP для работы с 1С-ЭДО

Форум КриптоПро
 » 
Средства криптографической защиты информации
 » 
КриптоПро CSP 4.0
 » 
Ошибка при получении свойства сертификата (0x00000000) (на сервере 1С)


Offline

danila24

 


#1
Оставлено
:

9 сентября 2019 г. 8:54:24(UTC)

danila24

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

Группы: Участники

Зарегистрирован: 09.09.2019(UTC)
Сообщений: 3
Российская Федерация
Откуда: Красноярск

Поблагодарили: 1 раз в 1 постах

Здравствуйте.
На сервере Windows Server 2016 стоит КриптоПро CSP 4.0.9680, Версия ядра СКЗИ: 4.0.9006 КС1. Лицензия серверная.
Также на этом сервере установлен сервер 1С 8.3.14.1630. Сервер 1С запускается под учетной записью.
Проблема в следующем: при попытке подписания документов в 1С на клиенте ошибок не возникает, всё подписывается и проверяется, но при попытке выполнения такой операции на сервере возникает ошибка:
Ошибка при получении свойства сертификата (0x00000000).


Вверх

Offline

Андрей Писарев

 


#2
Оставлено
:

9 сентября 2019 г. 11:05:57(UTC)

Андрей *

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

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,736
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1838 раз в 1421 постах

Здравствуйте.

Расскажите, где как устанавливали сертификат, под какой учётной записью,
какой кодвызов функции даёт ошибку.

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW


Offline

danila24

 


#3
Оставлено
:

9 сентября 2019 г. 11:19:13(UTC)

danila24

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

Группы: Участники

Зарегистрирован: 09.09.2019(UTC)
Сообщений: 3
Российская Федерация
Откуда: Красноярск

Поблагодарили: 1 раз в 1 постах

В общем сами разобрались


Вверх

Offline

R.Salo

 


#4
Оставлено
:

29 октября 2019 г. 10:05:13(UTC)

R.Salo

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

Группы: Участники

Зарегистрирован: 29.10.2019(UTC)
Сообщений: 4
Российская Федерация
Откуда: Благовещенск

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

Добрый день, не могли бы вы поделиться решением этой проблемы?такая же ошибка на новом сервере , не можем разобраться.


Вверх

Offline

Андрей Писарев

 


#5
Оставлено
:

29 октября 2019 г. 10:16:09(UTC)

Андрей *

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

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,736
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1838 раз в 1421 постах

Автор: R.Salo Перейти к цитате

Добрый день, не могли бы вы поделиться решением этой проблемы?такая же ошибка на новом сервере , не можем разобраться.

Здравствуйте.

Вопросы те же. Тестирование сертификата проходит без проблем через СервисПротестироватьПо сертификату?
В каком хранилище сертификат «Локальный компьютер»?

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW


Offline

R.Salo

 


#6
Оставлено
:

29 октября 2019 г. 10:56:15(UTC)

R.Salo

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

Группы: Участники

Зарегистрирован: 29.10.2019(UTC)
Сообщений: 4
Российская Федерация
Откуда: Благовещенск

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

тестирование проходит, хранилище — текущий пользователь-личные-реестр


Вверх

Offline

R.Salo

 


#7
Оставлено
:

1 ноября 2019 г. 2:45:47(UTC)

R.Salo

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

Группы: Участники

Зарегистрирован: 29.10.2019(UTC)
Сообщений: 4
Российская Федерация
Откуда: Благовещенск

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

Добрый день, нет решения проблемы?


Вверх

Offline

two_oceans

 


#8
Оставлено
:

1 ноября 2019 г. 5:02:06(UTC)

two_oceans

Статус: Эксперт

Группы: Участники

Зарегистрирован: 05.03.2015(UTC)
Сообщений: 1,598
Российская Федерация
Откуда: Иркутская область

Сказал(а) «Спасибо»: 110 раз
Поблагодарили: 388 раз в 363 постах

Добрый день. Меня как-то смущает что код 0 в первом сообщении, у Вас такой же код? Многое зависит от конкретной схемы работы 1С. На всякий случай, кратко пробегусь по основным моментам, может у Вас тоже идеи возникнут что не так.

Цепочка сертификата в порядке? Корневые/промежуточные сертификаты УЦ желательно ставить в хранилище компьютера, чтобы проверка цепочки не зависела от того от имени какого пользователя запущен процесс. Имя хранилища тоже должно быть правильное: конечный сертификат в личные, промежуточный в промежуточные, корневой в доверенные корневые, что бы не было сертификатов УЦ в личных или сертификата корневого в промежуточных.

1С запускается под другим пользователем, не под тем от имени которого тестируете? Например, у нас 1С запускается под отдельной учетной записью и для этой записи запрещен интерактивный вход, то есть вот так просто нельзя под ней зайти и установить сертификат. Если запускается под другим пользователем, то сертификат вероятно должен быть установлен для того пользователя, так как сертификаты в хранилище одного пользователя не видят другие пользователи. Аналогично с контейнерами в реестре — они не видны другим пользователям. Напротив, контейнеры на флешке, токене, несистемном разделе — видны (всем пользователям) и в режиме пользователя и в режиме компьютера. Если используется кластер, то еще и потребуется установить на каждый сервер кластера.

Если подписание 1С запускается в службе нужен компонент Криптопровайдер уровня ОС. Если запускается от LocalSystem или виртуальной учетной записи службы, то вообще имеет смысл использовать хранилище компьютера для сертификата и не хранить контейнер в реестре, не забудьте дать права на контейнер для этой учетной записи (как в хранилище, так и доступ к папке на носителе или доступ к токену). Виртуальных учетных записей служб нет в поиске пользователей, их нужно вводить вручную. Кто-то жаловался что у него с виртуальными учетными записями не вышло, но лично я не проверял.


Вверх

Offline

danila24

 


#9
Оставлено
:

5 ноября 2019 г. 6:27:08(UTC)

danila24

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

Группы: Участники

Зарегистрирован: 09.09.2019(UTC)
Сообщений: 3
Российская Федерация
Откуда: Красноярск

Поблагодарили: 1 раз в 1 постах

Во первых на сервере должна работать служба КриптоПро по хранению ключей. Ее надо устанавливать при установке крипто про.
Также на сервере должен быть установлен закрытый ключ как для локальной машины, так и для пользователя, под которым работает служба 1с сервера.
В менеджере сертификатов у закрытого ключа для локальной машины, надо дать доступ пользователю, под которым будет выполняться подписание. В нашем случае мы сделали, чтобы сервер 1С работал под доменным пользователем, которому и дали прав на работу с закрытым ключом локальной машины.
После этого всё заработало.

Отредактировано пользователем 5 ноября 2019 г. 6:28:20(UTC)
 | Причина: Не указана


Вверх

thanks 1 пользователь поблагодарил danila24 за этот пост.

R.Salo

оставлено 07.11.2019(UTC)


Offline

R.Salo

 


#10
Оставлено
:

7 ноября 2019 г. 8:58:45(UTC)

R.Salo

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

Группы: Участники

Зарегистрирован: 29.10.2019(UTC)
Сообщений: 4
Российская Федерация
Откуда: Благовещенск

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

Автор: danila24 Перейти к цитате

Во первых на сервере должна работать служба КриптоПро по хранению ключей. Ее надо устанавливать при установке крипто про.
Также на сервере должен быть установлен закрытый ключ как для локальной машины, так и для пользователя, под которым работает служба 1с сервера.
В менеджере сертификатов у закрытого ключа для локальной машины, надо дать доступ пользователю, под которым будет выполняться подписание. В нашем случае мы сделали, чтобы сервер 1С работал под доменным пользователем, которому и дали прав на работу с закрытым ключом локальной машины.
После этого всё заработало.

Огромное СПАСИБО! Ваши советы помогли)))


Вверх
Пользователи, просматривающие эту тему

Guest

Форум КриптоПро
 » 
Средства криптографической защиты информации
 » 
КриптоПро CSP 4.0
 » 
Ошибка при получении свойства сертификата (0x00000000) (на сервере 1С)

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

Здравствуйте, прошу помочь в следующем вопросе:

Есть простенький код, который подписывает строку:

Перем МК;

Сертификат = "";
ТипыХранилищ = Новый Массив;
ТипыХранилищ.Добавить(ТипХранилищаСертификатовКриптографии.ПерсональныеСертификаты);
МК = Новый МенеджерКриптографии("", "", 78);

Хранилище = МК.ПолучитьХранилищеСертификатов(ТипХранилищаСертификатовКриптографии.ПерсональныеСертификаты);
СертификатыХранилища = Хранилище.ПолучитьВсе();

Сертификат = СертификатыХранилища[0];

Стр = ПолучитьДвоичныеДанныеИзСтроки("123456");

Результат = МК.Подписать(Стр, Сертификат);


На компьютере установлен криптопровайдер VipNet CSP

Валится ошибка: «Ошибка при получении свойства сертификата (0x00000000)»

Проверил все, что мог:
1. сертификат действительный и связан с закрытым ключом
(скрин приложил)

2. Другими программами этот сертификат можно использовать (для подписания, например)

3. Может, думаю, тип криптопровайдера указал неверно (78) — нет, правильно, если указать другой тип — то ошибка именно в типе криптопровайдера.

Посмотрел, что содержит переменная сертификат в отладчике (скрин) — сертификат есть, вроде бы все нормально:

В интернете накопал только информацию, что сертификат не связан с закрытым ключом, а у меня он связан.

Коллеги, куда смотреть, куда копнуть?

Здравствуйте, прошу помочь в следующем вопросе:

Есть простенький код, который подписывает строку:

Перем МК;

Сертификат = "";
ТипыХранилищ = Новый Массив;
ТипыХранилищ.Добавить(ТипХранилищаСертификатовКриптографии.ПерсональныеСертификаты);
МК = Новый МенеджерКриптографии("", "", 78);

Хранилище = МК.ПолучитьХранилищеСертификатов(ТипХранилищаСертификатовКриптографии.ПерсональныеСертификаты);
СертификатыХранилища = Хранилище.ПолучитьВсе();

Сертификат = СертификатыХранилища[0];

Стр = ПолучитьДвоичныеДанныеИзСтроки("123456");

Результат = МК.Подписать(Стр, Сертификат);


На компьютере установлен криптопровайдер VipNet CSP

Валится ошибка: «Ошибка при получении свойства сертификата (0x00000000)»

Проверил все, что мог:
1. сертификат действительный и связан с закрытым ключом
(скрин приложил)

2. Другими программами этот сертификат можно использовать (для подписания, например)

3. Может, думаю, тип криптопровайдера указал неверно (78) — нет, правильно, если указать другой тип — то ошибка именно в типе криптопровайдера.

Посмотрел, что содержит переменная сертификат в отладчике (скрин) — сертификат есть, вроде бы все нормально:

В интернете накопал только информацию, что сертификат не связан с закрытым ключом, а у меня он связан.

Коллеги, куда смотреть, куда копнуть?

Форум КриптоПро
 » 
Средства криптографической защиты информации
 » 
КриптоПро CSP 4.0
 » 
Ошибка при получении свойства сертификата (0x00000000) (на сервере 1С)


Offline

danila24

 


#1
Оставлено
:

9 сентября 2019 г. 8:54:24(UTC)

danila24

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

Группы: Участники

Зарегистрирован: 09.09.2019(UTC)
Сообщений: 3
Российская Федерация
Откуда: Красноярск

Поблагодарили: 1 раз в 1 постах

Здравствуйте.
На сервере Windows Server 2016 стоит КриптоПро CSP 4.0.9680, Версия ядра СКЗИ: 4.0.9006 КС1. Лицензия серверная.
Также на этом сервере установлен сервер 1С 8.3.14.1630. Сервер 1С запускается под учетной записью.
Проблема в следующем: при попытке подписания документов в 1С на клиенте ошибок не возникает, всё подписывается и проверяется, но при попытке выполнения такой операции на сервере возникает ошибка:
Ошибка при получении свойства сертификата (0x00000000).


Вверх

Offline

Андрей Писарев

 


#2
Оставлено
:

9 сентября 2019 г. 11:05:57(UTC)

Андрей *

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

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,736
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1838 раз в 1421 постах

Здравствуйте.

Расскажите, где как устанавливали сертификат, под какой учётной записью,
какой кодвызов функции даёт ошибку.

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW


Offline

danila24

 


#3
Оставлено
:

9 сентября 2019 г. 11:19:13(UTC)

danila24

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

Группы: Участники

Зарегистрирован: 09.09.2019(UTC)
Сообщений: 3
Российская Федерация
Откуда: Красноярск

Поблагодарили: 1 раз в 1 постах


Вверх

Offline

R.Salo

 


#4
Оставлено
:

29 октября 2019 г. 10:05:13(UTC)

R.Salo

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

Группы: Участники

Зарегистрирован: 29.10.2019(UTC)
Сообщений: 4
Российская Федерация
Откуда: Благовещенск

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

Добрый день, не могли бы вы поделиться решением этой проблемы?такая же ошибка на новом сервере , не можем разобраться.


Вверх

Offline

Андрей Писарев

 


#5
Оставлено
:

29 октября 2019 г. 10:16:09(UTC)

Андрей *

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

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,736
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1838 раз в 1421 постах

Автор: R.Salo Перейти к цитате

Добрый день, не могли бы вы поделиться решением этой проблемы?такая же ошибка на новом сервере , не можем разобраться.

Здравствуйте.

Вопросы те же. Тестирование сертификата проходит без проблем через СервисПротестироватьПо сертификату?
В каком хранилище сертификат «Локальный компьютер»?

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW


Offline

R.Salo

 


#6
Оставлено
:

29 октября 2019 г. 10:56:15(UTC)

R.Salo

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

Группы: Участники

Зарегистрирован: 29.10.2019(UTC)
Сообщений: 4
Российская Федерация
Откуда: Благовещенск

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

тестирование проходит, хранилище — текущий пользователь-личные-реестр


Вверх

Offline

R.Salo

 


#7
Оставлено
:

1 ноября 2019 г. 2:45:47(UTC)

R.Salo

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

Группы: Участники

Зарегистрирован: 29.10.2019(UTC)
Сообщений: 4
Российская Федерация
Откуда: Благовещенск

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

Добрый день, нет решения проблемы?


Вверх

Offline

two_oceans

 


#8
Оставлено
:

1 ноября 2019 г. 5:02:06(UTC)

two_oceans

Статус: Эксперт

Группы: Участники

Зарегистрирован: 05.03.2015(UTC)
Сообщений: 1,598
Российская Федерация
Откуда: Иркутская область

Сказал(а) «Спасибо»: 110 раз
Поблагодарили: 388 раз в 363 постах

Добрый день. Меня как-то смущает что код 0 в первом сообщении, у Вас такой же код? Многое зависит от конкретной схемы работы 1С. На всякий случай, кратко пробегусь по основным моментам, может у Вас тоже идеи возникнут что не так.

Цепочка сертификата в порядке? Корневые/промежуточные сертификаты УЦ желательно ставить в хранилище компьютера, чтобы проверка цепочки не зависела от того от имени какого пользователя запущен процесс. Имя хранилища тоже должно быть правильное: конечный сертификат в личные, промежуточный в промежуточные, корневой в доверенные корневые, что бы не было сертификатов УЦ в личных или сертификата корневого в промежуточных.

1С запускается под другим пользователем, не под тем от имени которого тестируете? Например, у нас 1С запускается под отдельной учетной записью и для этой записи запрещен интерактивный вход, то есть вот так просто нельзя под ней зайти и установить сертификат. Если запускается под другим пользователем, то сертификат вероятно должен быть установлен для того пользователя, так как сертификаты в хранилище одного пользователя не видят другие пользователи. Аналогично с контейнерами в реестре — они не видны другим пользователям. Напротив, контейнеры на флешке, токене, несистемном разделе — видны (всем пользователям) и в режиме пользователя и в режиме компьютера. Если используется кластер, то еще и потребуется установить на каждый сервер кластера.

Если подписание 1С запускается в службе нужен компонент Криптопровайдер уровня ОС. Если запускается от LocalSystem или виртуальной учетной записи службы, то вообще имеет смысл использовать хранилище компьютера для сертификата и не хранить контейнер в реестре, не забудьте дать права на контейнер для этой учетной записи (как в хранилище, так и доступ к папке на носителе или доступ к токену). Виртуальных учетных записей служб нет в поиске пользователей, их нужно вводить вручную. Кто-то жаловался что у него с виртуальными учетными записями не вышло, но лично я не проверял.


Вверх

Offline

danila24

 


#9
Оставлено
:

5 ноября 2019 г. 6:27:08(UTC)

danila24

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

Группы: Участники

Зарегистрирован: 09.09.2019(UTC)
Сообщений: 3
Российская Федерация
Откуда: Красноярск

Поблагодарили: 1 раз в 1 постах

Во первых на сервере должна работать служба КриптоПро по хранению ключей. Ее надо устанавливать при установке крипто про.
Также на сервере должен быть установлен закрытый ключ как для локальной машины, так и для пользователя, под которым работает служба 1с сервера.
В менеджере сертификатов у закрытого ключа для локальной машины, надо дать доступ пользователю, под которым будет выполняться подписание. В нашем случае мы сделали, чтобы сервер 1С работал под доменным пользователем, которому и дали прав на работу с закрытым ключом локальной машины.
После этого всё заработало.

Отредактировано пользователем 5 ноября 2019 г. 6:28:20(UTC)
 | Причина: Не указана


Вверх

thanks 1 пользователь поблагодарил danila24 за этот пост.

R.Salo

оставлено 07.11.2019(UTC)


Offline

R.Salo

 


#10
Оставлено
:

7 ноября 2019 г. 8:58:45(UTC)

R.Salo

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

Группы: Участники

Зарегистрирован: 29.10.2019(UTC)
Сообщений: 4
Российская Федерация
Откуда: Благовещенск

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

Автор: danila24 Перейти к цитате

Во первых на сервере должна работать служба КриптоПро по хранению ключей. Ее надо устанавливать при установке крипто про.
Также на сервере должен быть установлен закрытый ключ как для локальной машины, так и для пользователя, под которым работает служба 1с сервера.
В менеджере сертификатов у закрытого ключа для локальной машины, надо дать доступ пользователю, под которым будет выполняться подписание. В нашем случае мы сделали, чтобы сервер 1С работал под доменным пользователем, которому и дали прав на работу с закрытым ключом локальной машины.
После этого всё заработало.

Огромное СПАСИБО! Ваши советы помогли)))


Вверх
Пользователи, просматривающие эту тему

Guest

Форум КриптоПро
 » 
Средства криптографической защиты информации
 » 
КриптоПро CSP 4.0
 » 
Ошибка при получении свойства сертификата (0x00000000) (на сервере 1С)

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

Разгребая свои очередные заметки по тому, каким образом была решена та или иная проблема я наткнулся на, казалось бы, простую, на первый взгляд, проблему – ошибку “Ошибка при получении свойства сертификата (0x00000000)”, которая генерировалась при попытке установки нового сертификата в 1С. Но я потратил почти день на поиски решения… Наверное, в силу небольшого опыта работы с 1С. Мне редко приходится заниматься 1С, но иногда какие-то задачи на меня прилетаю.

По итогу решение оказалось простое, но не совсем очевидное (да, это был кэш). Возможно, это позволит сэкономить вам какое-то время при решении подобное проблемы.

Описание проблемы

При проверки настроек сертификата электронной подписи в 1С геренируется ошибка “Ошибка при получении свойства сертификата (0x00000000)”:

Окружение

Версия платформы: 1С:Предприятие 8.3 (8.3.17.1851)

Конфигурация 1С: Управление торговлей, редакция 11 (11.4.13.282

Версия Крипто Про: 5.0.12000 KC1

Операциолнная системы: Windows Server 2008 R2 Standard x64.

ЭЦП расположена на токене Rutoken Lite.

Какие шаги не помогли решить проблемы

Итак, какие шаги я выполнял для устранения проблемы, но они не помогли решить проблему:

1. В Крипто Про я протестировал контейнер закрытого ключа. Проблем не обнаружено. Закрытый ключ присутствует на токене.

2. В какой-то момент генерировалась ошибка “Сертификат не имеет связи с закрытым ключом”, но я выполнил шаги из этого руководства для устранения этой ошибки.

3. Также я установил сертификат в личный контейнер пользователя.

4. Еще пробовал установить сертификат в личный контейнер пользователя вот таким способом.

5. Проверил наличие закрытого ключа в личном контейнере пользователя.

6. Пометил сертификат на удаление, удилил его и попробовал добавить сертификат заново.

7. Перезагружал сервер после выполнения шагов выше (несчетное количество раз).

8. Обновил версию Крипто Про до 5.0.12000 KC1.

Иногда менялась последовательность и комбинация действий. Это из того, что вспомнилось. Возможно делал что-то еще, но не столь важное.

Решение

Как видно из предыдущего раздела я выполнил довольно много действий, но тут я приведу то последнее действие, которое в итоге помогло мне решить проблему. Да, скорее всего, какие-то из действий предыдущего раздела были необходимо и без них решение ниже не помогло бы. Но я не могу сказать какие именно.

Как в итоге я смог устранить эту ошибку:

1. Пометил сертификат на удаление и удалил через удаление помеченных на удаление объектов (ток его удалил, другое ничего не удалял).

2. Очистил кэш 1С для пользователя.

3. Повторно импортировал сертификат.

Да, все таки думаю, что это было из-за кэша 1С. Где-то осела какая-то не актуальная информация о сертификате.

Результаты поиска по запросу:

0x00000000

  • Настройка КриптоПРО для работы с 1С-ЭДО в Linux

    Для работы на Linux рекомендуется использовать последнюю сертифицированную версию КриптоПро CSP.

    Также для работы через браузер потребуется установка расширения для работы с файлами, а также крипторасширение  – подробнее см. п. 3 данной статьи.

    Для работы с системой маркировки…

  • Настройка КриптоПРО для работы с 1С-ЭДО в macOS

    Для работы на macOS рекомендуется использовать последнюю сертифицированную версию КриптоПро CSP.

    Для работы в тонком клиенте необходимо использовать версию платформы 8.3.15.2107, 8.3.16.1791, 8.3.17.1823, 8.3.18.1128 или выше.

    Также для работы через браузер потребуется установка ра…

  • Ошибка при получении свойства сертификата (0x00000000)

    Ошибка при получении свойства сертификата (0x00000000) — это проявление ошибки отсутствия связи сертификата в Личном списке сертификатов пользователя ОС с контейнером закрытого ключа.

    Чтобы определить под каким пользователем ОС (на каком компьютере), необходимо наличие…

При возникновении перечисленных далее ошибок воспользуйтесь стандартными действиями для решения проблем с криптографией. Ошибки могут возникать при подписании и расшифровке (отправке отчета, обмене, отправке заявления, обновлении статуса заявления и т.д.):

  • набор ключей не определен;
  • неправильный открытый ключ поставщика;
  • не найден сертификат и открытый ключ для расшифровки;
  • не найден сертификат руководителя в системном хранилище сертификатов;
  • не удалось расшифровать файл обновлений;
  • ошибка инициализации криптопровайдера;
  • плохие данные;
  • ошибка при получении свойств сертификата. Не удалось выполнить подписание сертификатом, Федеральная налоговая служба по причине Ошибка при получении свойства сертификата (0x0000000);

  • ошибка интерфейса модуля криптографии. Отсутствует набор ключей. Не удалось выполнить подписание сертификатом по причине: Ошибка интерфейса модуля криптографии. Отсутствует набор ключей;

  • ошибка при получении контекста модуля криптографии. Не удалось выполнить подписание сертификатом , Федеральная налоговая служба по причине Ошибка при получении контекста модуля криптографии;

  • модуль криптографии не поддерживает алгоритмов подписи. Не удалось выполнить подписание сертификатом по причине: Модуль криптографии не поддерживает алгоритмов подписи. Не удалось подписать файл по причине…;

  • не удалось подписать файл по причине: Неправильный зарегистрированный набор ключей. Неправильный зарегистрированный набор ключей. Ошибка подписания документа: Обращение налогоплательщика, связанное с циклом обмена По причине: Не удалось подписать файл по причине…;

  • не удалось подписать файл по причине: Ошибка исполнения функции. Не удалось подписать файл по причине: Ошибка исполнения функции. Ошибка подписания документа: Запрос на информационное обслуживание налогоплательщика, связанное с циклом обмена.

cmex

01.06.20 — 11:16

Добрый день!

Для использования всех методов необходимо иметь УКЭП. Кто нибудь из 1С уже работал по API? Как получить тестовую УКЭП, как использовать уже имеющуюся УКЭП директора организации на Сервере, чтобы автоматом можно было подписывать? Кто сталкивался? Просветите, как процесс устроен? Слышал, про тестовый УЦ, где выдают УКЭП, но не понял как с этим работать. В общем, буду признателен за любую информацию

cmex

1 — 01.06.20 — 14:21

up

ChMikle

2 — 01.06.20 — 14:25

cmex

3 — 01.06.20 — 17:08

(2) Спасибо

timurhv

4 — 01.06.20 — 17:13

Тестовая УКЭП должна быть на имя директора (если стоит KIS, то его лучше закрыть, т.к. из-за сертификата тестового сервера не пускает дальше регистрировать):

https://ismp.wiki/index.php?title=Софт

Если выходит ошибка регистрации на тестовой площадке — писать в тех.поддержку ЧЗ.

lodger

5 — 01.06.20 — 18:46

(0)

1) есть боевой и есть тестовый контур API

2) ключ можно использовать один и тот же.

3) нет нужды использовать ключ на сервере. достаточно сотворить токен авторизации на клиенте и отдать его на сервер.

4) у токена есть время жизни, 10 часов.

cmex

6 — 02.06.20 — 13:29

(5) удалось получить сертификат в Тестовом подчиненном УЦ КриптоПро. Установил сертификат под своей учеткой в ОС

Далее пишу код

ИнтеграционныйСтенд = «int01.gismt.crpt.tech/api/v3/true-api»;

Соединение = Новый HTTPСоединение(ИнтеграционныйСтенд,,,,,, Новый ЗащищенноеСоединениеOpenSSL);

HTTPЗапрос = Новый HTTPЗапрос(«/auth/key»);

HTTPОтвет = Соединение.ВызватьHTTPМетод(«GET», HTTPЗапрос);    

СтрокаJSON = HTTPОтвет.ПолучитьТелоКакСтроку();

ЧтениеJSON = Новый ЧтениеJSON;

ЧтениеJSON.УстановитьСтроку(СтрокаJSON);

Структура = ПрочитатьJSON(ЧтениеJSON);

ЧтениеJSON.Закрыть();

МенеджерКриптографии = Новый МенеджерКриптографии(«Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider», «», 75);

Хранилище = МенеджерКриптографии.ПолучитьХранилищеСертификатов();

СертификатыХранилища = Хранилище.ПолучитьВсе();

Сертификат = СертификатыХранилища[0];    

ДД = ПолучитьДвоичныеДанныеИзСтроки(Структура.data);

Результат = МенеджерКриптографии.Подписать(ДД, Сертификат);

ЗаписьJSON = Новый ЗаписьJSON;

ЗаписьJSON.УстановитьСтроку();

ЗаписатьJSON(ЗаписьJSON, Структура);

СтрокаJSON = ЗаписьJSON.Закрыть();

Заголовки = Новый Соответствие;    

Заголовки.Вставить(«Content-Type», «application/json; charset=utf-8»);

Заголовки.Вставить(«cache-control», «no-cache»);

HTTPЗапрос = Новый HTTPЗапрос(«/auth/simpleSignIn», Заголовки);    

HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаJSON);

Попытка

    HTTPОтвет = Соединение.ВызватьHTTPМетод(«POST», HTTPЗапрос);    

Исключение

    Сообщить(ОписаниеОшибки());

КонецПопытки;

Вываливается ошибка «Ошибка при получении свойства сертификата (0x00000000)»

Это я не так пользуюсь менеджером или этот ключ не может в принципе подписать? Читал про какой то закрытый ключ, но его в сертификате не увидел

Вот некая инфа по сертификату

Версия    «V3»    Строка

ДатаНачала    01.06.2020 8:26:46    Дата

ДатаОкончания    01.09.2020 8:36:46    Дата

CN    «Тестовый подчиненный УЦ ООО «КРИПТО-ПРО» ГОСТ 2012 (УЦ 2.0)»    Строка

Крипто ПРО csp 4.0

cmex

7 — 02.06.20 — 13:32

(5) у меня регламент будет работать с API, то есть сервер, поэтому на клиент доступа нет. может есть какой вариант другой? я слабо представляю как устроена вся схема работы эцп

Garykom

8 — 02.06.20 — 13:37

(7) У вас два варианта или самим разбираться или кого то нанимать кто уже разобрался

cmex

9 — 02.06.20 — 13:49

(8) почему 2? я бы помог, если бы знал, форму для этого и нужен, имхо

cmex

10 — 02.06.20 — 13:58

(9) *форум

Garykom

11 — 02.06.20 — 14:23

(9) Потому что там нет ничего сложного, обычная работа, которую бесплатно хрен кто будет делать.

Мануалы есть и они достаточно вменяемы, есть форум ЧЗ если что и прочие форумы.

В т.ч. как запросы по http делать или с криптопро/сертификатами работать

Garykom

12 — 02.06.20 — 14:24

Ты конкретные вопросы задавай что не получается а не «помогите мне кто нибудь — сделайте за меня или дайте разжеванное/готовое»

cmex

13 — 02.06.20 — 14:37

(12) ок, по мануалу разобрался. подписать вроде удалось, но в ответ на post запрос прилетает {«error_message»:»Ошибка при проверке подписи»}

подписываю, кодирую и отправляю так

ДД = ПолучитьДвоичныеДанныеИзСтроки(data, КодировкаТекста.UTF8);

РезультатДД = МенеджерКриптографии.Подписать(ДД, Сертификат);

РезультатСтрока = Base64Строка(РезультатДД);

может я в двоичные данные строку исходную не так перевожу? как правильно подписать?

Garykom

14 — 02.06.20 — 14:43

Вариант синтаксиса: Данные подписи сохраняются в файл

Синтаксис:

Подписать(<ИсходныеДанные>, <ВыходныеДанные>, <Сертификат>)

Параметры:

<ИсходныеДанные> (обязательный)

Тип: Строка, ДвоичныеДанные, Поток, ПотокВПамяти, ФайловыйПоток.

Исходные данные для подписывания.

Данные могут размещаться в файле (в этом случае указывается имя файла) или представлены как ДвоичныеДанные.

<ВыходныеДанные> (обязательный)

Тип: Строка: Поток, ПотокВПамяти, ФайловыйПоток.

Имя файла или поток, в который будут выгружены подписанные данные.

<Сертификат> (необязательный)

Тип: СертификатКриптографии.

Используемый сертификат криптографии.

Если параметр не указан, то в хранилище персональных сертификатов должен быть ровно один сертификат. В противном случае генерируется исключительная ситуация.

Описание варианта метода:

Подписанные данные записываются в файл. Возвращает Неопределено.

cmex

15 — 02.06.20 — 14:46

(14) намекаете, что надо пописать строку, предварительно не переводя в ДД?

cmex

16 — 02.06.20 — 14:46

(15) *подДписать)

Garykom

17 — 02.06.20 — 14:47

(14)+ Только уверен что апи требует прикрепленную подпись?

Если нужна открепленная то стандартный менеджер не пойдет и надо нечто вроде http://catalog.mista.ru/public/1058940/

cmex

18 — 02.06.20 — 14:47

(17) из Мануала —  data String + Подписанные УКЭП зарегистрированного УОТ случайные данные в base64 (ЭП

присоединенная)

Garykom

19 — 02.06.20 — 14:47

(16) А фуй знает что надо, надо разбираться

Лично я не имею представления по какому мануалу и что твоя делать

cmex

20 — 02.06.20 — 14:48

(19) v5 — Документация для партнёров по True API

Garykom

21 — 02.06.20 — 14:49

(18) Тогда попробуй имя файла входного и выходного указывать в Подписать

А затем сравнить с тем что выходит другими способами подписи того же файла.

Есть у криптопро cryptcp и csptest

Garykom

22 — 02.06.20 — 14:51

Garykom

23 — 02.06.20 — 14:55

cmex

24 — 02.06.20 — 15:30

все попробовал — не взлетает пока. чую, что близко, но пока никак

timurhv

25 — 02.06.20 — 16:27

Процедура ОбновитьТокен(ВидAPI, СледующееОповещение)

    АдресМетода = «/api/v3/auth/cert/key»;

    …

    HTTPСервисЗапрос = Новый HTTPСоединение(СтруктураПодключения[АдресAPI],,,,,60, Новый ЗащищенноеСоединениеopenSSL());

    Запрос = Новый HTTPЗапрос(АдресМетода);

    Ответ = HTTPСервисЗапрос.Получить(Запрос);

    Если Ответ.КодСостояния = 200 Тогда

        …

        МассивСертификатов = Новый Массив();

        Если ЗначениеЗаполнено(СертификатыКлючейЭлектроннойПодписиИШифрования) Тогда

            МассивСертификатов.Добавить(СертификатыКлючейЭлектроннойПодписиИШифрования);

        КонецЕсли;

        СтруктураОсновныхДанных = Новый Структура();

        СтруктураОсновныхДанных.Вставить(«СтрокаJSON», ОтветСтруктура.data);

        СтруктураОсновныхДанных.Вставить(«МассивСертификатов», МассивСертификатов);

        СтруктураОсновныхДанных.Вставить(«Открепленная», Ложь);

        СтруктураОсновныхДанных.Вставить(«СсылкаДокумента», «»);

        

        СтруктураДополнительныхДанных = Новый Структура();

        СтруктураДополнительныхДанных.Вставить(«СертификатПользователя», СертификатыКлючейЭлектроннойПодписиИШифрования);

        СтруктураДополнительныхДанных.Вставить(«ОтветСтруктура», ОтветСтруктура);

        СтруктураДополнительныхДанных.Вставить(«СледующееОповещение», СледующееОповещение);

        СтруктураДополнительныхДанных.Вставить(«HTTPСервисЗапрос», HTTPСервисЗапрос);

        ИнтеграцияИСМПСлужебныйКлиент.Подписать(СтруктураОсновныхДанных, Новый ОписаниеОповещения(«ОбработатьСообщения_ПриЗавершенииОперацииПодписи», ЭтотОбъект, СтруктураДополнительныхДанных));

    КонецЕсли;

КонецПроцедуры

Процедура ОбработатьСообщения_ПриЗавершенииОперацииПодписи(ПодписанныеСообщения, Контекст) Экспорт

    Если ПодписанныеСообщения = Неопределено Тогда

        Возврат;

    КонецЕсли;

    

    Для Каждого ЭлементСообщения Из ПодписанныеСообщения Цикл

        ПодписанныйФайл = ИнтеграцияИСКлиентСервер.ДвоичныеДанныеBase64(ЭлементСообщения.СвойстваПодписи.Подпись);

        HTTPСервисЗапрос = Контекст.HTTPСервисЗапрос;

        Тело = «{

        |»»uuid»»: «»» + Контекст.ОтветСтруктура.uuid + «»»,

        |»»data»»: «»» + ПодписанныйФайл + «»»

        |}»;

        АдресМетода = «api/v3/auth/cert/»;

        HTTPЗапрос = Новый HTTPЗапрос(АдресМетода);

        HTTPЗапрос.Заголовки.Вставить(«Content-Type»,»application/json;charset=UTF-8″);

        HTTPЗапрос.УстановитьТелоИзСтроки(Тело);

        Ответ = HTTPСервисЗапрос.ОтправитьДляОбработки(HTTPЗапрос);

    КонецЦикла;

КонецПроцедуры

timurhv

26 — 02.06.20 — 16:41

(13) Base64 = Base64Строка(ДвоичныеДанные);

Base64 = СтрЗаменить(Base64, Символы.ПС, «»);

Base64 = СтрЗаменить(Base64, Символы.ВК, «»);

Символы переноса скорее забыли убрать

cmex

27 — 03.06.20 — 11:16

(26) это из какой конфы? ИнтеграцияИСКлиентСервер.ДвоичныеДанныеBase64(ЭлементСообщения.СвойстваПодписи.Подпись);

cmex

28 — 03.06.20 — 11:33

кажись разобрался, вернусь с результатом

cmex

29 — 03.06.20 — 17:18

причина была в том, что 1совский метод Подписать НЕ включает данные в подпись, как того требует ЧЗ. Для этого необходимо использовать внешнюю компоненту.

вот код рабочий. саму компоненту дернул из 11.4

МенеджерКриптографии = Новый МенеджерКриптографии(«Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider», «», 80);

    Хранилище = МенеджерКриптографии.ПолучитьХранилищеСертификатов();

    СертификатыХранилища = Хранилище.ПолучитьВсе();

    Сертификат = СертификатыХранилища[0];

    

    Макет = ПолучитьМакетНаСервере();

    Адрес = ПоместитьВоВременноеХранилище(Макет);     

    Если ПодключитьВнешнююКомпоненту(Адрес, «XMLDSignAddInSymbolicName», ТипВнешнейКомпоненты.Native) Тогда

        Попытка

            ОбъектКомпоненты = Новый(«AddIn.XMLDSignAddInSymbolicName.XMLDSignAddIn»);

            Если ОбъектКомпоненты = Неопределено Тогда

                ВызватьИсключение НСтр(«ru = ‘Оператор Новый вернул Неопределено’»);

            КонецЕсли;

        Исключение

            ВызватьИсключение НСтр(«ru = ‘Не удалось чуток’»);            

        КонецПопытки;        

    КонецЕсли;    

    ОбъектКомпоненты.ПутьККриптопровайдеру = «»;

    СертификатКриптографииBase64 = СертификатКриптографииBase64(Сертификат.Выгрузить());    

    Попытка

        SignatureValue = ОбъектКомпоненты.CMSSign(

            Структура.data, //данные тип строка

            СертификатКриптографииBase64, //выгруженный в ДД сертификат в base64

            «», //пароль

            0, //тип подписи «CAdES-BES»

            Ложь, //открепленная

            17, //РежимВключенияСертификатовКриптографии.ВключатьПолнуюЦепочку

            0) //тип входных данных Строка;

    Исключение

        ВызватьИсключение НСтр(«ru = ‘Ошибка вызова метода CMSSign компоненты XMLDSig.’») + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());

    КонецПопытки;    

    Подпись = Base64Значение(SignatureValue);

    
    Структура.data = ДвоичныеДанныеBase64(Подпись);

    

    ЗаписьJSON = Новый ЗаписьJSON;

    ЗаписьJSON.УстановитьСтроку();

    ЗаписатьJSON(ЗаписьJSON, Структура);

    СтрокаJSON = ЗаписьJSON.Закрыть();

    

    Заголовки = Новый Соответствие;    

    Заголовки.Вставить(«Content-Type», «application/json; charset=utf-8»);

    Заголовки.Вставить(«cache-control», «no-cache»);

    HTTPЗапрос = Новый HTTPЗапрос(«/auth/simpleSignIn», Заголовки);    

    HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаJSON);

    Попытка

        HTTPОтвет = Соединение.ВызватьHTTPМетод(«POST», HTTPЗапрос);    

    Исключение

        Сообщить(ОписаниеОшибки());

    КонецПопытки;

    

    Если Не HTTPОтвет.КодСостояния = 200 Тогда

        Сообщить(«Код состояния не равен 200»);

        Возврат;

    КонецЕсли;

    

    СтрокаJSON = HTTPОтвет.ПолучитьТелоКакСтроку();

    ЧтениеJSON = Новый ЧтениеJSON;

    ЧтениеJSON.УстановитьСтроку(СтрокаJSON);

    Структура = ПрочитатьJSON(ЧтениеJSON);

    ЧтениеJSON.Закрыть();

    
    Токен = Структура.token;

timurhv

30 — 04.06.20 — 10:10

(29) БСП нет разве в конфе?

cmex

31 — 04.06.20 — 13:14

(30) нет, 11.1

  

VitShvets

32 — 19.06.20 — 16:51

(29) Спасибо тебе, добрый человек.

При возникновении перечисленных далее ошибок воспользуйтесь стандартными действиями для решения проблем с криптографией. Ошибки могут возникать при подписании и расшифровке (отправке отчета, обмене, отправке заявления, обновлении статуса заявления и т.д.):

  • набор ключей не определен;
  • неправильный открытый ключ поставщика;
  • не найден сертификат и открытый ключ для расшифровки;
  • не найден сертификат руководителя в системном хранилище сертификатов;
  • не удалось расшифровать файл обновлений;
  • ошибка инициализации криптопровайдера;
  • плохие данные;
  • ошибка при получении свойств сертификата. Не удалось выполнить подписание сертификатом, Федеральная налоговая служба по причине Ошибка при получении свойства сертификата (0x0000000);

  • ошибка интерфейса модуля криптографии. Отсутствует набор ключей. Не удалось выполнить подписание сертификатом по причине: Ошибка интерфейса модуля криптографии. Отсутствует набор ключей;

  • ошибка при получении контекста модуля криптографии. Не удалось выполнить подписание сертификатом , Федеральная налоговая служба по причине Ошибка при получении контекста модуля криптографии;

  • модуль криптографии не поддерживает алгоритмов подписи. Не удалось выполнить подписание сертификатом по причине: Модуль криптографии не поддерживает алгоритмов подписи. Не удалось подписать файл по причине…;

  • не удалось подписать файл по причине: Неправильный зарегистрированный набор ключей. Неправильный зарегистрированный набор ключей. Ошибка подписания документа: Обращение налогоплательщика, связанное с циклом обмена По причине: Не удалось подписать файл по причине…;

  • не удалось подписать файл по причине: Ошибка исполнения функции. Не удалось подписать файл по причине: Ошибка исполнения функции. Ошибка подписания документа: Запрос на информационное обслуживание налогоплательщика, связанное с циклом обмена.

Результаты поиска по запросу:

0x00000000

  • Настройка КриптоПРО для работы с 1С-ЭДО в Linux

    Для работы на Linux рекомендуется использовать последнюю сертифицированную версию КриптоПро CSP.

    Также для работы через браузер потребуется установка расширения для работы с файлами, а также крипторасширение  – подробнее см. п. 3 данной статьи.

    Для работы с системой маркировки…

  • Настройка КриптоПРО для работы с 1С-ЭДО в macOS

    Для работы на macOS рекомендуется использовать последнюю сертифицированную версию КриптоПро CSP.

    Для работы в тонком клиенте необходимо использовать версию платформы 8.3.15.2107, 8.3.16.1791, 8.3.17.1823, 8.3.18.1128 или выше.

    Также для работы через браузер потребуется установка ра…

  • Ошибка при получении свойства сертификата (0x00000000)

    Ошибка при получении свойства сертификата (0x00000000) — это проявление ошибки отсутствия связи сертификата в Личном списке сертификатов пользователя ОС с контейнером закрытого ключа.

    Чтобы определить под каким пользователем ОС (на каком компьютере), необходимо наличие…

  

cmex

01.06.20 — 11:16

Добрый день!

Для использования всех методов необходимо иметь УКЭП. Кто нибудь из 1С уже работал по API? Как получить тестовую УКЭП, как использовать уже имеющуюся УКЭП директора организации на Сервере, чтобы автоматом можно было подписывать? Кто сталкивался? Просветите, как процесс устроен? Слышал, про тестовый УЦ, где выдают УКЭП, но не понял как с этим работать. В общем, буду признателен за любую информацию

  

cmex

1 — 01.06.20 — 14:21

up

  

ChMikle

2 — 01.06.20 — 14:25

  

cmex

3 — 01.06.20 — 17:08

(2) Спасибо

  

timurhv

4 — 01.06.20 — 17:13

Тестовая УКЭП должна быть на имя директора (если стоит KIS, то его лучше закрыть, т.к. из-за сертификата тестового сервера не пускает дальше регистрировать):

https://ismp.wiki/index.php?title=Софт

Если выходит ошибка регистрации на тестовой площадке — писать в тех.поддержку ЧЗ.

  

lodger

5 — 01.06.20 — 18:46

(0)

1) есть боевой и есть тестовый контур API

2) ключ можно использовать один и тот же.

3) нет нужды использовать ключ на сервере. достаточно сотворить токен авторизации на клиенте и отдать его на сервер.

4) у токена есть время жизни, 10 часов.

  

cmex

6 — 02.06.20 — 13:29

(5) удалось получить сертификат в Тестовом подчиненном УЦ КриптоПро. Установил сертификат под своей учеткой в ОС

Далее пишу код

ИнтеграционныйСтенд = «int01.gismt.crpt.tech/api/v3/true-api»;

Соединение = Новый HTTPСоединение(ИнтеграционныйСтенд,,,,,, Новый ЗащищенноеСоединениеOpenSSL);

HTTPЗапрос = Новый HTTPЗапрос(«/auth/key»);

HTTPОтвет = Соединение.ВызватьHTTPМетод(«GET», HTTPЗапрос);    

СтрокаJSON = HTTPОтвет.ПолучитьТелоКакСтроку();

ЧтениеJSON = Новый ЧтениеJSON;

ЧтениеJSON.УстановитьСтроку(СтрокаJSON);

Структура = ПрочитатьJSON(ЧтениеJSON);

ЧтениеJSON.Закрыть();

МенеджерКриптографии = Новый МенеджерКриптографии(«Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider», «», 75);

Хранилище = МенеджерКриптографии.ПолучитьХранилищеСертификатов();

СертификатыХранилища = Хранилище.ПолучитьВсе();

Сертификат = СертификатыХранилища[0];    

ДД = ПолучитьДвоичныеДанныеИзСтроки(Структура.data);

Результат = МенеджерКриптографии.Подписать(ДД, Сертификат);

ЗаписьJSON = Новый ЗаписьJSON;

ЗаписьJSON.УстановитьСтроку();

ЗаписатьJSON(ЗаписьJSON, Структура);

СтрокаJSON = ЗаписьJSON.Закрыть();

Заголовки = Новый Соответствие;    

Заголовки.Вставить(«Content-Type», «application/json; charset=utf-8»);

Заголовки.Вставить(«cache-control», «no-cache»);

HTTPЗапрос = Новый HTTPЗапрос(«/auth/simpleSignIn», Заголовки);    

HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаJSON);

Попытка

    HTTPОтвет = Соединение.ВызватьHTTPМетод(«POST», HTTPЗапрос);    

Исключение

    Сообщить(ОписаниеОшибки());

КонецПопытки;

Вываливается ошибка «Ошибка при получении свойства сертификата (0x00000000)»

Это я не так пользуюсь менеджером или этот ключ не может в принципе подписать? Читал про какой то закрытый ключ, но его в сертификате не увидел

Вот некая инфа по сертификату

Версия    «V3»    Строка

ДатаНачала    01.06.2020 8:26:46    Дата

ДатаОкончания    01.09.2020 8:36:46    Дата

CN    «Тестовый подчиненный УЦ ООО «КРИПТО-ПРО» ГОСТ 2012 (УЦ 2.0)»    Строка

Крипто ПРО csp 4.0

  

cmex

7 — 02.06.20 — 13:32

(5) у меня регламент будет работать с API, то есть сервер, поэтому на клиент доступа нет. может есть какой вариант другой? я слабо представляю как устроена вся схема работы эцп

  

Garykom

8 — 02.06.20 — 13:37

(7) У вас два варианта или самим разбираться или кого то нанимать кто уже разобрался

  

cmex

9 — 02.06.20 — 13:49

(8) почему 2? я бы помог, если бы знал, форму для этого и нужен, имхо

  

cmex

10 — 02.06.20 — 13:58

(9) *форум

  

Garykom

11 — 02.06.20 — 14:23

(9) Потому что там нет ничего сложного, обычная работа, которую бесплатно хрен кто будет делать.

Мануалы есть и они достаточно вменяемы, есть форум ЧЗ если что и прочие форумы.

В т.ч. как запросы по http делать или с криптопро/сертификатами работать

  

Garykom

12 — 02.06.20 — 14:24

Ты конкретные вопросы задавай что не получается а не «помогите мне кто нибудь — сделайте за меня или дайте разжеванное/готовое»

  

cmex

13 — 02.06.20 — 14:37

(12) ок, по мануалу разобрался. подписать вроде удалось, но в ответ на post запрос прилетает {«error_message»:»Ошибка при проверке подписи»}

подписываю, кодирую и отправляю так

ДД = ПолучитьДвоичныеДанныеИзСтроки(data, КодировкаТекста.UTF8);

РезультатДД = МенеджерКриптографии.Подписать(ДД, Сертификат);

РезультатСтрока = Base64Строка(РезультатДД);

может я в двоичные данные строку исходную не так перевожу? как правильно подписать?

  

Garykom

14 — 02.06.20 — 14:43

Вариант синтаксиса: Данные подписи сохраняются в файл

Синтаксис:

Подписать(<ИсходныеДанные>, <ВыходныеДанные>, <Сертификат>)

Параметры:

<ИсходныеДанные> (обязательный)

Тип: Строка, ДвоичныеДанные, Поток, ПотокВПамяти, ФайловыйПоток.

Исходные данные для подписывания.

Данные могут размещаться в файле (в этом случае указывается имя файла) или представлены как ДвоичныеДанные.

<ВыходныеДанные> (обязательный)

Тип: Строка: Поток, ПотокВПамяти, ФайловыйПоток.

Имя файла или поток, в который будут выгружены подписанные данные.

<Сертификат> (необязательный)

Тип: СертификатКриптографии.

Используемый сертификат криптографии.

Если параметр не указан, то в хранилище персональных сертификатов должен быть ровно один сертификат. В противном случае генерируется исключительная ситуация.

Описание варианта метода:

Подписанные данные записываются в файл. Возвращает Неопределено.

  

cmex

15 — 02.06.20 — 14:46

(14) намекаете, что надо пописать строку, предварительно не переводя в ДД?

  

cmex

16 — 02.06.20 — 14:46

(15) *подДписать)

  

Garykom

17 — 02.06.20 — 14:47

(14)+ Только уверен что апи требует прикрепленную подпись?

Если нужна открепленная то стандартный менеджер не пойдет и надо нечто вроде http://catalog.mista.ru/public/1058940/

  

cmex

18 — 02.06.20 — 14:47

(17) из Мануала —  data String + Подписанные УКЭП зарегистрированного УОТ случайные данные в base64 (ЭП

присоединенная)

  

Garykom

19 — 02.06.20 — 14:47

(16) А фуй знает что надо, надо разбираться

Лично я не имею представления по какому мануалу и что твоя делать

  

cmex

20 — 02.06.20 — 14:48

(19) v5 — Документация для партнёров по True API

  

Garykom

21 — 02.06.20 — 14:49

(18) Тогда попробуй имя файла входного и выходного указывать в Подписать

А затем сравнить с тем что выходит другими способами подписи того же файла.

Есть у криптопро cryptcp и csptest

  

Garykom

22 — 02.06.20 — 14:51

  

Garykom

23 — 02.06.20 — 14:55

  

cmex

24 — 02.06.20 — 15:30

все попробовал — не взлетает пока. чую, что близко, но пока никак

  

timurhv

25 — 02.06.20 — 16:27

Процедура ОбновитьТокен(ВидAPI, СледующееОповещение)

    АдресМетода = «/api/v3/auth/cert/key»;

    …

    HTTPСервисЗапрос = Новый HTTPСоединение(СтруктураПодключения[АдресAPI],,,,,60, Новый ЗащищенноеСоединениеopenSSL());

    Запрос = Новый HTTPЗапрос(АдресМетода);

    Ответ = HTTPСервисЗапрос.Получить(Запрос);

    Если Ответ.КодСостояния = 200 Тогда

        …

        МассивСертификатов = Новый Массив();

        Если ЗначениеЗаполнено(СертификатыКлючейЭлектроннойПодписиИШифрования) Тогда

            МассивСертификатов.Добавить(СертификатыКлючейЭлектроннойПодписиИШифрования);

        КонецЕсли;

        СтруктураОсновныхДанных = Новый Структура();

        СтруктураОсновныхДанных.Вставить(«СтрокаJSON», ОтветСтруктура.data);

        СтруктураОсновныхДанных.Вставить(«МассивСертификатов», МассивСертификатов);

        СтруктураОсновныхДанных.Вставить(«Открепленная», Ложь);

        СтруктураОсновныхДанных.Вставить(«СсылкаДокумента», «»);

        

        СтруктураДополнительныхДанных = Новый Структура();

        СтруктураДополнительныхДанных.Вставить(«СертификатПользователя», СертификатыКлючейЭлектроннойПодписиИШифрования);

        СтруктураДополнительныхДанных.Вставить(«ОтветСтруктура», ОтветСтруктура);

        СтруктураДополнительныхДанных.Вставить(«СледующееОповещение», СледующееОповещение);

        СтруктураДополнительныхДанных.Вставить(«HTTPСервисЗапрос», HTTPСервисЗапрос);

        ИнтеграцияИСМПСлужебныйКлиент.Подписать(СтруктураОсновныхДанных, Новый ОписаниеОповещения(«ОбработатьСообщения_ПриЗавершенииОперацииПодписи», ЭтотОбъект, СтруктураДополнительныхДанных));

    КонецЕсли;

КонецПроцедуры

Процедура ОбработатьСообщения_ПриЗавершенииОперацииПодписи(ПодписанныеСообщения, Контекст) Экспорт

    Если ПодписанныеСообщения = Неопределено Тогда

        Возврат;

    КонецЕсли;

    

    Для Каждого ЭлементСообщения Из ПодписанныеСообщения Цикл

        ПодписанныйФайл = ИнтеграцияИСКлиентСервер.ДвоичныеДанныеBase64(ЭлементСообщения.СвойстваПодписи.Подпись);

        HTTPСервисЗапрос = Контекст.HTTPСервисЗапрос;

        Тело = «{

        |»»uuid»»: «»» + Контекст.ОтветСтруктура.uuid + «»»,

        |»»data»»: «»» + ПодписанныйФайл + «»»

        |}»;

        АдресМетода = «api/v3/auth/cert/»;

        HTTPЗапрос = Новый HTTPЗапрос(АдресМетода);

        HTTPЗапрос.Заголовки.Вставить(«Content-Type»,»application/json;charset=UTF-8″);

        HTTPЗапрос.УстановитьТелоИзСтроки(Тело);

        Ответ = HTTPСервисЗапрос.ОтправитьДляОбработки(HTTPЗапрос);

    КонецЦикла;

КонецПроцедуры

  

timurhv

26 — 02.06.20 — 16:41

(13) Base64 = Base64Строка(ДвоичныеДанные);

Base64 = СтрЗаменить(Base64, Символы.ПС, «»);

Base64 = СтрЗаменить(Base64, Символы.ВК, «»);

Символы переноса скорее забыли убрать

  

cmex

27 — 03.06.20 — 11:16

(26) это из какой конфы? ИнтеграцияИСКлиентСервер.ДвоичныеДанныеBase64(ЭлементСообщения.СвойстваПодписи.Подпись);

  

cmex

28 — 03.06.20 — 11:33

кажись разобрался, вернусь с результатом

  

cmex

29 — 03.06.20 — 17:18

причина была в том, что 1совский метод Подписать НЕ включает данные в подпись, как того требует ЧЗ. Для этого необходимо использовать внешнюю компоненту.

вот код рабочий. саму компоненту дернул из 11.4

МенеджерКриптографии = Новый МенеджерКриптографии(«Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider», «», 80);

    Хранилище = МенеджерКриптографии.ПолучитьХранилищеСертификатов();

    СертификатыХранилища = Хранилище.ПолучитьВсе();

    Сертификат = СертификатыХранилища[0];

    

    Макет = ПолучитьМакетНаСервере();

    Адрес = ПоместитьВоВременноеХранилище(Макет);     

    Если ПодключитьВнешнююКомпоненту(Адрес, «XMLDSignAddInSymbolicName», ТипВнешнейКомпоненты.Native) Тогда

        Попытка

            ОбъектКомпоненты = Новый(«AddIn.XMLDSignAddInSymbolicName.XMLDSignAddIn»);

            Если ОбъектКомпоненты = Неопределено Тогда

                ВызватьИсключение НСтр(«ru = ‘Оператор Новый вернул Неопределено’»);

            КонецЕсли;

        Исключение

            ВызватьИсключение НСтр(«ru = ‘Не удалось чуток’»);            

        КонецПопытки;        

    КонецЕсли;    

    ОбъектКомпоненты.ПутьККриптопровайдеру = «»;

    СертификатКриптографииBase64 = СертификатКриптографииBase64(Сертификат.Выгрузить());    

    Попытка

        SignatureValue = ОбъектКомпоненты.CMSSign(

            Структура.data, //данные тип строка

            СертификатКриптографииBase64, //выгруженный в ДД сертификат в base64

            «», //пароль

            0, //тип подписи «CAdES-BES»

            Ложь, //открепленная

            17, //РежимВключенияСертификатовКриптографии.ВключатьПолнуюЦепочку

            0) //тип входных данных Строка;

    Исключение

        ВызватьИсключение НСтр(«ru = ‘Ошибка вызова метода CMSSign компоненты XMLDSig.’») + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());

    КонецПопытки;    

    Подпись = Base64Значение(SignatureValue);

    
    Структура.data = ДвоичныеДанныеBase64(Подпись);

    

    ЗаписьJSON = Новый ЗаписьJSON;

    ЗаписьJSON.УстановитьСтроку();

    ЗаписатьJSON(ЗаписьJSON, Структура);

    СтрокаJSON = ЗаписьJSON.Закрыть();

    

    Заголовки = Новый Соответствие;    

    Заголовки.Вставить(«Content-Type», «application/json; charset=utf-8»);

    Заголовки.Вставить(«cache-control», «no-cache»);

    HTTPЗапрос = Новый HTTPЗапрос(«/auth/simpleSignIn», Заголовки);    

    HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаJSON);

    Попытка

        HTTPОтвет = Соединение.ВызватьHTTPМетод(«POST», HTTPЗапрос);    

    Исключение

        Сообщить(ОписаниеОшибки());

    КонецПопытки;

    

    Если Не HTTPОтвет.КодСостояния = 200 Тогда

        Сообщить(«Код состояния не равен 200»);

        Возврат;

    КонецЕсли;

    

    СтрокаJSON = HTTPОтвет.ПолучитьТелоКакСтроку();

    ЧтениеJSON = Новый ЧтениеJSON;

    ЧтениеJSON.УстановитьСтроку(СтрокаJSON);

    Структура = ПрочитатьJSON(ЧтениеJSON);

    ЧтениеJSON.Закрыть();

    
    Токен = Структура.token;

  

timurhv

30 — 04.06.20 — 10:10

(29) БСП нет разве в конфе?

  

cmex

31 — 04.06.20 — 13:14

(30) нет, 11.1

  

VitShvets

32 — 19.06.20 — 16:51

(29) Спасибо тебе, добрый человек.

Понравилась статья? Поделить с друзьями:
  • Ошибка при получении сертификата n5001
  • Ошибка при получении сертификата java
  • Ошибка при получении сервера df dferh 01 плей маркет
  • Ошибка при получении свойства сертификата указан неправильный алгоритм 0x80090008
  • Ошибка при получении лицензии папилон