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

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

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

Подготовка инфраструктуры и получение реквизитов

Прежде чем открывать конфигуратор базы данных, необходимо получить доступ к настройкам вашего провайдера идентификации. Это может быть Keycloak, Microsoft Azure AD или любой другой сервер, поддерживающий стандарт OIDC. Без заранее подготовленных учетных записей и ключей доступа дальнейшая настройка в 1С будет невозможна, так как системе просто не с чем будет взаимодействовать.

Обратитесь к администратору вашего Identity Provider и запросите следующие данные. Обычно они формируются автоматически при регистрации нового клиента (Client) в системе провайдера. Обратите внимание, что для работы с 1С часто требуется использование конфиденциального клиента (Confidential Client), который предполагает наличие секретного ключа.

Также критически важно настроить Redirect URI (URI перенаправления) на стороне провайдера. Этот адрес должен в точности совпадать с тем, который будет указан в настройках 1С. Малейшее расхождение в слеше или порте приведет к ошибке авторизации.

  • 🔑 Client ID — уникальный идентификатор вашего приложения в системе провайдера.
  • 🔒 Client Secret — секретный ключ, который никогда не должен быть опубликован или передан третьим лицам.
  • 🌐 Issuer URL — базовый адрес сервера авторизации, от которого будут приходить токены.
  • 🔄 Redirect URI — адрес, на который пользователь вернется после успешного входа (обычно это адрес веб-сервера 1С).

⚠️ Внимание: Никогда не передавайте Client Secret через незащищенные каналы связи. Если ключ будет скомпрометирован, злоумышленники смогут выдавать себя за ваше приложение и получать доступ к данным пользователей.

💡

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

Активация механизма OpenID Connect в конфигураторе

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

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

Нажмите кнопку Добавить для создания нового провайдера. Система предложит вам ввести имя провайдера — это произвольное название, которое будет отображаться в интерфейсе входа для пользователей (например, «Корпоративный портал» или «Вход через Google»). Выберите тип провайдера OpenID Connect из списка доступных вариантов.

☑️ Проверка перед настройкой

Выполнено: 0 / 4

Заполнение параметров подключения и маппинг полей

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

В поле Адрес сервера авторизации введите URL, полученный ранее (Issuer URL). В поле Идентификатор клиента вставьте Client ID. Для поля Секрет клиента используйте соответствующий ключ. Особое внимание уделите настройке Области видимости (Scope). По умолчанию 1С запрашивает стандартный набор прав, но ваш провайдер может требовать специфические скоупы для выдачи информации о пользоватле.

Далее необходимо настроить маппинг полей. Система 1С должна понимать, какое поле в токене, пришедшем от провайдера, соответствует Имени пользователя в базе 1С. Обычно это поле sub (subject) или preferred_username. Если имена пользователей в Active Directory и в 1С различаются, потребуется использовать дополнительные скрипты или настройки сопоставления.

Параметр в 1С Описание Пример значения
URL авторизации Точка входа для пользователя https://idp.company.com/auth
URL получения токена Адрес для обмена кода на токен https://idp.company.com/token
URL информации о пользователе Эндпоинт для получения данных профиля https://idp.company.com/userinfo
Алгоритм подписи Метод проверки целостности токена RS256

⚠️ Внимание: Убедитесь, что алгоритм подписи токенов (например, RS256 или HS256), выбранный в 1С, полностью совпадает с настройками на стороне Identity Provider. Несовпадение алгоритмов приведет к отклонению всех токенов.

Что делать, если провайдер не выдает поле 'sub'?

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

Настройка сертификатов безопасности и шифрования

Безопасность протокола OpenID Connect базируется на использовании криптографических сертификатов. Для проверки подлинности токенов, выпускаемых провайдером, сервер 1С должен иметь доступ к открытому ключу подписи. Обычно этот ключ загружается автоматически по адресу JWKS URI, указанному в настройках провайдера.

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

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

  • 📂 Проверьте наличие корневого сертификата удостоверяющего центра в хранилище ОС.
  • 🔐 Убедитесь, что у процесса сервера 1С есть права на чтение хранилища сертификатов.
  • 🔄 Настройте расписание обновления метаданных провайдера, если это поддерживается версией платформы.
💡

Автоматическая загрузка JWKS работает только при наличии прямого сетевого соединения между сервером 1С и сервером авторизации. В закрытых контурах требуется ручной импорт.

Сопоставление пользователей и создание учетных записей

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

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

Второй метод — автоматическая регистрация. Некоторые конфигурации позволяют создавать пользователя «на лету» при первом успешном входе через OIDC. Этот метод удобен для больших организаций, но несет риски создания дубликатов или учета временного персонала, если на стороне провайдера не настроена строгая фильтрация активных учетных записей.

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

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

📊 Какой метод создания пользователей вы планируете использовать?
Предварительное создание администратором
Автоматическое при первом входе
Гибридный метод
Используем только внешних пользователей

Диагностика проблем и анализ журналов регистрации

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

Включите подробное протоколирование событий, связанных с HTTP-сервисами и аутентификацией. В логах вы сможете увидеть код ответа от сервера авторизации. Код 401 Unauthorized укажет на неверный Client Secret, а код 400 Bad Request часто свидетельствует о несоответствии Redirect URI или отсутствии необходимых параметров в запросе.

Частой проблемой является рассинхронизация времени. Протокол OAuth 2.0 и OIDC критичны к точности времени. Если часы на сервере 1С и на сервере авторизации расходятся более чем на несколько минут, токены будут считаться невалидными (ошибка invalid_grant или token_expired). Используйте протокол NTP для синхронизации времени на всех узлах инфраструктуры.

Для глубокой диагностики можно использовать внешние снифферы трафика (например, Fiddler или Wireshark) на сервере, чтобы увидеть «сырые» запросы и ответы между 1С и провайдером. Это поможет выявить проблемы с кодировкой, заголовками или SSL-сертификатами, которые не очевидны из логов самой платформы.

Пример записи в журнале регистрации при ошибке:

Ошибка аутентификации OpenID Connect.

Провайдер: CorporateIDP

Код ошибки: invalid_client

Описание: Клиент не найден или секрет неверен.

Время: 2026-05-20 14:35:12

💡

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

Можно ли использовать OpenID Connect в файловой версии 1С?

Технически механизм аутентификации OpenID Connect в первую очередь разработан для клиент-серверного варианта работы через веб-сервер (IIS, Apache). В файловой версии базы данных, запускаемой напрямую, реализация полноценного OIDC-потока затруднена или невозможна без использования промежуточного веб-шлюза. Рекомендуется использовать клиент-серверный вариант для данной технологии.

Что делать, если сменился пароль администратора в 1С?

При использовании OpenID Connect пароль пользователя в самой базе 1С не используется для входа. Однако учетная запись администратора 1С (внутренняя) должна существовать для аварийного входа и настройки системы. Если вы потеряли доступ к внутренней учетной записи администратора, вам придется сбрасывать пароль через утилиту ras или редактирование файла конфигурации кластера серверов, вход через OIDC здесь не поможет восстановить права суперпользователя 1С.

Поддерживается ли двухфакторная аутентификация (2FA)?

Да, поддерживается, но реализация зависит от Identity Provider. Если ваш сервер авторизации (например, Keycloak или Azure AD) требует 2FA, то пользователь пройдет эту проверку на стороне провайдера перед тем, как 1С получит токен. Сама платформа 1С в данном случае выступает лишь доверенным клиентом и не управляет процессом ввода второго фактора.

Как отключить вход по паролю и оставить только OIDC?

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