Администрирование · 12 мин
Как настроить электронную подпись в 1С
Как настроить электронную подпись в 1С: установка сертификата, настройка криптопровайдера, подписание документов и решение типичных ошибок. Пошаговое руководство.
Электронная подпись в 1С используется для подписания документов прямо из учётной системы: счетов-фактур, актов, накладных, отчётности в ФНС и других файлов. Настройка сводится к трём уровням — операционная система (криптопровайдер и сертификат), сама 1С (подсистема электронной подписи) и права пользователя. Если пропустить любой из уровней, подписание завершится ошибкой, причём текст ошибки не всегда указывает на реальную причину.
Инструкция подходит для типовых конфигураций на управляемых формах: «1С:Бухгалтерия 8», «1С:Управление торговлей», «1С:ERP», «1С:Зарплата и управление персоналом». Названия пунктов меню могут немного отличаться между версиями, но логика везде одинаковая, поскольку за механизм отвечает библиотека стандартных подсистем (БСП).
Перед началом работы подготовьте: носитель с ключевым контейнером (токен JaCarta, Рутокен, eToken или файл контейнера), сертификат квалифицированной электронной подписи, дистрибутив криптопровайдера и лицензию на него. Также потребуются права администратора на компьютере и права на изменение настроек в 1С.
Что понадобится перед настройкой
Электронная подпись в 1С не работает «сама по себе» — программа обращается к криптопровайдеру, установленному в операционной системе. Наиболее распространены КриптоПро CSP и ViPNet CSP. Какой именно нужен вам, зависит от того, под какой криптопровайдер выпущен сертификат: эта информация указана в документах удостоверяющего центра, выдавшего подпись.
Проверьте три вещи до начала настройки. Во-первых, срок действия сертификата — просроченный сертификат установится, но подписывать документы не сможет. Во-вторых, наличие закрытого ключа: если есть только файл сертификата без контейнера закрытого ключа, подписание невозможно, сертификат подойдёт лишь для проверки чужих подписей. В-третьих, разрядность криптопровайдера должна соответствовать разрядности платформы 1С — для 64-битного клиента нужен 64-битный криптопровайдер.
Шаг 1. Установка криптопровайдера и сертификата
Установите криптопровайдер с правами администратора и активируйте лицензию — в КриптоПро CSP это делается через панель управления программой, раздел «Общие» → «Ввод лицензии». Без лицензии программа работает в демонстрационном режиме ограниченное время, после чего подписание заблокируется.
Далее подключите носитель с ключевым контейнером и установите сертификат. В КриптоПро CSP откройте вкладку «Сервис», нажмите «Просмотреть сертификаты в контейнере», найдите контейнер на токене и выберите «Установить». Альтернативный путь — установка через оснастку Windows: файл сертификата → «Установить сертификат» → хранилище «Личные» текущего пользователя. Сертификат обязательно должен быть связан с закрытым ключом: в свойствах сертификата внизу должна быть строка «Есть закрытый ключ для этого сертификата».
- 1Установите криптопровайдер и введите лицензионный ключ
- 2Подключите токен или скопируйте контейнер закрытого ключа
- 3Откройте сертификат в контейнере через панель криптопровайдера
- 4Установите сертификат в хранилище «Личные» текущего пользователя
- 5Откройте свойства сертификата и убедитесь, что есть закрытый ключ
- 6Проверьте цепочку сертификации — корневой сертификат УЦ должен быть доверенным
Частая проблема на этом этапе — неполная цепочка сертификации. Если корневой сертификат удостоверяющего центра не установлен в хранилище «Доверенные корневые центры сертификации», Windows считает сертификат недействительным, и 1С выдаст ошибку при проверке. Корневой сертификат обычно можно скачать с сайта удостоверяющего центра или он устанавливается автоматически вместе с личным сертификатом.
Шаг 2. Включение подсистемы электронной подписи в 1С
Откройте 1С под пользователем с правами администратора и перейдите в раздел «Администрирование» → «Общие настройки» (в некоторых конфигурациях — «Настройки программы» → «Электронная подпись»). Установите флажок «Электронные подписи» (или «Использовать электронные подписи»). После этого в интерфейсе появятся команды подписания и проверки подписей.
В этой же форме настроек обратите внимание на параметры: «Проверять электронные подписи на сервере» и «Подписывать на сервере». Для файловой базы или работы через тонкий клиент чаще всего подписание выполняется на компьютере пользователя, поэтому эти флажки оставляют снятыми. Включать их имеет смысл только если криптопровайдер и ключи установлены на сервере 1С и подписание должно выполняться централизованно.
Где выполнять подписание
Шаг 3. Настройка программ криптографии в 1С
В форме настроек электронной подписи откройте закладку «Программы» (или «Настройки электронной подписи и шифрования» → «Программы»). 1С обычно сама находит установленные криптопровайдеры и добавляет их в список. Если список пуст, добавьте программу вручную: укажите тип (например, «Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider»), тип алгоритма и пути к библиотекам.
После добавления нажмите «Проверить» — 1С выполнит тестовые операции подписания и шифрования через выбранную программу. Успешная проверка означает, что связка «платформа 1С — криптопровайдер» работает. Если проверка не проходит, чаще всего причины такие: несовпадение разрядности, криптопровайдер не установлен или не активирована лицензия.
Как проверить настройку криптопровайдера
Криптопровайдер есть в списке, проверка проходит без ошибок
Список пуст или проверка завершается ошибкой
Указано «Есть закрытый ключ для этого сертификата»
Строки о закрытом ключе нет — подписание невозможно
Все сертификаты цепочки без предупреждающих значков
Жёлтый или красный значок, «сертификат не доверенный»
Шаг 4. Привязка сертификата к пользователю
Перейдите в раздел «Администрирование» → «Электронная подпись» → «Сертификаты» (в некоторых конфигурациях список сертификатов открывается из формы настроек). Нажмите «Добавить» → «Из установленных на компьютере» и выберите нужный сертификат из хранилища. 1С при этом проверяет наличие закрытого ключа и возможность подписания.
В карточке сертификата укажите пользователя, которому разрешено подписывать этим сертификатом, и при необходимости ограничьте область применения — например, только документы определённого вида. Если сертификатов несколько (директор, главбух, сертификат организации для обмена с контрагентами), назначьте каждому своего пользователя и задайте сертификат по умолчанию.
Для обмена электронными документами с контрагентами (ЭДО) сертификат дополнительно привязывается к учётной записи ЭДО в настройках обмена с контрагентами. Там же указывается, какие виды документов будут подписываться автоматически, а какие — вручную.
Шаг 5. Проверка подписания на тестовом документе
Откройте любой документ, например реализацию или счёт-фактуру, и выполните команду «Подписать» (обычно в меню «Ещё» или на панели ЭДО). Выберите сертификат, при запросе введите PIN-код токена. После подписания документ получает отметку о подписи, а в карточке документа появляется информация о подписанте и времени подписания.
Обязательно проверьте подпись: команда «Проверить подпись» должна показать статус «Подпись верна». Если подписание прошло, но проверка не проходит, проблема обычно в цепочке сертификации или в недоступности списков отзыва сертификатов — в таком случае проверьте корневые сертификаты и доступ компьютера к интернету.
Частые ошибки и способы их устранения
Ошибка «Не найден сертификат» или «Сертификат не найден в хранилище» означает, что сертификат установлен в хранилище другого пользователя Windows или в хранилище компьютера, а 1С ищет в «Личных» текущего пользователя. Переустановите сертификат в правильное хранилище под той учётной записью Windows, из-под которой работает пользователь 1С.
Ошибка вида «Ошибка при вызове метода контекста: Подписать» с кодом криптопровайдера чаще всего указывает на проблему с закрытым ключом: носитель не подключён, неверный PIN-код или контейнер повреждён. Проверьте контейнер средствами криптопровайдера (в КриптоПро CSP — «Сервис» → «Протестировать»). Несколько неверных попыток ввода PIN-кода блокируют токен, поэтому при сомнениях в PIN-коде не подбирайте его.
Если подписание работает у одного пользователя и не работает у другого на том же компьютере, сравните: хранилище сертификата (личное хранилище привязано к учётной записи Windows), права в 1С и назначение сертификата в карточке сертификата. В клиент-серверном варианте с включённым подписанием на сервере дополнительно проверьте, что криптопровайдер и сертификаты установлены в системной учётной записи, под которой работает агент сервера 1С.
Перед массовым подписанием документов (например, при закрытии месяца в ЭДО) выполните пробное подписание одного документа и дождитесь его успешной отправки оператору. Так вы заранее обнаружите истёкшие сертификаты и заблокированные токены, а не в момент сдачи отчётности.
Ограничения и альтернативы
Встроенный механизм подписания в 1С покрывает типовые задачи: ЭДО, отчётность, подписание произвольных файлов. Однако есть ограничения. Массовое подписание сотен документов через интерфейс выполняется медленно — для таких задач настраивают регламентные задания с подписанием на сервере. Работа через веб-клиент требует установки расширения для криптографии, и не все браузеры поддерживают его одинаково стабильно.
Альтернативой локальной подписи служат облачные сервисы подписания, интегрированные с 1С через операторов ЭДО: ключ хранится у оператора, а подписание подтверждается кодом из SMS или приложения. Это удобно для руководителей, которые подписывают документы с телефона, но требует договора с оператором и доверия к хранению ключа у третьей стороны.
Частые вопросы
Можно ли подписывать документы в 1С без токена?
Да, если контейнер закрытого ключа установлен в реестр компьютера или на локальный диск — криптопровайдер поддерживает такие носители. Однако хранение ключа без аппаратного носителя снижает защищённость: скопированный ключ позволяет подписывать документы от вашего имени. Для квалифицированной подписи рекомендуется сертифицированный токен.
Почему 1С не видит сертификат, хотя в Windows он установлен?
Наиболее вероятные причины: сертификат установлен в хранилище другой учётной записи Windows, нет связи с закрытым ключом, либо криптопровайдер не добавлен в список программ в настройках 1С. Проверьте эти три пункта последовательно — в большинстве случаев причина находится среди них.
Нужен ли отдельный сертификат для каждого пользователя 1С?
Юридически подпись принадлежит конкретному физическому лицу, указанному в сертификате, поэтому передавать один сертификат нескольким сотрудникам нельзя. Каждый подписант должен иметь собственный сертификат на своё имя. Исключение — машиночитаемые доверенности и сертификаты организации для автоматических операций, оформляемые по правилам удостоверяющего центра.
Что делать, если сертификат истёк, а документы подписывать нужно сегодня?
Просроченным сертификатом подписывать нельзя — такие подписи не будут иметь юридической силы. Обратитесь в удостоверяющий центр за перевыпуском: многие УЦ выпускают новый сертификат в течение рабочего дня. Ранее подписанные документы остаются действительными, если подпись была создана в период действия сертификата.
Работает ли электронная подпись в 1С на Linux или macOS?
Да, при условии, что для вашей ОС существует версия криптопровайдера — КриптоПро CSP выпускается для Linux и macOS. Порядок настройки аналогичен: установка криптопровайдера, установка сертификата в хранилище, настройка программ в 1С. Специфика в путях к библиотекам и управлении носителями через терминальные утилиты криптопровайдера.
Можно ли настроить автоматическое подписание документов по расписанию?
Да, для этого настраивается подписание на сервере: криптопровайдер и ключ устанавливаются на сервер 1С, а регламентное задание подписывает подготовленные документы без участия пользователя. Учтите риск: ключ, доступный серверу без PIN-кода, должен быть максимально защищён, иначе любой, получивший доступ к серверу, сможет подписывать документы.
Что важно запомнить
Настройка электронной подписи в 1С состоит из четырёх шагов: установка криптопровайдера и сертификата в Windows, включение подсистемы в 1С, добавление и проверка программы криптографии, привязка сертификата к пользователю. Завершайте настройку тестовым подписанием и проверкой подписи — только так можно убедиться, что вся цепочка работает.