Перейти к основному содержимому

Подготовка базы и адресов API

Для администратора 1С и веб-сервера, готовящего веб-ЛК 4.0.34. Первая версия этого порядка не установлена. Минимальные версии УИТ и API пока не подтверждены: проверенные сочетания. Пользователю эти настройки выполнять не нужно — ему выдают готовый адрес кабинета.

Подготовьте основную публикацию базы​

  1. Подготовьте поддерживаемые вашей платформой 1С IIS или Apache и компоненты расширения веб-сервера 1С. Установка веб-ЛК не устанавливает платформу 1С и не создаёт информационную базу.
  2. Откройте нужную базу УИТ в Конфигураторе с правами публикации. В меню «Администрирование → Публикация на веб-сервере» задайте имя базы, сервер и каталог публикации. Для работы ЛК должен быть опубликован основной HTTP-сервис API. Если база уже опубликована, проверьте её существующие настройки вместо создания второй рабочей копии.
  3. Проверьте работу основной публикации и права тестового пользователя. Схемы первоначальной настройки — IIS и Apache. Действия, пути и права из старых примеров сопоставьте со своей платформой; не публикуйте дополнительные сервисы без необходимости.
  4. Запишите основной адрес, например https://company.ru/base/hs/api/v2/. Он относится именно к базе, которую будут видеть пользователи ЛК. Вход выполняется с их собственными именами и паролями УИТ.

Для проверки основного API администратор может открыть адрес .../hs/api/v2/info с тестовой учётной записью. Без авторизации сервер может запросить имя/пароль или вернуть отказ. HTML-страница ошибки веб-сервера вместо ответа API требует проверки публикации. Это ещё не проверка входа из браузерного ЛК.

Нужен ли публичный API​

Он нужен для списка имён и восстановления пароля до входа. Обычный вход с известным именем и паролем работает через основной API. Если эти дополнительные возможности не нужны, оставьте publicApiUrl пустым; не создавайте лишнюю публикацию только ради них.

Для включения нужны HTTP-сервис APIПубличный и роль «Публичные методы API» в вашей версии УИТ. Если их нет, сверяйте поставку с администратором 1С; номер семейства v2 в URL не обозначает версию конфигурации.

Подготовьте публичные функции, если они нужны​

Для списка имён и восстановления пароля выполните отдельную инструкцию «Настроить список имён и восстановление пароля». В ней описаны служебный пользователь, отдельная публикация и настройки почты. После этого вернитесь к адресам ниже.

Укажите адреса в config.json​

В отдельной папке веб-ЛК, рядом с index.html, откройте config.json. Подставьте свои полные адреса, сохранив правильный JSON:

{
"apiUrl": "https://company.ru/base/hs/api/v2/",
"publicApiUrl": "https://company.ru/base-public/hs/api_public/v2/"
}

Для варианта без публичных функций используйте "publicApiUrl": "". Адрес публичного API не вычисляется из основного. Оба адреса в примере условные; пароля или токена в этом файле быть не должно.

Проще разместить кабинет и оба API на одном origin — одинаковых схеме, хосте и порте. При разных origin настройте разрешённые источники CORS и обработку OPTIONS, затем проверяйте запрос именно из ЛК. Не открывайте произвольные источники только ради устранения ошибки. HTTPS-кабинет должен обращаться к API через HTTPS с доверенным сертификатом.

Проверьте результат​

  • Основной вход работает с обычной тестовой учётной записью; видны только разрешённые ей проекты и задания.
  • При включённом списке адрес публичного .../hs/api_public/v2/login-users доступен до входа; сам список может зависеть от настроек УИТ.
  • Через публичную публикацию не доступны обычные защищённые данные базы. Для проверки используйте известный защищённый маршрут основной публикации и убедитесь в отказе, а не в выдаче данных.
  • При включённом восстановлении согласованный тестовый пользователь получает письмо. Проверка списка имён не подтверждает работу почты.

401/403 до входа на публичном адресе, ошибка сертификата или ответ HTML требуют проверки публикации, сети и учётной записи сервиса. Не расширяйте его роли наугад. После подготовки продолжите установку на выбранном сервере.

Форма веб-ЛК 4.0.34 с предупреждением о ненастроенном публичном API

На снимке проверочная статическая сборка: publicApiUrl намеренно пуст. Такое предупреждение относится к списку имён и восстановлению; обычный вход использует основной API. Если публичные функции нужны, проверьте их адрес и публикацию. Серый пример имени в поле не является вашей учётной записью.

Подготовьте служебного пользователя​

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

Создайте отдельную публичную публикацию​

Этот шаг нужен только для публичных функций до входа. Перейдите к разделу «Создайте отдельную публичную публикацию».

Включите нужные возможности в УИТ​

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