Функции для проверки полей текущего пользователя

Проверка наличия статуса Суперадминистратор (isSuperAdmin())

Функция isSuperAdmin предназначена для проверки, есть ли у текущего пользователя статус Суперадминистратор. Функция возвращает True при наличии статуса.

Синтаксис
isSuperAdmin()

Проверка наличия роли (hasRole())

Функция проверяет, назначена ли текущему пользователю определенная роль. В качестве аргумента может быть передано название роли или ее UUID.

Синтаксис
hasRole(<UUID роли | имя роли>)

Пример

Проверка наличия указанной роли и статуса Суперадминистратор
condition: !rql @CurrentUser NOT hasRole('system7436') AND NOT isSuperAdmin()

При данном условии правило применяется, если у пользователя нет ни роли с названием system7436, ни статуса Суперадминистратор.

Проверка принадлежности к группе (hasUserGroup())

Функция проверяет, входит ли текущий пользователь в определенную группу. В качестве аргумента могут быть переданы название группы или ее UUID.

Синтаксис
hasUserGroup(<group_id>[<group_name>])

Здесь:

  • <group_id> (необязательный аргумент) — UUID группы;

  • <group_name (необязательный аргумент) — название группы.

Примеры

Проверка принадлежности к указанной группе пользователей
condition: !rql hasUserGroup('dc02d107-51de-425d-81ee-25a6495cb615[Group1]')

При данном условии правило применяется для пользователей, входящих в группу Group1 с UUID dc02d107-51de-425d-81ee-25a6495cb615.

Проверка невхождения в указанную группу пользователей
condition: !rql NOT hasUserGroup('dc02d107-51de-425d-81ee-25a6495cb615[Group1]')

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

Проверка принадлежности к нескольким группам
condition: !rql hasUserGroup('dc02d107-51de-425d-81ee-25a6495cb615[Group1]') AND hasUserGroup('720feef1-dcba-465e-9f7a-05fe49494097[Group2]')

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

Была ли полезна эта страница?

Обратная связь