Управление в Orchard CMS: работа с пользователями, ролями и разрешениями

Это продолжение цикла статей на тему разработки собственных сайтов на базе системы управления контентом Orchard CMS. Первые статьи данного цикла вы можете найти по следующим ссылкам:

В предыдущих статьях цикла мы рассмотрели расширение Orchard CMS через создание виджетов, модулей, пакетов и тем оформления. В нескольких следующих статьях мы рассмотрим управление системой на базе Orchard CMS. В этой статье речь пойдет о управлений в Orchard CMS пользователями, ролями и правами. Эта статья основана на статьях Managing Users and Roles и Understanding Permissions.

Управление пользователями и ролями

Orchard предоставляет возможность управлять пользователями и их ролями на сайте. Каждому пользователю может быть присвоено одна и более ролей и различный набор разрешений.

Для того чтобы управлять пользователями сайта перейдите в раздел Users (пользователи) панели администрирования.

image

По умолчанию на сайте зарегистрирован только один пользователь – администратор сайта, с помощью которого осуществляется первичная настройка сайта на этапе установки. Для того, чтобы добавить еще одного пользователя щелкните Add a new user (Добавить нового пользователя) . Здесь же вы можете редактировать, удалять и выключать учетные записи пользователей.

image

После добавления нового пользователя укажите его имя, email и пароль, а так же одну или более ролей, которые будет играть пользователь на сайте. Роль определяет что именно разрешено пользователю на сайте, какие операции он сможет выполнять. Итоговые разрешения определяются объединением всех разрешений всех ролей, в которых участвует пользователь. Разрешения всегда предоставляют доступ пользователю и никогда не запрещают.

image

Вы можете конфигурировать роли на сайте через пункт меню Roles панели администрирования.

image

По умолчанию, Orchard включает следующий набор предустановленных ролей:

  • Administrator – могут выполнять любые действия (имеют все разрешения);
  • Editor – могут создавать, публиковать и редактировать свои и чужие контентные элементы;
  • Moderator – могут модерировать комментарии и теги;
  • Author – могут создавать, редактировать и публиковать только собственные контентные элементы;
  • Contributor – могут создавать и редактировать собственные контентные элементы, но не могут публиковать их;
  • Anonymous – обладают разрешением только на просмотр сайта;
  • Authenticated – могут просматривать сайт и осуществлять другие операции в зависимости от установки параметров роли.

image

Для редактирования разрешений любой роли нажмите Edit (редактировать) напротив роли.

image

Пользовательские разрешения

Некоторые разрешения указывают на разрешение пользователю выполнять определенное действие, другие – на выполнение группы действий. Разрешения, которые относятся к группам действий, обычно являются разрешениями высокого уровня, логически включая в себя действия более низкого уровня. Когда вы выдаете пользователю разрешение высокого уровня, которое влияет на группу действий, низкоуровневые разрешения добавляются неявно. Например, если вы дадите пользователю разрешение управлять блогами, вы так же выдадите разрешения на редактирование, публикацию и удаление блогов.

Вы можете увидеть какие разрешения выданы явно или неявно, посмотрев на колонки Allow и Effective. Колонка Allow показывает какие разрешения были выданы явно, а колонка Effective – выданные неявно. Следующий скриншот показывает, что разрешение Manage Blogs было выдано явно, а остальные разрешения получены неявно.

image

Если вы снимите выбор с Manage Blogs, то все неявные разрешения так же будут отозваны.

Следующий скриншот показывает роль с выданным явно разрешением Edit Any blog posts. Разрешение Edit own blog posts выдано неявно.

image

Следующий скриншот показывает роль с одним разрешением Edit own blog posts выданным явно. Неявных разрешений нет.

image