Как ограничить список пользователей при запуске 1С для разных магазинов или отделов

Системный администратор 1С v8.3 (Управляемые формы) Торговля и дистрибуция
← На главную

Когда в одной информационной базе работает большое количество сотрудников из разных подразделений или магазинов, стандартное окно выбора пользователя превращается в бесконечный список. Это замедляет работу кассиров и продавцов, а также создает риски безопасности. Рассмотрим подробнее, как организовать вход в систему так, чтобы сотрудники видели только свои учетные записи или заходили в программу автоматически.

Решение 1: Использование индивидуальных ярлыков с параметрами запуска

Самый простой и быстрый способ — создание на рабочем столе терминального сервера отдельных ярлыков для каждого пользователя или группы пользователей. Разберем, как настроить параметры командной строки 1С. Для этого в свойствах ярлыка в поле "Объект" после пути к исполняемому файлу добавьте следующие ключи:

  1. /N "ИмяПользователя" — предустанавливает имя пользователя в окне авторизации.
  2. /P "Пароль" — позволяет сразу войти в систему без ввода пароля (используйте осторожно, так как пароль виден в свойствах ярлыка).
  3. /WA- — отключает попытку автоматической Windows-авторизации, если она настроена, и принудительно вызывает окно 1С.

Проанализируем пример строки запуска для конкретного продавца:


"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"C:\Bases\Trade" /N"Продавец Касса 1" /P"12345"

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

Решение 2: Настройка свойства "Показывать в списке выбора"

Если вы хотите, чтобы при запуске 1С (без параметров в ярлыке) пользователь видел только ограниченный список, воспользуйтесь встроенным свойством платформы. В режиме "Конфигуратор" перейдем в меню "Администрирование" — "Пользователи". В карточке каждого пользователя на вкладке "Основные" найдем флажок "Показывать в списке выбора".

Рассмотрим стратегию настройки:

  1. Скроем всех рядовых сотрудников: Снимите флажок у всех кассиров и продавцов. Теперь им придется вводить свое имя вручную (или заходить через ярлык с параметром /N).
  2. Оставим только администраторов: Оставьте флажок включенным только для тех, кто должен выбирать себя из списка.

Это значительно повышает безопасность базы данных, так как злоумышленник не увидит перечень логинов при попытке входа.

Решение 3: Сквозная Windows-авторизация (рекомендуемый метод)

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

Разберем этапы настройки:

  1. В "Конфигураторе" в карточке пользователя установите флажок "Аутентификация операционной системы".
  2. Выберите соответствующего пользователя домена или локальной машины в поле "Пользователь".
  3. Убедитесь, что в ярлыке запуска НЕ используется ключ /WA-.

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

Решение 4: Динамическое формирование списков через пакетные файлы (BAT/CMD)

Если продавцов много и они часто меняются, создавать ярлыки вручную неудобно. Мы можем автоматизировать этот процесс. Создадим простой .bat файл, который будет предлагать выбор магазина. Посмотрим на пример кода для такого скрипта:


@echo off
echo Выберите ваш магазин:
echo 1 - Магазин Север
echo 2 - Магазин Юг
set /p shop="Введите номер: "

if "%shop%"=="1" start "" "C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\1C_Base" /N"Продавец_Север"
if "%shop%"=="2" start "" "C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\1C_Base" /N"Продавец_Юг"

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

Решение 5: Создание "Оболочки" на языке 1С

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

Проанализируем примерный алгоритм в коде:


Процедура ПередЗапускомСистемы(Отказ)
    // Проверяем, запущен ли сеанс под "Выборщиком"
    Если ИмяПользователя() = "ВыборПользователя" Тогда
        // Открываем форму со списком сотрудников магазина
        ВыбранныйПользователь = ОткрытьФормуМодально("Обработка.ВыборСотрудника.Форма");
        Если ЗначениеЗаполнено(ВыбранныйПользователь) Тогда
            // Формируем строку запуска для нового сеанса
            ПараметрыЗапуска = "/N """ + ВыбранныйПользователь + """";
            ЗапуститьПриложение(СтрокаСоединенияИнформационнойБазы() + " " + ПараметрыЗапуска);
        КонецЕсли;
        // Завершаем текущий технический сеанс
        ЗавершитьРаботуСистемы(Ложь);
    КонецЕсли;
КонецПроцедуры

Решение 6: Использование файла ibases.v8i и групповых политик (GPO)

Системные администраторы могут использовать файл ibases.v8i, в котором хранятся настройки списка баз. Для каждого подразделения можно подготовить свой файл v8i, где в параметре AdditionalParameters будет прописан ключ /N с соответствующим списком. С помощью групповых политик Windows нужный файл можно подкладывать в профиль пользователя в зависимости от его принадлежности к группе в Active Directory.

Рассмотрим структуру записи в файле ibases.v8i:


[Магазин №5]
Connect=File="C:\1C_Bases\Retail";
ID=...
OrderInList=1
Folder=/
AdditionalParameters=/N "Кассир5"

Подведение итогов

Мы рассмотрели несколько способов решения проблемы длинных списков. Выбор конкретного метода зависит от вашей инфраструктуры:

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

← На главную