RBAC и описание ролей в файле
Re: RBAC и описание ролей в файле
Замечательные добавления в пост. !!!
Re: RBAC и описание ролей в файле
спасибо, очень помогло!
пс: md5 выдает хэш даже на пустую строку
пс: md5 выдает хэш даже на пустую строку
Код: Выделить всё
protected function beforeValidate($on){
if(mb_strlen($this->password)!==0)
$this->password = md5($this->password);
return true;
}
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: RBAC и описание ролей в файле
Пустая строка — тоже строка.
Нравится Yii? Давайте сделаем его лучше!.
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: RBAC и описание ролей в файле
Заменён путь к конфигу PhpAuthManager по умолчанию на Yii::getPathOfAlias('application.config.auth').'.php';
То есть файлик с иерархией будет храниться в директории с конфигами.
http://yiiframework.ru/doc/cookbook/ru/access.rbac.file
То есть файлик с иерархией будет храниться в директории с конфигами.
http://yiiframework.ru/doc/cookbook/ru/access.rbac.file
Нравится Yii? Давайте сделаем его лучше!.
Re: RBAC и описание ролей в файле
Почему обязательно надо было переписывать? Почему нельзя было оставить и старую версию, и показать новую?
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: RBAC и описание ролей в файле
Потому как подход старой версии уж точно не лучше подхода новой.
Нравится Yii? Давайте сделаем его лучше!.
Re: RBAC и описание ролей в файле
спасибо, благодаря вашей статьи уже начинаю осваиваться, вот только роли что хранятся в файле auth.php я планирую перенести в отдельную таблицу Role в БД, как я понимаю она должна иметь такие поля: id,type,description,children ещё должна таблица Group с такими полями: id,name,id_role а также таблица Users с дополнительным полем id_group
Вот только пока не могу сообразить, как правильно связать всё это вместе, по вашей статье
Вот только пока не могу сообразить, как правильно связать всё это вместе, по вашей статье
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: RBAC и описание ролей в файле
Мой рецепт исключительно про хранение ролей в файлах. Если требуется хранить роли в БД: http://yiiframework.ru/doc/guide/ru/topics.auth
Нравится Yii? Давайте сделаем его лучше!.
-
- Сообщения: 2
- Зарегистрирован: 2009.12.23, 15:09
- Контактная информация:
Re: RBAC и описание ролей в файле
Объясните пожалуйста, каким образом происходит присвоение ролей пользователям в данном примере?
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: RBAC и описание ролей в файле
При авторизации пользователя роль вытаскивается из таблицы User.role и кладётся в Yii::app()->user->role. Далее после разбора запроса выполняется код, который назначает роль:
Код: Выделить всё
$this->assign(Yii::app()->user->role, Yii::app()->user->id);
Нравится Yii? Давайте сделаем его лучше!.
-
- Сообщения: 2
- Зарегистрирован: 2009.12.23, 15:09
- Контактная информация:
Re: RBAC и описание ролей в файле
Это понятно, не понятно как раз где выполняется этот код
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: RBAC и описание ролей в файле
Посмотрите http://yiiframework.ru/doc/cookbook/ru/access.rbac.file, оттуда видно, что выполняется он в методе init() класса PhpAuthManager, т.е. при инициализации менеджера авторизации.
Нравится Yii? Давайте сделаем его лучше!.
Re: RBAC и описание ролей в файле
ребяты, а у меня вываливается экзепшн Undefined index: bizRule при попытке использовать accessRules в контроллере, это в рецепте что-то недоописано?
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: RBAC и описание ролей в файле
В рецепте всё дописано. Такая проблема действительно может возникать, но причины её я лично не понял т.к. не смог её воспроизвести. Проверял на Yii 1.0 и 1.1.
Решение — включить в массив пустой 'bizRule' => ''.
Решение — включить в массив пустой 'bizRule' => ''.
Нравится Yii? Давайте сделаем его лучше!.
Re: RBAC и описание ролей в файле
Мне мистически помог в данной проблеме error_reporting(E_ALL & ~E_NOTICE);
Re: RBAC и описание ролей в файле
в 1.1 метод beforeValidate класса CModel не имеет параметров, если генеришь для этой модели crud, то при update вываливается экзепшн
Re: RBAC и описание ролей в файле
Здравствуйте,
Скажите, пожалуйста. Вот в примере в файле protected/config/auth.php описываются роли guest, user, moderator, administrator. А в модели User описываются вот эти:
1. Почему они разные? Я чего-то не понимаю или это просто пример?
2. Зачем это нужно в модели User и как это можно использовать?
Спасибо большое!
Скажите, пожалуйста. Вот в примере в файле protected/config/auth.php описываются роли guest, user, moderator, administrator. А в модели User описываются вот эти:
Код: Выделить всё
const ROLE_ADMIN = 'admin';
const ROLE_MODER = 'moder';
const ROLE_USER = 'user';
const ROLE_BANNED = 'banned';
2. Зачем это нужно в модели User и как это можно использовать?
Спасибо большое!
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: RBAC и описание ролей в файле
Замечательно, что заметили.
1. Привёл роли к единому виду. Была ошибочка в рецепте.
2. Нужно исключительно для удобства. Чтобы не описаться в названии роли + автодополнение будет работать в IDE. Используется как User::ROLE_ADMIN вместо 'administrator'.
1. Привёл роли к единому виду. Была ошибочка в рецепте.
2. Нужно исключительно для удобства. Чтобы не описаться в названии роли + автодополнение будет работать в IDE. Используется как User::ROLE_ADMIN вместо 'administrator'.
Нравится Yii? Давайте сделаем его лучше!.
Re: RBAC и описание ролей в файле
Спасибо за объяснение!