Управление доступом на примере ограничения к определенному хранилищу денег

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

Из-за этого, возможно, управление доступом несколько нетривиально.

Здесь приведу пример по ограничению доступа по формуле "пользователь может работать с любым хранилищем денежных средств, кроме конкретного".

Например, в конфигурации три пользователя:

    • Администратор (полные права)
    • Финансист (обычный пользователь роли "казначей", но без ограничения по хранилищам денег)
    • Кассир (обычный пользователь роли "кассир", но с ограничением к одному конкретному хранилищу денег)

Для начала, приведу скриншоты из конфигуратора, как добавлены системным администратором:

Пользователи

При создании новой базы данных должны быть выбраны пункты: "Учет денег", "Учет денег в нескольких хранилищах"

и "работа нескольких пользователей"

В основных настройках конфигурации, можно проверить, что задан: "Учет движения денег", открыть справочник хранилищ денег.

В нашем примере будет два хранилища денег. Основная касса - общедоступное. И специальное хранилище с названием "Касса, доступная финансисту".

У обоих пользователей в качестве начальной страницы можно задать окно с остатками денег:

В базе данных зарегистрированы два прихода денег (на 100 в основную кассу и на 200 в кассу, доступную финансисту):

Задача нашего примера запретить работу с "кассой, доступной финансисту" пользователю роли "кассир", который в принципе с кассами работать имеет право.

Пользователь будет ограничен следующим образом:

1. Будет ограничен список хранилищ денег

2. Будет ограничен список документов движения денег

3. Будет ограничен доступ к реестру движения денег

4. Будут ограничены отчеты по движению и остаткам денег

Необходимо начать с конца списка,

Ограничения настроек отчетов п1.

Для этого, пока пользователь "Кассир" ещё не ограничен, нужно зайти под его логином и открыть доступные ему отчеты по деньгам:

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

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

Специальная обработка для управления доступом

Нужно зайти в базу данных Администратору и убедиться что включена система учета управления доступом:

Зададим пользователю "Администратор" полные права:

Теперь начнём задавать ограничения пользователю "Кассир"::

Обязательный отбор данных

На закладке создаём три правила

По списку хранилищ, по документам движения денег, по реестру движения денег

Ограничения настроек отчетов п2.

На закладке ограничения настроек отчетов для пользователя "Кассир" устанавливаем ограничение по всем отчетам, где произвели настройку ранее.

Теперь пользователь Кассир после начала работы не сможет выбирать недоступную кассу, не увидит движения и остатки денег в этой кассе. А в отчетах у него не будет доступно открыть окно изменения, чтобы отключить установленное ранее ограничение.