25.09.2025 Лев Туренко 1512
API в 1С: настройка доступа (авторизация и ау...

Содержание:

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


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


1.    Общие принципы работы API в 1С: ERP


Система 1С: ERP поддерживает несколько способов взаимодействия через API:

·       Веб-сервисы (WS, WSDL, SOAP) — классическая интеграция;

·       HTTP-сервисы (REST-подобные) — современный подход;

·       Расширения на HTTPServiceRequest/HTTPResponse;

·       COM-интерфейсы и DCOM для Windows-приложений;

·       Интерфейс OData — используется для прямого чтения и изменения данных через HTTP-запросы.

Мы сосредоточим внимание на HTTP и OData API, как наиболее применимых для современных сценариев, и на их безопасной настройке.


2.    Аутентификация в 1С: доступ по логину и паролю

Система программы 1С: Предприятие поддерживает следующие модели аутентификации:

1.    Аутентификация средствами платформы (Basic Auth):

·       логин и пароль, указанные в конфигурации;

·       передаются через HTTP-заголовок Authorization: Basic.

2.    Интеграция с ОС (Windows Authentication):

·       используется доменная учетная запись;

·       работает при публикации на IIS с включенной интеграцией.

3.    OAuth2 или JWT — не реализованы на платформе "из коробки", но могут быть добавлены через доработку.

Запрос к опубликованному HTTP-сервису 1С при базовой аутентификации:

КопироватьРедактировать

POST https://erp.company.ru/erp/hs/api/orders

Authorization: Basic YWRtaW46cGFzc3dvcmQ=

Content-Type: application/json

{

  "OrderID": "12345",

  "Customer": "ООО Тест",

  "Total": 20000

}

YWRtaW46cGFzc3dvcmQ= — это Base64 от admin:password.

Важно: Basic Auth не шифрует логин и пароль. Используйте HTTPS, иначе данные могут быть перехвачены.


3.    Авторизация в 1С: разграничение прав доступа


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

Чтобы создать пользователя для API, нужно в разделе Администрирование → Пользователи, создайте нового пользователя:

·       Укажите логин и пароль;

·       Назначьте ему роли (например, "ЧтениеДокументов", "ВводЗаказов");

·       Создайте профиль, исключающий доступ к интерфейсу, если требуется.

Можно создать отдельную роль "REST API Reader", которая имеет права только на чтение определенных регистров и справочников. Это ограничит потенциальный ущерб в случае компрометации ключей. 


4.    Публикация и защита интерфейса API


Для публикации конфигурации как веб-сервиса:

1.    Откройте конфигуратор;

2.    Выберите Администрирование → Публикация на веб-сервере;

3.    Укажите каталог IIS, включите BasicAuth;

4.    Убедитесь, что работает только HTTPS.

В настройках IIS можно ограничить доступ только с определённых IP-адресов. Это добавляет второй уровень защиты от несанкционированных попыток входа.


5.    Реализация собственного механизма токенов (прототип OAuth) в системе программы 1С: Предприятие


Если необходимо добавить токен-ориентированную аутентификацию, можно реализовать обработку обмена токенами.

КопироватьРедактировать

Функция ПолучитьТокен(Пользователь, Пароль)

              

               Если Пользователь = "apiuser" И Пароль = "secret123" Тогда

                               Возврат ГенерироватьGUID();

               Иначе

                               Возврат "";

               КонецЕсли;

              

КонецФункции

Пример использования токена:

КопироватьРедактировать

Процедура ОбработатьЗапрос(Запрос)

               Заголовки = Запрос.ПолучитьЗаголовки();

               Если НЕ Заголовки.Содержит("Authorization") Тогда

                               Ответ.УстановитьКодОтвета(401);

                               Ответ.УстановитьТело("Unauthorized");

                               Возврат;

               КонецЕсли;

               Токен = Заголовки["Authorization"];

               Если НЕ ПроверитьТокен(Токен) Тогда

                               Ответ.УстановитьКодОтвета(403);

                               Ответ.УстановитьТело("Forbidden");

                               Возврат;

               КонецЕсли;

               // Продолжить обработку запроса

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

             Типовые ошибки и способы их устранения:

Ошибка 401 Unauthorized возникает из-за неверного логина или пароля и нужно проверить заголовок Authorization.

Ошибка 403 Forbidden возникает из-за недостатка прав и нужно назначить правильные роли пользователю.

Ошибка 500 Internal Server Error возникает из-за неправильного кода в запросе и нужно логировать тело запроса и обрабатывать исключения.

Ошибка CORS error возникает из-за запроса, из браузера, который блокируется политикой CORS и нужно подключить CORS на уровне IIS или прокси-сервера.


6.    Практическое применение API в 1С: ERP


Мобильные приложения для агрономов и логистов — через API можно получать маршруты, задания, отчеты.

Интеграция с ФГИС "Сатурн" — формирование и отправка JSON через HTTP.

Связь с маркетплейсами или CRM — передача заказов, остатков, цен.

BI-системы — запрос данных по регистрам в режиме OData.


Выводы:

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

·       Защитить конфиденциальные данные;

·       Избежать несанкционированного доступа;

·       Гибко управлять правами на стороне 1С;

·       Упростить интеграцию с другими системами;

·       Повысить надежность и масштабируемость всей ИТ-инфраструктуры.

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


Специалист компании ООО "Кодерлайн"

Лев Туренко

Наши проекты

ООО «Еврорадиаторы»
ООО «Еврорадиаторы»

Отрасль:
1С:ERP 2.4

Внедренное типовое решение:

Специалисты «Кодерлайн» помогли перенести базу из текущей системы «1С:ERP 2.2» ...

ЗАО «Ламбумиз»
ЗАО «Ламбумиз»

Отрасль:
Производство картонной упаковки

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Маркетинг;
- Продажи;
- Планирование закупок;
- Закупки;
- Регламенти...

Внедрение 1С:Управление торговлей в оптово-розничной компании «Много Плитки»
ООО «Много Плитки»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Закупки (снабжение) и управление отношениями с поставщиками:
- Оформление ...

Московский филиал ООО «Авиакомпания «Икар»
Московский филиал ООО «Авиакомпания «Икар»

Отрасль:
Авиаперевозки

Внедренное типовое решение:
1С:Бухгалтерия КОРП

Бухгалтерский учет Производственные операции Регламентированная отчетнос...

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
1С:Управление производственным предприятием

- Внедрение функционала управления НСИ;
- Рефакторинг;
- Оптимизация общег...

ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)
ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)

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

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

- Финансы, управленческий учет, мониторинг показателей
- Бухгалтерский уче...

Внедрение блока бухгалтерского учета «1С:Управление производственным предприятием»
ОАО «Издательство «Просвещение»

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление производственным предприятием

Бухгалтерский учет:
- Завершение периода;
- Регламентированная отчетнос...

Внедрение ПП "1С:Бухгалтерия 8 ПРОФ" в ООО «Союз Три» (Кондитерский дом Renardi)
ООО «Союз Три»

Отрасль:
Производство

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Бухгалтерский учет
- Банк и касса
- Расчеты с контрагентами
Налоговый ...

ООО «ПраксисКом»
ООО «ПраксисКом»

Отрасль:
Аутсорсинг бухгалтерских услуг

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные ...

ЗАО «Инвестгеосервис»
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Объемно-календарное планирование производства Автоматизация бизнес-проце...

Автоматизация контроля исполнительской дисциплины на базе ПП «1С:Документооборот 8 ПРОФ»
ООО «ФСК Лидер»

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

Внедренное типовое решение:
1С:Документооборот 8 ПРОФ

- Делопроизводство;
- Учет и хранение документов;
- Учет и контроль исполне...

Автоматизации бизнес-процессов учета и планирования на базе «1С:ERP Управление предприятием 2.0»
ООО «Буровая сервисная компания «ГРАНД»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Создание полноценной управленческой системы взамен существующих
- Внедр...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение