RoleGroup — различия между версиями

Материал из DevelopmenOnTheEdge
Перейти к: навигация, поиск
 
(не показаны 2 промежуточные версии этого же участника)
Строка 7: Строка 7:
 
Для удобства существуют также предопределённые группы: <code>@AllRoles</code> (все доступные роли проекта) и <code>@AllRolesExceptGuest</code> (все роли кроме роли Guest).
 
Для удобства существуют также предопределённые группы: <code>@AllRoles</code> (все доступные роли проекта) и <code>@AllRolesExceptGuest</code> (все роли кроме роли Guest).
  
Группа ролей по умолчанию сериализуется в файл security.yaml, в секцию groups.
+
Группы ролей по умолчанию сериализуются в файл security.yaml, в секцию groups. В дереве [[Project|проекта]] они хранятся в папке Security/Role groups.
 +
 
 +
Пример задания группы ролей в [[yaml]]:
 +
 
 +
security:
 +
  groups:
 +
    PortalReadOnlyRoles: '@AllRolesExceptGuest'
 +
    UtilityDispatcherRoles: Dispatcher
 +
    SocRegReadWriteRoles:
 +
    - Operator
 +
    - Reception
 +
    UtilityAddressManagerRoles: []

Текущая версия на 15:41, 19 сентября 2014

Класс
RoleGroup
Поддерживает документацию
нет
Поддерживает extras
нет


Группа ролей (role group) — поименованная совокупность ролей, которую можно назначить разом какому-либо элементу (например, операции или представлению). При использовании в списке ролей группы необходимо перед её именем поместить символ '@'. Группы ролей позволяют кастомизировать права доступа для модулей: вы можете определить в модуле группу и задать ей набор ролей по умолчанию (обычно пустой), а в проекте приложения переопределить эту группу, задав другие роли. Поэтому рекомендуется использовать в модулях только группы ролей.

Одна группа может включать другую группу. Циклическое включение не приведёт к ошибкам и какому-либо эффекту.

Для удобства существуют также предопределённые группы: @AllRoles (все доступные роли проекта) и @AllRolesExceptGuest (все роли кроме роли Guest).

Группы ролей по умолчанию сериализуются в файл security.yaml, в секцию groups. В дереве проекта они хранятся в папке Security/Role groups.

Пример задания группы ролей в yaml:

security:
  groups:
    PortalReadOnlyRoles: '@AllRolesExceptGuest'
    UtilityDispatcherRoles: Dispatcher
    SocRegReadWriteRoles:
    - Operator
    - Reception
    UtilityAddressManagerRoles: []