25.09.2025 Лев Туренко 3420
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С:Управление холдингом 8

Бухгалтерский учет;
Расчет зарплаты и кадровый учет;...

Фармацевтическое предприятие «Оболенское»
АО «Фармацевтическое предприятие «Оболенское»

Отрасль:
Фармацевтическая промышленность

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

- Адаптации блоков/подсистем планирования продаж, закупок и казначейства. ...

Внедрение ПП "1С:Корпоративный инструментальный пакет 8" в ООО «Торговый Дом Факел»
ООО «Торговый Дом Факел»

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

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

Различная отраслевая специфика:
- Переработка давальческого сырья
- Уче...

СТС-Медиа
СТС-Медиа

Отрасль:
Медиаиндустрия

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

- Бухгалтерский учет;
- Налоговый учет;
- МСФО (GAAP/управленческий учет);
- ...

ПЭК
ПЭК

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

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Перевод зарплатных баз с версии ЗУП 2.5 на версию ЗУП 3.1.
- Сопровождение в п...

Внедрение 1С:Управление торговлей
ООО «Амперсенд»

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

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

- Оформление заказов поставщикам;
- Управление отношениями с поставщиками;...

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

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

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

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

Автоматизация интеграции с информсистемами клиентов на базе «1С:Предприятие 8. WMS Логистика. Управление складом»
ОАО «Фрейт Линк»

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

Внедренное типовое решение:
«1С:Предприятие 8. WMS Логистика. Управление складом»

– Управление складскими запасами;
– Оформление заказов покупателей;
– ...

ОАО «Фаберлик»
ОАО «Фаберлик»

Отрасль:

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

- Регламентированный учет;
- Кадровый учет;...

Внедрение системы финансового учета БИТ:Финанс
ООО «Алькор и Ко» (Л’Этуаль)

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

Внедренное типовое решение:
БИТ.Финанс

- Финансовый учет;
- Поддержка проекта внедрения МСФО;
- Регламентные рабо...

Автоматизация складских операций на базе «1С:Предприятие 8. WMS Логистика. Управление складом»
ОАО «Фрейт Линк»

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

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

Реализовали разработку уникального модуля «Интернет-магазины» на базе прог...

ФГОУ ВПО «Горский государственный аграрный университет»
ФГОУ ВПО «Горский государственный аграрный университет»

Отрасль:
Образование

Внедренное типовое решение:
1С:Колледж ПРОФ

- Управление персоналом и кадровый учет (HRM):
Кадровый учет
Управление об...

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

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

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

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