<< Click to Display Table of Contents >> Navigation: Проект в MasterSCADA 4D > Дерево системы > Безопасность > Работа с пользователями в режиме исполнения |
В режиме исполнения можно выполнять следующие действия с пользователями: добавлять новых пользователей, менять добавленным в режиме исполнения новым пользователям имя, пароль и назначение на роль.
Если одну из вышеупомянутых операций требуется делать в режиме исполнения, то порядок настройки прав доступа в режиме разработки будет таким:
1. Создаются Роли, в группе Безопасность в дереве системы.
2. Для ролей настраиваются права доступа, как глобальные (на уровне дерева системы), так и локальные (непосредственно в настрокахх каждого из элементов проекта) так, как это описано в разделе Настройка прав пользователей в режиме разработки.
3. Создается окно с элементами управления, которые будут связаны со специальными функциональными блоками из библиотеки BaseObjects.ФБ.Users:
Список функциональных блоков для работы с пользователями в режиме исполнения смотрите в соответствующем разделе.
4. Создается пользователь в режиме разработки, который обладает доступом к новому окну и к элементам управления, созданным разработчиком проекта, а также имеет право доступа изменение пользователей.
5. После загрузки проекта в узел, в режиме исполнения формируется список пользователей при помощи созданного окна. Права доступа назначаются пользователям путем добавления их на нужные роли.
Важно! Если пользователь не назначен ни на одну роль, то он не будет обладать правами доступа, позволяющими ему выполнять какие-либо действия в режиме исполнения.
В результате работы ФБ UsersAdd создается файл Users-[уникальный GUID проекта] на том узле, где исполняется данный функциональный блок. Все другие функциональные блоки группы BaseObjects.ФБ.Users будут работать с этим файлом.
В случае, если необходимо организовывать работу с операторами в режиме исполнения в различных проектах, то можно разработать библиотечный объект, который будет содержать в себе необходимые функциональные блоки и окно, и использовать этот объект в различных проектах.
Настройки безопасности, сделанные в режиме исполнения, могут храниться как в БД, так и в файле типа Users-[уникальный GUID проекта].private внутри рабочей папки исполнительной системы. Файл закодирован.
Важно! В БД и в файле Users-[уникальный GUID проекта].private пароли для учетных записей пользователей хранятся в хешированном виде с указанием алгоритма хеширования Argon2. Одинаковые пароли имеют различные хеши. При хешировании пароля используется соль, сформированная случайным образом. Соль хранится в БД вместе с хешем пароля и генерируется в случае, если не была задана ранее.