Как ограничить доступ гостя в админку?
Re: Как ограничить доступ гостя в админку?
в имени константы не может быть $Leffken писал(а):так не работает что ли ?Код: Выделить всё
const $variable = 10;
Re: Как ограничить доступ гостя в админку?
Выноват, учусь по ходу дела. У меня с ООП туго было, так решил двух зайцев убить.
Re: Как ограничить доступ гостя в админку?
ООП тут не причем - это основа языка - именование переменных, функций, констант.Skesh писал(а):Выноват, учусь по ходу дела. У меня с ООП туго было, так решил двух зайцев убить.
Re: Как ограничить доступ гостя в админку?
А можно здесь как то назначить роль только админу?
или только через RBAC?
Код: Выделить всё
'access' => [
'class' => AccessControl::className(),
'only' => ['index', 'create','update','delete'],
'rules' => [
[
'actions' => ['index','create','update','delete'],
'allow' => true,
'roles' => ['@'], /* admin? */
],
],
],
Re: Как ограничить доступ гостя в админку?
вместо @ можете прописать роль либо пермишн. Доку прочтите - там все описано.
Re: Как ограничить доступ гостя в админку?
читаю: http://stuff.cebe.cc/yii2docs-ru/guide- ... ation.html
но никак не могу понять, как именно админу назначить права
гуглю так: yii access roles admin
там куча всего, но не того что нужно, хоть подскажите как гуглить?
но никак не могу понять, как именно админу назначить права
гуглю так: yii access roles admin
там куча всего, но не того что нужно, хоть подскажите как гуглить?
Re: Как ограничить доступ гостя в админку?
это фильтр доступа к экшну по роли, а не назначение роли.
Re: Как ограничить доступ гостя в админку?
zelenin плачу 100 р. на вебмани, за рабочий пример конкретно для моего случая?
Есть модуль admin, в нем куча под модулей типа категорий под категорий и тд., нужно ограничить доступ к нему, доступ только админу.
Идет?
Есть модуль admin, в нем куча под модулей типа категорий под категорий и тд., нужно ограничить доступ к нему, доступ только админу.
Идет?
- Dominus
- Сообщения: 892
- Зарегистрирован: 2013.03.14, 21:27
- Откуда: Россия, Иваново
- Контактная информация:
Re: Как ограничить доступ гостя в админку?
Без RBAC, в контроллере:
Соответственно у тебя только 2е роли админ и гость. Админом считается авторизованный пользователь, остальные гости.
Если же нужно больше ролей, то нужен RBAC.
Чтобы проверить является ли пользователь гостем:
Код: Выделить всё
use yii\filters\AccessControl;
...
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'only' => ['login', 'logout'], // действия в контроллере
'rules' => [ // правила к действиям
[
'allow' => true,
'actions' => ['login'], // действия в контроллере
'roles' => ['?'], // Доступ к действиям только для не авторизованных пользователей
],
[
'allow' => true,
'actions' => ['logout'], // действия в контроллере
'roles' => ['@'], // Доступ к действиям только для авторизованных пользователей
],
],
],
];
}
....
Если же нужно больше ролей, то нужен RBAC.
Чтобы проверить является ли пользователь гостем:
Код: Выделить всё
Yii::$app->user->isGuest ? 'Гость' : 'Не гость';
Не спорь с дураком, иначе окружающие не правильно поймут кто из вас дурак!
Re: Как ограничить доступ гостя в админку?
В том и дело что роль нужна не для авторизованного пользователя, а именно для админа. Но в любом случае спасибо, уже разбираюсь с RBAC.
Думал что это можно сделать просто в контроллере, а тут бубен.
Все говорят что с фреймворком разработка в разы быстрее, но пока раздуплишся в нем то 5 сайтов можно было сделать )))
Думал что это можно сделать просто в контроллере, а тут бубен.
Все говорят что с фреймворком разработка в разы быстрее, но пока раздуплишся в нем то 5 сайтов можно было сделать )))