<< Click to Display Table of Contents >> Navigation: Проект в MasterSCADA 4D > Дерево библиотек > Библиотека BaseObjects > BaseObjects.ФБ.Users > UsersSetRoleSettings |
Функциональный блок UsersSetRoleSettings служит для изменения настроек роли в режиме исполнения. Если используется для хранения настроек пользователей сетевая БД настроек, то изменения выполненные на одном узле буду доступны на всех остальных узлах, которые добавлены в проект. Если сетевая БД настроек не используется, то информация о пользователях хранится в локальном файле, который доступен только для текущего узла. Таким образом, настройки выполненные при помощи данного ФБ будут применяться только для того узла, где они были выполнены. Если после внесения изменений в настройки роли текущий пароль не соответствует новым требованиям, то при попытке начать очередную сессию в окне авторизации будет предоставлена возможность сменить пароль.
Важно! Для возможности работы c ФБ UsersSetRoleSettings в исполнительную систему должна входить опция MSRT4D-Security. Данная опция включена в базовый функционал лицензии Enterprise.
Важно! Для работы данного функционального блока у авторизованного пользователя должно быть настроено право доступа Изменение пользователей
В результате работы функционального блока, если у права доступа Изменение пользователей установлен флаг Журнал, то сформируется сообщение, содержащее информацию как о новом значении, так и о предыдущем. Тип сообщения будет Действие пользователей
Вид в дереве |
Вид в редакторе FBD |
Входы и выходы ФБ:
Название |
Тип |
Назначение |
Входы |
||
RoleName |
STRING |
Задается имя изменяемой роли |
SessionDuration |
TIME |
Указывается длительность сессии. Если время длительности сессии достигает указанного значения, то сессия пользователя будет завершена. |
PasswordMinSize |
INT |
Определяется минимальное количество символов при настройке пароля в режиме исполнения. |
PasswordNonRepeatingCount |
INT |
Определяет, сколько раз пользователь должен задать неповторяющийся пароль. Если указано значение 0, то ограничения отсутствуют. Пример: Если указано 3, то пользователь должен трижды сменить текущий пароль на новый, отличный от текущего и двух предыдущих, а в дальнейшем (четвертый пароль) может задать пароль, совпадающий с первым. |
PasswordExpirationTime |
TIME |
Определяет срок действия пароля пользователя. Если время действия текущего пароля достигло указанного, то при начале очередной сессии пользователя появится сообщение и пользователь не будет допущен к работе, до тех пор пока пароль не будет изменен в режиме исполнения |
PasswordIsComplex |
BOOL |
Определяет состав символов при при настройке пароля в режиме исполнения. Если значение TRUE установлено, то пароль должен содержать хотя бы одну цифру, одну прописную и одну строчную букву. |
PasswordRequiresSpecChars |
BOOL |
Определяет наличие спецсимволов при настройке пароля в режиме исполнения. Если значение TRUE установлено, то пароль должен содержать хотя бы один спецсимвол. Список спецсимволов: `~!@#$%^&*()-—_+={}[]/\|:;'"<>,.? |
LogActionTry |
BOOL |
Определяет необходимость фиксирования попыток выполнения действий у пользователей назначенных на эту роль. Если значение TRUE установлено и для действия установлены флаги Подтверждение и Журнал, то запись в журнал будет производится не только, если пользователь выполнит указанное действие, но и попытается его выполнить. Например, пользователь ввел значение, в соответствии с настройками, появилось окно подтверждения, и пользователь нажал Отмена, в этом случае сообщение в журнале также будет сформировано. |
DisableMultiplyLogin |
BOOL |
Определяет возможность пользователя авторизоваться с двух разных клиентов визуализации одновременно. Если значение TRUE установлено, то возможны следующие варианты: •В случае, если есть активная сессия для этого пользователя с того же самого адреса, то закрывается прошлая сессия, создается новая •Если текущая сессия запущена на другом устройстве, с другим адресом, то в случае, если она неактивна больше 10 секунд, то она закрывается и создается новая. Если от клиента визуализации продолжают приходить запросы к исполнительной системе, то возвращается ошибка авторизации. |
DisableOSAccess |
BOOL |
Если значение TRUE установлено, то пользователи, добавленную в эту роль, не смогут воспользоваться стандартными горячими клавишам Windows, например, CTRL+ ALT+DEL. Для большинства дистрибутивов Linux (исключением является Astra Linux) эта настройка функционирует только с графической оболочкой MATE. На других графических оболочках эта настройка работать не будет. Перед началом использования данной функции нужно выполнить определенные действия: Для ОС Windows: перед первым использованием запустить файл C:\Program Files\MPSSoft\MasterSCADA 4D RT 1.2\Redistributable\Interception\install_ЗапускатьОтИмениАдминистратора.bat Для ОС Linux (ALTLinux): открыть терминал и задать следующие команды: cd /opt/MasterSCADA4DClient-linux-x64 /MasterSCADA4DClient -f -u http://127.0.0.1 Для ОС Astra Linux поддержать запрет открытия меню Пуск можно следующими действиями: •Открыть терминал и задать команду: /usr/share/fly-wm/keyshortcutrc •Копировать файл keyshortcutrc в другое место системы для сохранения исходного содержимого файла в качестве бэкапа •В файле /usr/share/fly-wm/keyshortcutrc удалить всё, кроме строки [ShortCutKeys] •Сохранить файл •После замены файла перезагрузить mplc. Если настройки не применились, следует перезагрузить систему, на которой установлена исполнительная система. Так же для того, чтобы блокировать доступ к ОС Astra Linux при использовании контролов с возможностью печати требуются дополнительные действия для отключения системных уведомлений об очереди печати. |
MaxLoginCount |
DINT |
Определяет сколько раз пользователь может попытаться не успешно начать сессию в клиенте визуализации. После успешного запуска сеанса работы счетчик количества неуспешных попыток должен сбрасываться. Если установлено значение 0, то ограничение отсутствует. Данная настройка применяется только к пользователям, созданным в режиме исполнения |
PasswordMinTime |
TIME |
Определяет минимальный срок существования пароля. Задается в мс. Если с предыдущей смены пароля прошло времени меньше, чем указано в данном свойстве, то при попытке его смены в режиме исполнения функциональный блок (UsersChangeOwnPassword, UsersSetPassword), выполняющий смену пароля выдаст ошибку. |
PauseAfterInvalidLogins |
TIME |
Определяет интервал времени в течении которого пользователь, который не смог авторизоваться за количество попыток, разрешенное в предыдущем пункте, не сможет повторить попытки авторизоваться в клиенте визуализации. Данная настройка применяется только к пользователям, созданным в режиме исполнения |
EndSessionByTime |
BOOL |
При значении TRUE, сессия пользователя будет завершена после окончания смены. Время начала, и конца смены задается через функциональный блок UsersSetAllowedTime. |
SessionEndDelay |
TIME |
Определяет время спустя которое будет завершаться сессия пользователя после окончания смены. Данная настройка работает только при значении TRUE на входе EndSessionByTime или при установленном флаге Завершать сеанс после окончания смены. |
SessionIdleTime |
TIME |
Определяет интервал времени по истечению которого происходит завершение сессии, если пользователь не совершает никаких действий в окне (клики мыши, клавиатурный ввод). |
AllowedAddress |
STRING |
Указывается список разрешенных IP-адресов, с которых пользователи настраиваемой роли могут подключаться к исполнительной системе. IP-адреса задаются через запятую. Также, доступно указание диапазонов для разных полей IP-адресов с использованием квадратных скобок []. При этом, внутри скобок допускаются: •диапазоны - например [1-100] •перечисления - например [1,2,3,5] •сочетания - например [1-100, 115, 120-150] Например: 192.168.[1-10].[1-100] Пустое значение означает, что разрешенным является любой IP адрес. Важно! Если белые списки IP-адресов настроены для Узла и Роли, то доступ разрешен только при наличии IP-адреса клиента в обоих списках. Важно! Если пользователь состоит в нескольких ролях с разными белыми списками, то применяется только полное пересечение. То есть, разрешен вход только с тех IP-адресов, которые присутствуют в списках всех ролей, в которых состоит пользователь. |
Выходы |
||
Error |
STRING |
Выдается текст ошибки, если изменения не были внесены. |
В панели свойств программы, в которой находится ФБ, в категории Задача рекомендуется устанавливать свойство Способ исполнения в состояние По вызову:
Как правило, изменения вносятся после нажатия на Кнопку. Для этого в ее событие Клик мыши добавляют действие Вызвать программу путем перетаскивания функционального блока на вход действия Программа.
О том, была ли работа ФБ успешной, можно судить по выходу ФБ EnO. Если добавления пользователя не произойдет, то выход примет значение False.
Смотрите также:
Работа с пользователями в режиме исполнения