К статье
Практический материал

Администрирование · 10 мин

Хранилище сертификатов 1С: где находится и как его найти

Где 1С хранит сертификаты ЭП: личное хранилище Windows, контейнеры КриптоПро, файлы сертификатов. Пути, проверка и перенос сертификатов.

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

Важно понимать: у 1С нет собственного отдельного хранилища сертификатов внутри базы. Платформа работает с сертификатами через средства криптографии операционной системы — чаще всего через хранилище Windows и криптопровайдер (КриптоПро CSP, ViPNet CSP). Поэтому искать сертификаты нужно не в каталоге базы, а в системных хранилищах и контейнерах ключей.

Однако в самой конфигурации (1С:Бухгалтерия, ЗУП, Управление торговлей) есть настройки, которые ссылаются на эти сертификаты: какой сертификат использовать для подписания, какой — для шифрования, какой — для обмена с конкретным контрагентом. Ниже разберём оба уровня: где физически лежат ключи и где в 1С посмотреть привязку сертификатов.

Как устроено хранение сертификатов при работе с 1С

Схема хранения двухуровневая. Нижний уровень — операционная система и криптопровайдер: там лежат сами сертификаты открытых ключей (файлы с расширением .cer) и закрытые ключи в защищённых контейнерах (на токене, в реестре или на дискете/флешке). Верхний уровень — настройки внутри 1С, где пользователь выбирает, каким сертификатом подписывать документы.

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

Где находится хранилище сертификатов Windows

Основное место, куда 1С «смотрит» при поиске сертификатов, — личное хранилище сертификатов текущего пользователя Windows. Открыть его можно двумя способами: через команду certmgr.msc (хранилище текущего пользователя) или certlm.msc (хранилище локального компьютера). Запуск выполняется через «Пуск» → «Выполнить» (Win+R).

В оснастке certmgr.msc сертификаты пользователя лежат в ветке «Личное» → «Сертификаты». Именно здесь должен находиться сертификат с привязкой к закрытому ключу — в его свойствах на вкладке «Общие» будет строка «Есть закрытый ключ для этого сертификата». Если этой строки нет, 1С увидит сертификат, но подписать документ не сможет.

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

Как открыть хранилище и проверить сертификат
  1. 1
    Нажмите Win+R, введите certmgr.msc и нажмите Enter
  2. 2
    Откройте ветку «Личное» → «Сертификаты» и найдите нужный сертификат по ФИО владельца
  3. 3
    Откройте сертификат двойным щелчком и убедитесь, что на вкладке «Общие» указано «Есть закрытый ключ для этого сертификата»
  4. 4
    Проверьте срок действия сертификата и отсутствие предупреждений о цепочке
  5. 5
    Перезапустите 1С и повторите операцию подписания

Где КриптоПро и ViPNet хранят контейнеры ключей

Закрытые ключи находятся не в хранилище Windows, а в контейнерах криптопровайдера. Посмотреть их можно через панель управления КриптоПро CSP: вкладка «Сервис» → кнопка «Просмотреть сертификаты в контейнере» или «Скопировать» — там отображается список доступных контейнеров и носителей.

Если контейнер записан в реестре, физически ключевые файлы размещаются в скрытом системном каталоге вида C:\ProgramData\Crypto Pro\... (точный путь зависит от версии криптопровайдера и разрядности системы). Напрямую редактировать или копировать эти файлы не рекомендуется — для переноса используйте штатную функцию «Скопировать контейнер» в КриптоПро.

Если ключ записан на токен (РуТокен, JaCarta, eToken), контейнер физически находится в защищённой памяти устройства, и без подключённого токена и ввода PIN-кода 1С не получит доступ к подписанию. Проверьте, что токен определяется системой и виден в панели криптопровайдера.

Где в 1С настроены ссылки на сертификаты

В типовых конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11, ERP) путь к настройкам сертификатов примерно одинаков: раздел «Администрирование» → «Обмен электронными документами» → «Настройки электронной подписи и шифрования» или справочник «Сертификаты ключей электронной подписи и шифрования». В старших версиях БСП этот справочник доступен также из «НСИ и администрирование».

В карточке сертификата 1С хранит отпечаток, данные о владельце, сроке действия и назначении (подписание, шифрование, обмен с конкретными операторами ЭДО). Сам ключ здесь не хранится — только ссылка на сертификат из системного хранилища. Поэтому после переустановки Windows или переноса базы на другой компьютер записи в справочнике останутся, но работать не будут, пока сертификат не установлен в хранилище нового компьютера.

Для обмена с банками (сервис 1С:ДиректБанк) сертификат указывается в настройках обмена с конкретным банком. Для сдачи отчётности (1С-Отчётность) — в настройках обмена с контролирующими органами, где сертификат привязан к учётной записи абонента.

Как найти сертификат, если 1С его не видит

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

Быстрое решение — открыть КриптоПро CSP, вкладка «Сервис» → «Просмотреть сертификаты в контейнере», найти нужный контейнер и нажать «Установить» — это зарегистрирует сертификат в личном хранилище текущего пользователя. После этого он появится в 1С при обновлении списка.

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

Контрольные точки

Как проверить результат

Сертификат в certmgr.msc
Норма

Есть в ветке «Личное», в свойствах указано «Есть закрытый ключ»

Тревожный признак

Сертификата нет или закрытый ключ отсутствует — подписание невозможно

Контейнер в КриптоПро
Норма

Контейнер виден в списке, при проверке не запрашивает отсутствующий носитель

Тревожный признак

Ошибка «контейнер не найден» или «вставьте носитель»

Список сертификатов в 1С
Норма

Сертификат доступен для выбора, подписание проходит без ошибок

Тревожный признак

Сертификат не отображается или при подписании возникает ошибка криптографии

Перенос сертификатов на другой компьютер

При замене компьютера бухгалтера перенос состоит из двух частей: перенос контейнера закрытого ключа и установка сертификата в хранилище нового ПК. Если ключ на токене — достаточно подключить токен к новому компьютеру, установить драйверы и криптопровайдер, затем установить сертификат из контейнера в личное хранилище.

Если ключ был в реестре старого компьютера, используйте функцию «Скопировать контейнер» в КриптоПро на старом ПК, перенеся контейнер на флешку или токен, а затем скопируйте его на новый компьютер. Дополнительно можно экспортировать сертификат с закрытым ключом в файл PFX через certmgr.msc (правой кнопкой → «Все задачи» → «Экспорт»), если при выпуске ключа экспорт не был запрещён.

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

Типичные ошибки
01
Установка сертификата без закрытого ключа — сертификат виден в 1С, но подписать документ нельзя; нужно устанавливать сертификат из контейнера через КриптоПро
02
Установка сертификата другому пользователю Windows — 1С под рабочей учётной записью сертификат не видит; проверяйте, под кем запущен сеанс
03
Перенос базы 1С вместо переноса сертификатов — в базе лежат только ссылки, ключи нужно переносить отдельно через криптопровайдер
04
Игнорирование корневых сертификатов УЦ — цепочка доверия не строится, и подписание завершается ошибкой даже при исправном личном сертификате

Частые вопросы

Хранит ли 1С сертификаты внутри информационной базы?

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

Где лежит файл сертификата, который я скачал из личного кабинета?

Файл с расширением .cer — это только открытая часть сертификата. Он хранится там, куда вы его сохранили (обычно «Загрузки»). Чтобы 1С могла им пользоваться, файл нужно установить в хранилище «Личное» через двойной щелчок и мастер импорта, а закрытый ключ должен быть доступен в контейнере криптопровайдера.

Почему сертификат виден в Windows, но не виден в 1С?

Чаще всего сертификат установлен другому пользователю Windows, отсутствует привязка к закрытому ключу или истёк срок действия. Также проверьте, что криптопровайдер установлен и лицензия активна, и перезапустите сеанс 1С — список сертификатов кэшируется.

Как узнать, каким сертификатом подписывается отчётность?

В 1С:Бухгалтерии откройте настройки обмена с контролирующими органами (1С-Отчётность → Настройки обмена с контролирующими органами) — там указан сертификат, привязанный к учётной записи. Для ЭДО смотрите «Администрирование» → «Обмен электронными документами» → профили настроек и учётные записи.

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

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

Нужно ли устанавливать сертификат на сервер 1С?

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

Итог

Что важно запомнить

1С не хранит сертификаты в базе: они находятся в личном хранилище Windows (certmgr.msc), а закрытые ключи — в контейнерах КриптоПро или ViPNet на токене либо в реестре. В конфигурации настраиваются только ссылки на сертификаты. При ошибках проверяйте три звена: сертификат с закрытым ключом в хранилище, доступность контейнера в криптопровайдере и корневые сертификаты УЦ.