Управление доступом
Управление доступом позволяет наделять игроков, которые не являются администраторами, дополнительными правами:
-
задания — предоставляет возможность создавать и проверять задания с вознаграждением для тех игроков, роль которых в системе ниже вашей;
-
квесты:
-
играть — предоставляет возможность проходить квесты только в качестве игрока;
-
управлять — предоставляет возможность создавать новые квесты и управлять ими (редактировать и удалять);
-
проверять — предоставляет возможность проверять задания квеста, по которым игрок назначен ответственным;
-
формы — предоставляет возможность обрабатывать заявки;
-
лог событий — предоставляет возможность просматривать лог событий;
-
программы обучения — предоставляет возможность создавать и управлять программами обучения для сотрудников:
-
составлять тесты для контроля знаний в процессе обучения и перехода на следующий уровень сложности;
-
создание уровней сложности владения профессией (новичок, стандарт, профи);
-
назначение профессий, по которым компания планирует проводить обучение;
-
база знаний — предоставляет возможность создавать обучающие материалы.
Права можно назначать следующим категориям (классам):
-
отделы — класс с наименьшим приоритетом;
-
команды — класс, который приоритетнее, чем отделы;
-
роли — класс, который приоритетнее, чем команды;
-
пользователи (игроки) — класс, который имеет наивысший приоритет;
Управление доступом осуществляется одним из следующих способов:
-
белый фон кнопки — наследует (перенимает) цвет фона кнопки от класса с приоритетом ниже, а для класса с наименьшим приоритетом (отделы) — запрещает пользование правом;
-
зеленый фон кнопки — разрешает пользование правом;
-
красный фон кнопки — запрещает пользование правом.
Пример
Классы | Право 1(создание заданий) | Право 2 (просмотр лога событий) |
Отдел (программисты) | Зеленый фон | Зеленый фон |
Команда (технари) | Белый фон | Белый фон |
Роль (сотрудник) | Белый фон | Красный фон |
Игрок (Дмитрий) | Белый фон | Белый фон |
Итог: доступ к праву | Доступ разрешен | Доступ запрещен |
Приоритет работает следующим образом. Возьмем для примера Дмитрия Ростова (игрок), который является сотрудником (роль) отдела «Программисты» (отдел) и состоит в команде «Технари» (команда). Цвета кнопок для классов указаны в таблице в колонке «Право 1(создание заданий)».
Определять итоговый доступ к праву нужно начинать с класса, который имеет наивысший приоритет — с профиля игрока. У Дмитрия «Создание заданий» имеет белый фон, т.е. перенимает цвет кнопки у класса с приоритетом ниже — у роли. У роли «Сотрудник» тоже стоит кнопка с белым фоном, т.е. роль перенимает цвет кнопки у класса с приоритетом ниже — у команды. У команды «Технари» тоже стоит кнопка с белым фоном, т.е. команда перенимает цвет кнопки у класса с приоритетом ниже — у отдела. Отдел «Программисты» имеет зеленый фон кнопки, т.е. для этого отдела разрешено создавать задания, следовательно Дмитрий также имеет это право.
Если бы у отдела «Программисты» кнопка была с красным или белым фоном, то Дмитрий не имел бы право на создание заданий (красный фон запрещает пользование правом и белый фон в данном случае тоже запрещает, потому что стоит у класса с наименьшим приоритетом).
Если бы у команды «Технари» кнопка имела бы красный фон, а у отдела «Программисты» зеленый, то Дмитрий не имел бы право на создание заданий, потому что класс «Игрок» наследует белый фон от класса «Роль», а класс «Роль» наследует от команды красный, тем самым запрещая право на создание заданий независимо от того, что отдел имеет кнопку с зеленым фоном (команды имеют приоритет над отделами).
Рассмотрим еще для примера имеет ли Дмитрий доступ к праву «Просмотр лога игры» (колонка № 3 в таблице). Всегда начинаем с класса, который имеет наивысший приоритет — с профиля игрока. У Дмитрия «Создание заданий» имеет белый фон, т.е. перенимает цвет кнопки у класса с приоритетом ниже — у роли. У роли «Сотрудник» кнопка имеет красный фон, т.е. запрещает пользование правом. Значит Дмитрий также не может просматривать лог игры. Цвета кнопок для команд и отделов в этом случае не имеют значения, так как класс роли приоритетнее, чем классы команд и отделов.