api.security Работа с правами

Методы работы с правами используются в скриптах проверки прав доступа пользователей:

Проверка наличия профиля или роли

  • api.security.hasProfile(fqn, profile)

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

    Данная конструкция имеет ограниченное применение, она не используется для действий по событию, так как в этом случае действие производится от лица суперпользователя.

    Параметры метода:

    • fqn — fqn типа (класса) объекта, для которого проверяются права;
    • profile — профиль пользователя.
  • api.security.hasProfile(object, profile)

    Проверка наличия профиля у текущего пользователя для указанного объекта:

    Параметры метода:

    • object — объект, для которого проверяются права;
    • profile — профиль пользователя.
  • api.security.hasRole(object, role)

    Проверка наличия роли у текущего пользователя для указанного объекта.

    Данная конструкция имеет ограниченное применение, она не используется для действий по событию, так как в этом случае действие производится от лица суперпользователя.

    Параметры метода:

    • object — объект, для которого проверяются права;
    • role — роль пользователя.

Проверка прав

  • api.security.hasAddServiceCallPermission(fqns, client, user)

    Проверка, имеет ли текущий пользователь права на создание запросов указанных типов.

    Параметры метода:

    • fqns — список типов запроса, для которых выполняется проверка (строка или ClassFqn);
    • client — контрагент, для которого проверяются права: сотрудник, отдел или команда (идентификатор или объект);
    • user — сотрудник, для которого выполняется проверка прав.
  • api.security.hasEditPermission(object, attributeCode) [не поддерживается и корректная работа метода не гарантируется!]

    Проверка, имеет ли текущий пользователь разрешение на редактирование атрибута.

    Параметры метода:

    • object — объект, атрибут которого нужно проверить на возможность редактирования;
    • attributeCode — код атрибута.

    Возвращаемое значение: true, если есть разрешение; false, если нет разрешения.

Работа с паролями

  • api.security.forceGlobalPasswordChange()

    Обязать всех пользователей сменить пароль при следующем входе в систему.

    При входе в систему все пользователи будут перенаправляться на форму принудительной смены пароля.

    Исключение: Пользователь не перенаправляется на форму принудительной смены пароля, если переход в систему был по ссылке, содержащей accessKey.

  • api.security.forcePasswordChange(employee)

    Обязать конкретного пользователя сменить пароль при следующем входе в систему.

    При входе в систему указанный пользователь будет перенаправлен на форму принудительной смены пароля.

    Параметр метода:

    • employee — пользователь, который будет обязан сменить пароль, или его uuid.

    Исключение: Пользователь не перенаправляется на форму принудительной смены пароля, если переход в систему был по ссылке, содержащей accessKey.

  • api.security.generatePassword()

    Сгенерировать пароль, удовлетворяющий политике безопасности.

    Возвращаемое значение: Сгенерированный пароль, который содержит:

    • английские буквы;
    • не более 2-х цифр (есть требование на использование цифр);
    • не более 1 спецсимвола из !, @, #, $, %, ^, &, *, (, ), =, + (есть требование на использование спецсимволов).

    Минимальная длина 7 символов (если значение параметра "Минимальное количество символов в пароле" равно или меньше 7) или соответствует указанному в параметре.

    Описание требований политики безопасности см. Политика безопасности паролей.

Работа с группами пользователей

  • api.security.getGroup(grpCode)

    Определение группы пользователей по ее коду.

    Параметр метода:

    • grpCode — код группы пользователей. String.

    Возвращаемое значение: Группа пользователей.

  • api.security.getAllEmployees(groups)

    Определение сотрудников заданной группы пользователей.

    Параметр метода:

    • groups — группы пользователей.

    Возвращаемое значение: Группа пользователей.

  • api.security.addMembersToGroup(grpCode, membersUUIDs)

    Добавление участников в группу пользователей.

    Параметры метода:

    • grpCode — код группы пользователей. String
    • membersUUIDs — коллекция UUID участников группы пользователей: сотрудников, команд, отделов
  • api.security.addMemberToGroup(grpCode, memberUUID)

    Добавление участника в группу пользователей.

    Параметры метода:

    • grpCode — код группы пользователей. String
    • memberUUID — UUID участника группы пользователей: сотрудника, команды, отдела
  • api.security.removeMemberFromGroup(grpCode, memberUUId)

    Удаление участника из группы пользователей.

    Параметры метода:

    • grpCode — код группы пользователей. String
    • memberUUID — UUID участника группы пользователей: сотрудника, команды, отдела