2016-08-01 4 views
1

Я хочу создать разные страницы для пользователей и администраторов. Похоже, что:Различные страницы для администраторов и пользователей [userfrosting 0.3.1]

$app->user->checkAccess('uri_my-whatever-access-rights') 

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

Это относится к index.php (Slim), а также к шаблонам Twig (администраторы видят все пользовательские меню, даже если они предназначены только для пользователей).

Ошибка? Я делаю что-то неправильно?

Спасибо

+0

Когда вы говорите «администратора», вы имеете в виду суперпользователя, или вы имеете в виду пользователь, который вы добавили в группу «администратора»? – alexw

+0

Я имел в виду пользователя root. Я полагаю, что обычные учетные записи администратора ведут себя так, как ожидалось? (Будет проверяться) – amivag

ответ

1

Я заметил такое же поведение в своем проекте. Корневой пользователь всегда видит все, возможно, исправить было бы просто исключить «user_master_id», если вы не хотите видеть все как root.

Что-то вроде:

if($app->config('user_id_master') == $app->user->id) 

должен делать эту работу.

Редактировать: Я проверил метод User.checkAccess (..). См. Также: API

Пользователь с MasterUserId увидит все (всегда имеет значение true), любой другой администратор не видит вещи, которые он не должен видеть - как определено в правиле (правилах).

Если вы хотите, чтобы исключить корень из некоторых страниц/запись просто добавить подходящую процедуру, как isRoot() к user модели, зарегистрировать его here и вы можете использовать его в сучке, а также в процедурах маршрутизации.

С уважением

+1

Следует отметить, что пользователь root не предназначен для использования в качестве текущей учетной записи. Скорее, это должен быть способ для разработчиков или системного администратора быстро диагностировать и устранять проблемы с кодом и контролем доступа. Владелец сайта должен иметь свою собственную учетную запись, отличную от root, которую они используют для обычной деятельности. Поэтому я вообще не исключаю, чтобы пользователь root обращался к чему-либо. – alexw