При предоставлении доступа к информационной базе 1С через веб-интерфейс внешним пользователям, например, клиентам или партнерам, часто возникает задача скрыть из списка выбора учетные записи внутренних сотрудников. Это необходимо как для удобства, так и для соображений конфиденциальности. Разберем несколько способов, как можно решить эту задачу, от самого простого до наиболее гибкого.
Самый быстрый и очевидный способ — воспользоваться встроенной возможностью платформы 1С. В настройках каждого пользователя есть специальный флаг, который отвечает за его отображение в списке при запуске программы.
Рассмотрим по шагам, как это сделать:
Важный момент: после выполнения этих действий скрытые пользователи не смогут выбрать свое имя из списка. Чтобы войти в систему, им потребуется каждый раз вручную вводить свой логин и пароль. Это касается всех видов клиентов — и веб, и тонкого, и толстого.
Для частичного решения проблемы неудобства ручного ввода можно учесть, что современные браузеры обычно кэшируют имя пользователя после первого успешного входа. Таким образом, при последующих запусках веб-клиента поле с логином, скорее всего, будет уже заполнено, и останется только ввести пароль.
Что делать, если нужно, чтобы в тонком клиенте сотрудники видели полный список, а в веб-интерфейсе — только учетные записи клиентов? Стандартная настройка из первого способа этого не позволяет. Однако, если ваша база опубликована на веб-сервере Apache, можно применить более хитрый подход.
Суть метода заключается в том, чтобы перехватить запрос веб-клиента на получение списка пользователей и подменить его своим, заранее подготовленным списком. Это делается с помощью конфигурационного файла .htaccess (развернуть и настроить Apache на Windows поможет специальный скрипт).
Проанализируем шаги реализации:
default.vrd.users.txt. В этом же каталоге создайте простой текстовый файл с именем users.txt. Внутри этого файла перечислите в столбик имена (логины) только тех пользователей, которые должны быть видны в веб-интерфейсе. Например:
Client_Ivanov
Client_Petrov
.htaccess. В этом же каталоге создайте файл с именем .htaccess (именно с точкой в начале). Добавьте в него специальные правила перезаписи URL, которые будут перенаправлять запрос на список пользователей к вашему файлу users.txt.Таким образом, когда пользователь открывает веб-клиент в браузере, Apache перехватывает системный запрос 1С, вместо стандартного списка отдает содержимое файла users.txt, и клиент видит только указанных в нем пользователей. При этом пользователи, работающие через тонкий или толстый клиент, будут по-прежнему видеть полный список из конфигуратора.
Примечание: для веб-сервера IIS (Internet Information Services) существует аналогичный механизм настройки правил перезаписи URL (URL Rewrite), но его конфигурация выполняется через средства управления IIS, а не через файл .htaccess.
Это самый гибкий и профессиональный подход, который позволяет полностью контролировать процесс входа и внешний вид страницы авторизации. Он идеально подходит, если вы хотите интегрировать доступ к 1С в корпоративный портал или сайт компании.
Рассмотрим основные принципы этого решения:
POST на URL-адрес запуска веб-клиента 1С. Параметры аутентификации будут переданы напрямую, и если они верны, пользователь сразу попадет в информационную базу, минуя стандартное окно выбора пользователя.Главные преимущества этого подхода:
В итоге, выбор способа зависит от ваших задач. Для быстрого сокрытия нескольких учетных записей достаточно стандартных настроек конфигуратора. Если требуется разделить видимость для разных типов клиентов — подойдет настройка на веб-сервере. А для максимальной гибкости и интеграции лучшим решением станет создание собственной страницы аутентификации.