Общий список информационных баз 1С для всех сотрудников: терминальный сервер, веб-публикация, домен
Содержание
Чтобы добавить базу
1С всем пользователям на сервере разом, создайте один общий файл списка баз (.v8i) и пропишите путь к нему в параметре CommonInfoBases файла C:\ProgramData\1C\1CEStart\1CEStart.cfg. Этот файл читает окно запуска 1С у каждого пользователя компьютера, поэтому база появится у всех при следующем открытии списка, без ручного «Добавить» в каждом профиле.
Для домена тот же приём масштабируется групповой политикой, а для удалённых сотрудников базу публикуют на веб-сервере. Способ общая для платформы 8.3 и не зависит от конфигурации: БП, ЗУП, УТ и ERP подключаются одинаково.
Что подготовить на сервере перед раздачей базы
Окно запуска хранит список баз отдельно для каждого пользователя Windows — в файле %APPDATA%\1C\1CEStart\ibases.v8i. Поэтому база, добавленная администратором «у себя», другим сотрудникам терминального сервера не видна. Это главная причина, по которой возникает сам вопрос.
Перед настройкой проверьте четыре вещи:
- 🖥️ Платформа. На терминальном сервере установлен клиент 1С нужной версии, на рабочих станциях — тоже (для варианта с доменом). Номер версии клиента должен совпадать с версией сервера 1С при клиент-серверной базе.
- 🗄️ Сама база. Клиент-серверная база
зарегистрирована в кластере (консоль администрирования серверов 1С → кластер →
Информационные базы). Файловая база лежит в папке на сервере, а не на рабочем столе администратора. - 📁 Место для общего списка. Папка, куда положите файл
.v8i. Для одного терминального сервера достаточноC:\1C\Lists\, для домена — сетевая папка вроде\\fs01\1C$\Lists\. - 🔐 Права NTFS. Группе пользователей 1С (например,
Domain Usersили своя группа1C_Users) нужно право «Чтение» на файл списка. На папку файловой базы — «Изменение»: платформа создаёт рядом с1Cv8.1CDслужебные файлы блокировок, и без права записи база не откроется.
Заведите отдельную группу безопасности 1C_Users и выдавайте права ей, а не каждому сотруднику. Новый человек попадает в группу — и сразу получает и доступ к папке, и общий список.
Какой способ выбрать
| Способ | Когда подходит | Ограничения |
|---|---|---|
CommonInfoBases в 1CEStart.cfg на сервере | Терминальный сервер, все работают через RDP | Нужны права администратора сервера |
| Тот же параметр через групповую политику | Домен, клиент 1С установлен на рабочих станциях | Нужен доступ к управлению GPO |
Копирование ibases.v8i в профиль скриптом | Нет общей папки или нужен индивидуальный список | Перезаписывает личные базы пользователя |
| Публикация на веб-сервере | Удалённые сотрудники, работа через браузер или тонкий клиент по HTTP | Нужен IIS или Apache, отдельная настройка безопасности |
Как добавить базу 1С для всех пользователей терминального сервера через общий список
Этот способ — основной. Он не трогает личные списки сотрудников: общие базы просто добавляются к ним.
- Сформируйте эталонный список. Запустите 1С под своей учёткой, нажмите
Добавитьи подключите базу обычным способом. Проверьте, что она открывается. - Скопируйте файл. Возьмите свой
%APPDATA%\1C\1CEStart\ibases.v8i, удалите из него лишние базы (тестовые, копии) и сохраните под именем, например,C:\1C\Lists\common.v8i. - Откройте общий файл настроек. На сервере откройте с правами администратора
C:\ProgramData\1C\1CEStart\1CEStart.cfg. Если папки или файла нет — создайте их. - Пропишите путь к списку. Добавьте строку:
CommonInfoBases=C:\1C\Lists\common.v8i
- Проверьте под другим пользователем. Зайдите на сервер под обычной учёткой сотрудника и откройте 1С. База из общего списка должна появиться в окне запуска.
Строк CommonInfoBases может быть несколько — например, отдельный список для бухгалтерии и отдельный для склада:
CommonInfoBases=\\fs01\1C$\Lists\all.v8i
CommonInfoBases=\\fs01\1C$\Lists\buh.v8i
Окно запуска объединит все файлы, которые сможет прочитать. Если у сотрудника нет прав на buh.v8i, базы бухгалтерии он просто не увидит. Так одним файлом настроек на сервере получается разный список для разных групп.
Тот же путь можно задать без правки файла: в окне запуска нажмите Настройка… и заполните поле «Адреса интернет-сервисов и списки общих информационных баз». Но так настройка запишется в профиль текущего пользователя, а не всем. Для раздачи на всех нужен именно файл в C:\ProgramData.
Новая база или изменение строки подключения теперь делаются в одном месте: правите common.v8i — и при следующем запуске окна 1С у всех сотрудников актуальный список.
Шаблон файла списка баз .v8i
Файл .v8i — обычный текст. Каждая база — секция в квадратных скобках с именем, которое увидит пользователь, и строкой подключения. Минимальная рабочая запись для базы на сервере 1С:
[Бухгалтерия ООО Ромашка]
Connect=Srvr="srv1c";Ref="buh_romashka";
Для файловой базы в сетевой папке:
[Зарплата (файловая)]
Connect=File="\\fs01\Bases\ZUP";
Для базы, опубликованной на веб-сервере:
[Торговля через интернет]
Connect=ws="https://1c.example.ru/ut";
Разбор параметров строки подключения:
| Параметр | Что означает | Пример |
|---|---|---|
Srvr | Имя или IP сервера 1С; при нестандартном порте агента — через двоеточие | srv1c или srv1c:2541 |
Ref | Имя базы в кластере (не синоним, а именно имя из консоли) | buh_romashka |
File | Путь к каталогу файловой базы (без имени 1Cv8.1CD) | \\fs01\Bases\ZUP |
ws | Адрес публикации базы на веб-сервере | https://1c.example.ru/ut |
Остальные строки секции, которые сохраняет окно запуска (ID, Folder, OrderInList, App, Version и другие), необязательны. Строка Folder=/Бухгалтерия раскладывает базы по папкам в окне запуска — удобно, когда баз больше десятка.
Сохраняйте файл в кодировке UTF-8. Если редактор сохранит его в ANSI, кириллические названия баз превратятся в нечитаемые символы. Надёжнее всего брать за основу файл, который сформировала сама 1С, и править его.
Публикация базы на веб-сервере для тонкого и веб-клиента
Если часть сотрудников работает не через RDP, а из дома или из филиала, базу публикуют на веб-сервере. Тогда к ней подключаются браузером или тонким клиентом по адресу вида https://1c.example.ru/buh.
Что нужно на сервере публикации:
- 🌐 установлен IIS (с компонентами ISAPI-расширений) или Apache 2.4;
- 🧩 при установке платформы 1С отмечен компонент «Модули расширения веб-сервера»;
- 🔑 конфигуратор или утилита публикации запущены от имени администратора — без этого не получится записать файлы в каталог веб-сервера.
Публикация из конфигуратора
- Откройте базу в конфигураторе от имени администратора Windows.
- Выберите
Администрирование → Публикация на веб-сервере. - Задайте имя публикации латиницей (
buh), выберите веб-сервер и каталог. - Нажмите
Опубликовать, подтвердите перезапуск веб-сервера.
После этого база открывается по адресу http://<сервер>/buh.
Публикация из командной строки
На серверах без графического сеанса удобнее утилита webinst из каталога bin платформы:
cd "C:\Program Files\1cv8\8.3.24.1548\bin"
webinst -publish -iis -wsdir buh -dir "C:\inetpub\wwwroot\buh" -connstr "Srvr=srv1c;Ref=buh_romashka;"
Подставьте номер своей версии платформы в путь. Для Apache 2.4 вместо -iis указывают -apache24 и путь к httpd.conf в параметре -confpath.
Не выставляйте публикацию в интернет по голому HTTP. Логины и пароли пользователей пойдут открытым текстом. Минимум — HTTPS с действительным сертификатом и ограничение доступа по IP или через VPN.
Опубликованную базу добавьте в общий список строкой Connect=ws="…" — и удалённые сотрудники получат её так же, как офисные.
Права пользователей в базе и лицензии
Появление базы в списке ещё не означает, что сотрудник в неё войдёт. Для входа ему нужен пользователь внутри самой информационной базы и свободная лицензия.
Пользователи и права
В типовых конфигурациях на БСП (БП 3.0, ЗУП 3.1, УТ 11, ERP) пользователей заводят в режиме предприятия:
| Конфигурация | Где создаются пользователи | Где настраиваются права |
|---|---|---|
| БП 3.0, ЗУП 3.1, УТ 11 | Администрирование → Настройки пользователей и прав → Пользователи | там же, Группы доступа или «Профили групп доступа» |
| Нетиповая конфигурация без БСП | Конфигуратор: Администрирование → Пользователи | роли на вкладке «Прочие» в карточке пользователя |
Чтобы сотрудники терминального сервера не вводили пароль каждый раз, включите в карточке пользователя аутентификацию операционной системы и укажите его учётную запись Windows в виде DOMAIN\ivanov. Тогда 1С сама узнает человека по входу в Windows.
Если общий список видят все, а работать в базе должны только бухгалтеры — это нормально. Остальные увидят базу, но не войдут: у них нет пользователя в базе. Чтобы базу вообще не показывать лишним, используйте отдельный файл .v8i с правами NTFS только для нужной группы, как описано выше.
Лицензии
Каждый одновременный сеанс сотрудника расходует клиентскую лицензию. На терминальном сервере это значит: 15 человек одновременно в базе — нужно не меньше 15 клиентских лицензий, независимо от того, сколько у вас рабочих станций.
Варианты размещения лицензий:
- 💿 Программные лицензии на сервере 1С. Включите в свойствах базы в консоли кластера выдачу лицензий сервером 1С:Предприятия — тогда клиенты на терминальном сервере берут лицензии с сервера 1С.
- 🔌 Аппаратный ключ (HASP) сетевой. Ставится на любой компьютер с менеджером лицензий, клиенты находят его по сети.
- 🖥️ Программные лицензии на самом терминальном сервере. Активируются на этот компьютер и делятся между его сеансами.
Без доступной лицензии платформа базу не запустит и сообщит, что лицензия не найдена. Учёт занятых лицензий удобно смотреть командой rac session list --licenses на сервере 1С или в консоли кластера на вкладке сеансов.
Раздача списка баз по домену через групповые политики
Когда клиент 1С стоит на десятках рабочих станций, править 1CEStart.cfg на каждой вручную долго. Его разносят групповой политикой.
- Положите общий список в сетевую папку, например
\\fs01\1C$\Lists\all.v8i. Права: «Чтение» для группы1C_Users. - Подготовьте эталонный
1CEStart.cfgсо строкойCommonInfoBases=\\fs01\1C$\Lists\all.v8iи положите его рядом. - Откройте
Управление групповой политикой(gpmc.msc), создайте объект групповой политики и привяжите его к подразделению с компьютерами. - Перейдите в
Конфигурация компьютера → Настройка → Конфигурация Windows → Файлы. - Создайте элемент с действием «Заменить»: источник —
\\fs01\1C$\Lists\1CEStart.cfg, назначение —C:\ProgramData\1C\1CEStart\1CEStart.cfg. - На рабочей станции выполните
gpupdate /forceи перезапустите окно 1С.
Файл 1CEStart.cfg в ProgramData содержит не только список баз. Если на машинах в нём прописаны свои параметры (например, версия по умолчанию), действие «Заменить» их сотрёт. Соберите эталонный файл с учётом всех нужных строк заранее.
Если GPO недоступны, тот же результат даёт скрипт входа. Простейший вариант на bat:
@echo off
if not exist "C:\ProgramData\1C\1CEStart" mkdir "C:\ProgramData\1C\1CEStart"
copy /Y "\\fs01\1C$\Lists\1CEStart.cfg" "C:\ProgramData\1C\1CEStart\1CEStart.cfg"
Скрипту входа нужны права на запись в C:\ProgramData, поэтому надёжнее назначать его как скрипт запуска компьютера, а не входа пользователя.
Копировать прямо в профиль %APPDATA%\1C\1CEStart\ibases.v8i тоже можно, но так вы затрёте личные базы сотрудников (тестовые копии, базы других организаций). Общий список через CommonInfoBases этого недостатка лишён.
Почему база не появилась у пользователя или не открывается
Сначала поймите, на каком этапе проблема: базы нет в списке, или она есть, но не подключается.
Базы нет в окне запуска
- 📄 Ошибка в пути. Опечатка в
CommonInfoBasesили путь к букве диска, которая у пользователя не подключена. Используйте UNC-пути\\сервер\папка, а неZ:\. - 🔒 Нет права чтения. Откройте путь к
.v8iпод учёткой сотрудника через проводник. Не открывается — дело в правах. - 📝 Правили не тот файл. Настройки «для всех» лежат в
C:\ProgramData\1C\1CEStart\, а не в%APPDATA%администратора. - 🔤 Сломана кодировка или синтаксис. Нет квадратных скобок у имени, лишняя кавычка в
Connect. Сверьте с файлом, который 1С сформировала сама. - 🔁 Окно запуска было открыто. Список перечитывается при запуске, закройте окно 1С и откройте снова.
База есть, но не подключается
Если для освобождения лицензий решите завершить зависшие сеансы в консоли кластера — у этих сотрудников оборвётся работа и пропадут несохранённые данные. Делайте это после предупреждения или вне рабочего времени.