Мельница данных- Управление доступом пользователей  (раздел целиком)  (29.03.2020)
Управление доступом пользователей

После того, как база данных создана и инициализирована метаданными платформы, доступ к системе будет иметь один пользователь - администратор созданной БД. Добавление других пользователей, ролей пользователей и включение пользователей в роли выполняется в представлениях Пользователи и Роли в Системной форме. После начальной инициализации БД на вкладке Пользователи можно увидеть одного пользователя с именем, соответствующим логину администратора БД (Например, для FireBird пользователь SYSDBA), на вкладке Роли можно увидеть одну роль с наименованием Администраторы. На подчиненных вкладках этих представлений можно увидеть, что пользователь - администратор включен в роль Администраторы.

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

  1. Перечня доступных форм
  2. Перечня доступных визуальных групп
  3. Перечня групп запретов

Формирование профиля происходит одинаково как для роли, так и для отдельного пользователя. Однако рекомендуется формировать профили для ролей, а не для отдельных пользователей. В этом случае при подключении к системе новых пользователей, изменении параметров доступа для существующего пользователя достаточно будет включить пользователя в одну из ролей, или исключить его из роли. Роли рекомендуется формировать содержательным образом на основе распределения обязанностей реальных пользователей, работающих с прикладным решением.


1. Создание пользователей

Создание пользователя системы включает в себя два этапа:

  1. Создание пользователя БД средствами используемой СУБД. Для этого наряду с возможностями каждой из СУБД Утилитой обслуживания БД предлагается действие Создать пользователя. Предлагаемые Утилитой по умолчанию пути к БД и параметры доступа требуют уточнения в зависимости от условий функционирования реальной БД. Задавать права доступа пользователя к объектам БД на данном этапе не надо.
  2. В Системной форме на вкладке Пользователи создать нового пользователя при помощи соответствующего действия контекстного меню.
            В поле Имя нужно вветси строку, строго соответствующую логину пользователя БД в вернем регистре.
    Особых требований к полю Наименование не предъявляется. Однако рекомендуется вводить в это поле фамилию и имя реального пользователя системы, например, Смирнов Иван Николаевич, что позволить в последующем получать информативные данных об активности пользователей системы.

2. Создание ролей

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

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


3. Включение пользователей в роли

В роль могут включаться как пользователи, так и другие роли. Для добавления в роль нового члена роли нужно выбрать роль на вкладке Роли, отрыть подчиненную вкладку Члены роли и вызвать на ней действие Создать. Поля формы параметров заполняются следующим образом:

  • Пользователь - в этом поле необходимо выбрать либо одного из пользователей, либо одну из ролей. В зависимости от того, выбран ли пользователь или роль, будет меняться доступность следующих ниже полей.
  • Основная роль - в этом поле можно установить значение Да или Нет. Если пользователь включен в нескольно ролей, то среди них можно выделить одну основную. Разработчик прикладного решения на платформе сможет использовать это значение для управления доступом к объектам системы. Поле доступно для выбора значения только в том случае, если в поле Пользователь выбран именно пользователь, а не роль.
  • Добавить связанные роли - в этом поле можно установить значение Да или Нет. Поле доступно для выбора значения только в том случае, если в поле Пользователь выбрана роль. При установке значения Да в роль будут включены также все роли, входящие в выбранную. при установке значения Нет будет включена только одна роль без подчиненных ролей.

После включения пользователя в роль он получает права доступа ко всем визуальным группам и формам, а также к группам запретов, заданным для роли.


4. Формирование перечня доступных визуальных групп

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

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

Для добавления новой визуальной группы, доступной роли или пользователю, необходимо выбрать роль или пользователя на соответствующей вкладке (Роли или Пользователи), отрыть подчиненное представление Доступные визуальные группы и выполнить в нем действие Создать. В форме параметров нужно выбрать одну из существующих визуальных групп. Если необходимо дать доступ к нескольким визуальным группам, действие создания нужно повторить.

        Если пользователь включен в несколько ролей, то достаточно наличия доступа к визуальной группе в одной из этих ролей.

5. Формирование перечня доступных форм

Формы создаются разработчиком прикладного решения. Работа с визуальными группами ведется в Системной форме на вкладке Формы. Каждая форма представляет собой набор представлений, связанных друг с другом определенным образом. Иконки всех форм, доступных пользователю, отображаются на Панели инструментов в верхней части экрана. Нажимая на одну из иконок форм, пользователь может переключаться между ними. Если форма входит в одну из доступных пользователю визуальных групп, она отобразится на консоли управления. В этом случае переключаться между формами пользователь сможет как на Панели инструментов, так и на Консоли управления.

Для каждой роли (или для отдельного пользователя) формируется перечень форм, которые будут ему доступны на Консоли управления. При открытии системы пользователь видит первую из доступных ему форм, открываемую автоматически.

Для добавления новой формы, доступной роли или пользователю, необходимо выбрать роль или пользователя на соответствующей вкладке (Роли или Пользователи), отрыть подчиненное представление Доступные формы и выполнить в нем действие Создать. В форме параметров нужно выбрать одну из существующих форм. Если необходимо дать доступ к нескольким формам, действие создания нужно повторить.

        Если пользователь включен в несколько ролей, то достаточно наличия доступа к форме в одной из этих ролей.

6. Формирование перечня групп запретов

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

  • Запрет на класс
  • Запрет на свойство
  • Запрет на подпрограмму

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