Где взять и как настроить тестовый сертификат для работы с сервисом 1С:Кабинет сотрудника в 1С:ЗУП?

Программист 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом IT и автоматизация бизнеса
← На главную

При доработке и отладке интеграции с сервисом 1С:Кабинет сотрудника в конфигурации 1С:Зарплата и управление персоналом разработчики сталкиваются с необходимостью подписывать документы электронной подписью. Использовать реальные квалифицированные сертификаты на тестовых базах небезопасно и не всегда возможно. Разберем подробно, какие виды подписей используются в сервисе, где взять тестовые сертификаты и как правильно настроить окружение для бесперебойной работы.

1. Разделение потоков подписания: сотрудник и организация

Прежде чем приступать к генерации сертификатов, проанализируем схему кадрового электронного документооборота (КЭДО) в сервисе. В процессе участвуют две стороны, и требования к их сертификатам кардинально различаются:

  1. Подпись со стороны сотрудника: для тестирования подписания кадровых документов сотрудником сторонний сертификат вообще не требуется. В сервисе 1С:Кабинет сотрудника работники подписывают документы усиленной неквалифицированной электронной подписью (УНЭП). Она выпускается бесплатно непосредственно в личном кабинете сотрудника (в мобильном приложении или веб-интерфейсе). Для корректной работы достаточно убедиться, что в настройках интеграции в 1С актуализирован корневой сертификат сервиса.
  2. Подпись со стороны работодателя: подписание приказов, расчетных листков и заявлений от лица организации выполняется на стороне 1С:ЗУП. В рабочей среде закон требует использовать усиленную квалифицированную электронную подпись (УКЭП). Для разработки и тестирования функционала достаточно выпустить тестовый сертификат (ГОСТ или RSA) и правильно подключить его к информационной базе.

2. Получение тестового сертификата через тестовый УЦ

Рассмотрим основной способ получения сертификата с поддержкой алгоритмов ГОСТ. Компания КриптоПро предоставляет публичный тестовый удостоверяющий центр (Test CA), позволяющий бесплатно генерировать сертификаты для разработчиков.

  1. Перейдем на веб-узел тестового удостоверяющего центра КриптоПро и выберем создание тестового сертификата пользователя.
  2. Заполним необходимые поля субъекта: фамилию, имя, наименование организации. Важно: для того чтобы 1С:ЗУП корректно связала подпись с организацией и ответственным лицом, укажите в реквизитах сертификата реальные (или тестовые, но полностью совпадающие с данными в вашей базе) ИНН организации, а также СНИЛС и ИНН физического лица.
  3. Сгенерируем закрытый ключ и сохраним созданный сертификат в личное хранилище сертификатов операционной системы.
  4. Обязательно скачаем и установим корневой сертификат тестового УЦ в системное хранилище «Доверенные корневые центры сертификации» (Trusted Root Certification Authorities). Если этого не сделать, платформа 1С не сможет построить цепочку доверия и отклонит сертификат как недействительный.

3. Альтернативные варианты: локальные и самоподписанные сертификаты

Если специфика доработки не требует обязательной проверки алгоритмов ГОСТ, а тестируется сам программный механизм подписания файлов, можно использовать альтернативные варианты:

  1. Использование PowerShell (New-SelfSignedCertificate): с помощью стандартных команд Windows можно выпустить самоподписанный сертификат RSA. Подсистема криптографии платформы 1С поддерживает стандартный криптопровайдер Microsoft CryptoAPI/CNG, что позволяет отлаживать механизмы без развертывания дополнительных ГОСТ-провайдеров. Корневой или сам самоподписанный сертификат также обязательно помещаем в доверенные корневые центры.
  2. Развертывание локального УЦ: если требуется изолированный тестовый контур, можно настроить локальный центр сертификации на базе Active Directory Certificate Services (AD CS) или OpenSSL. Это позволит выпускать произвольное количество тестовых сертификатов для любых сценариев.
  3. Тестовые контуры операторов ЭДО: при наличии действующего договора сопровождения можно обратиться к спецоператору ЭДО, обслуживающему предприятие, для выпуска учебного сертификата разработчика.

4. Тонкости настройки криптографии в 1С:Предприятии

Разберем типичные проблемы, которые могут возникнуть при использовании тестовых сертификатов в 1С, и способы их решения:

  1. Клиент-серверный режим работы: выясним, где именно выполняется операция криптографии. Если в базе включена опция «Подписывать и шифровать на сервере» или «Проверять подписи на сервере», то криптопровайдер, сертификат и закрытый ключ должны быть установлены не только на рабочем месте программиста, но и на сервере 1С:Предприятия (в хранилище учетной записи службы 1С или в хранилище локального компьютера Local Machine).
  2. Ошибка проверки статуса отзыва сертификата: тестовые сертификаты часто не имеют доступных внешних точек распространения списков отзыва (CRL) или служб OCSP. Из-за этого при попытке подписать файл 1С может выдать ошибку: «Не удалось выполнить проверку отзыва сертификата». Чтобы обойти это поведение на этапе разработки, в настройках программы отключают онлайн-проверку отзыва либо прописывают в конфигурационном файле платформы conf.cfg параметр: IgnoreServerCertificatesChainRevocationSoftFail=true Это позволит платформе игнорировать недоступность серверов отзыва тестового УЦ и успешно завершать операцию формирования подписи.
← На главную