Основы ACL: Часть 3. Конфликты между уровнями доступа

10.0/10 оценка (1 голосов)

Заключительная часть по основам ACL будет посвящена конфликтам между правами доступа.

При неправильной настройке прав у вас может возникнуть конфликтная ситуация, которая заблокирует какое-либо действие пользователя. Давайте рассмотрим пару примеров.

Первый пример конфликтной ситуацииДопустим, вы расставили все необходимые права доступа группам и перейдя, например, в каталог увидели такую ситуацию, как на картинке справа. То есть одно из действий было Не разрешено (Заблокировано). Это означает, что где то в вышестоящих группах вы не правильно распределили доступы. В данном случае в настройках Joomla создавать новые материалы было Разрешено, а в Zoo Запрещено. Что касается типа материала, то так как настройки по умолчанию наследуются от вышестоящей группы, то в этом же действии право также будет заблокировано.

Второй пример конфликтной ситуацииВторой пример. Вы переходите в каталог или тип материала и видите, что действие было запрещено, но появилось слово Конфликт. Почему так произошло? Это означает, что конфликт возник в глобальных настройках Joomla и Zoo. А если говорить более подробно, то в Joomla действие было Запрещено, а в Zoo Разрешено. Система не знает, как трактовать такое несоответствие доступов и поставила блокировку. Нельзя запрещать действие сразу на первой ступени настроек прав, а потом на нижестоящих уровнях разрешать. Это не логично. Исправить такую ситуацию можно тремя способами:

  1. Разрешить действие в глобальных настройках.

  2. Поставить Унаследовано в Joomla (в случае, если это действие повторяется на нижестоящих уровнях). А в нужном каталоге или типе материала уже поставить Разрешено.

  3. Явно запретить данное действие во всех настройках на всех уровнях.

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

Если вы поставили в каком-либо действии Разрешено, то либо явно разрешите данное действие на нижестоящих группах, либо оставьте унаследовано. То же самое касается и права Запрещено. При возникновении конфликта проверьте весь путь от глобальных настроек до более узких, чтобы там не было путаницы.

Более подробные примеры конфликтов в правах доступа, вы можете узнать из нашего видео урока.

ACL

У меня остались вопросы, где я могу их задать?

Вы можете обратиться на наш специальный форум техподдержки JBZoo. Если у вас нет активного аккаунта со знаком «плюс» в тарифном плане, то вы можете задать свой вопрос в одном из этих разделов или на любой из наших контактов. Форум специально предназначен для JBZoo, приоритет и скорость ответа там выше.