Заключительная часть по основам ACL будет посвящена конфликтам между правами доступа.
При неправильной настройке прав у вас может возникнуть конфликтная ситуация, которая заблокирует какое-либо действие пользователя. Давайте рассмотрим пару примеров.
Допустим, вы расставили все необходимые права доступа группам и перейдя, например, в каталог увидели такую ситуацию, как на картинке справа. То есть одно из действий было Не разрешено (Заблокировано). Это означает, что где то в вышестоящих группах вы не правильно распределили доступы. В данном случае в настройках Joomla создавать новые материалы было Разрешено, а в Zoo Запрещено. Что касается типа материала, то так как настройки по умолчанию наследуются от вышестоящей группы, то в этом же действии право также будет заблокировано.
Второй пример. Вы переходите в каталог или тип материала и видите, что действие было запрещено, но появилось слово Конфликт. Почему так произошло? Это означает, что конфликт возник в глобальных настройках Joomla и Zoo. А если говорить более подробно, то в Joomla действие было Запрещено, а в Zoo Разрешено. Система не знает, как трактовать такое несоответствие доступов и поставила блокировку. Нельзя запрещать действие сразу на первой ступени настроек прав, а потом на нижестоящих уровнях разрешать. Это не логично. Исправить такую ситуацию можно тремя способами:
Разрешить действие в глобальных настройках.
Поставить Унаследовано в Joomla (в случае, если это действие повторяется на нижестоящих уровнях). А в нужном каталоге или типе материала уже поставить Разрешено.
Явно запретить данное действие во всех настройках на всех уровнях.
Мы рассказали только о двух примерах, но ситуации могут быть разными. Чтобы у вас не возникало конфликтов внимательно расставляйте права доступа.
Если вы поставили в каком-либо действии Разрешено, то либо явно разрешите данное действие на нижестоящих группах, либо оставьте унаследовано. То же самое касается и права Запрещено. При возникновении конфликта проверьте весь путь от глобальных настроек до более узких, чтобы там не было путаницы.
Более подробные примеры конфликтов в правах доступа, вы можете узнать из нашего видео урока.
Вы можете обратиться на наш специальный форум техподдержки JBZoo. Если у вас нет активного аккаунта со знаком «плюс» в тарифном плане, то вы можете задать свой вопрос в одном из этих разделов или на любой из наших контактов. Форум специально предназначен для JBZoo, приоритет и скорость ответа там выше.