rbac авторизация
rbac авторизация
Доброго времени суток. Извините, если этот вопрос уже задавали.
Никак не могу разобраться, каким образом нужно делать проверку авторизации пользователя в базе?
Никак не могу разобраться, каким образом нужно делать проверку авторизации пользователя в базе?
Re: rbac авторизация
Как я понял, вам нужно разобраться с этим: https://github.com/yiisoft/yii2/blob/ma ... ault-roles
Re: rbac авторизация
Там описывается авторизация на основе PhpManager, а мне нужно на основе DbManager
Re: rbac авторизация
Если б Вам не было лень почитать названия тем - мог ли бы найти вот эту активную тему с обсуждением сабжа.
Ставьте модуль yii2-admin.
С интерфейсом у него, правда, какие-то проблемы.
Права нужно создавать начиная со "/", напр. "/site/index". Но тогда они пропадают из интерфейса модуля. Зато проверка начинает работать. Мб разработчик исправит этот баг.
Ставьте модуль yii2-admin.
С интерфейсом у него, правда, какие-то проблемы.
Права нужно создавать начиная со "/", напр. "/site/index". Но тогда они пропадают из интерфейса модуля. Зато проверка начинает работать. Мб разработчик исправит этот баг.
Re: rbac авторизация
Как то быстро меня здесь раскусили в ленивости
Тему то видел, но разве обязательно при использовании yii2 устанавливать какие то модули. Мне, для лучшего понимания работы фреймворка, хочется написать авторизацию без использования модулей.
Используя это http://stackoverflow.com/questions/2579 ... r-database и "advanced app" дописал свою модель User и добавил в неё методы для авторизации.
Вопрос теперь такой. Как мне узнать, какие методы обязательно нужно доопределить в модели User, а какие можно пропустить?
Тему то видел, но разве обязательно при использовании yii2 устанавливать какие то модули. Мне, для лучшего понимания работы фреймворка, хочется написать авторизацию без использования модулей.
Используя это http://stackoverflow.com/questions/2579 ... r-database и "advanced app" дописал свою модель User и добавил в неё методы для авторизации.
Вопрос теперь такой. Как мне узнать, какие методы обязательно нужно доопределить в модели User, а какие можно пропустить?
Re: rbac авторизация
Никакие. Использование rbac вообще не предполагает каких-то исправлений в модели пользователей. Он работает отдельно.penwon писал(а):Как то быстро меня здесь раскусили в ленивости
Тему то видел, но разве обязательно при использовании yii2 устанавливать какие то модули. Мне, для лучшего понимания работы фреймворка, хочется написать авторизацию без использования модулей.
Используя это http://stackoverflow.com/questions/2579 ... r-database и "advanced app" дописал свою модель User и добавил в неё методы для авторизации.
Вопрос теперь такой. Как мне узнать, какие методы обязательно нужно доопределить в модели User, а какие можно пропустить?
Модули можно и не ставить, но с ними проще. Нет смысла городить свой велосипед, например, с хранением ролей в бд и их присвоением с использованием этой самой таблицы пользователей, когда это реализовано товарищем Zelenin.
Но и городить велосипеды, в принципе, никто не мешает.
Достаточно в настройках приложения задать authManager. Первым ответом Вам дали ссылку, разницы никакой нет на файлах рбак или в базе. В ауч менеджере будут просто использоваться разные классы.
Прочитайте тему, на которую я дал ссылку, с самого начала, там vova07 подробно рассказывает о том, что я в кратце описал.
Re: rbac авторизация
Всё точно так же, как в Yii1. Как по мне, дак стало меньше телодвижений.
Очень плохие и совсем бесполезные расширения: http://github.com/bupy7
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: rbac авторизация
DbManager от PhpManager не отличается вообще ничем кроме его внутренней работы с базой, а не с файлами.
Нравится Yii? Давайте сделаем его лучше!.
Re: rbac авторизация
ё мое, опять не могу найти ссылку "В закладки", скоро самому роли в своей цмс ваять, надо почитать какими вы тут ссылками кидались.
Yii2 universal module sceleton - for basic and advanced templates
Re: rbac авторизация
Ну для авторизации с помощью DbManager пришлось же делать "implements \yii\web\IdentityInterface " в модели пользователя. Но я почему не наткнулся на это в документации. Неужели невнимательно смотрел?
- chungachguk
- Сообщения: 435
- Зарегистрирован: 2012.07.17, 11:52
Re: rbac авторизация
необходимо для аутентификации и к авторизации через rbac отношения не имеетpenwon писал(а):"implements \yii\web\IdentityInterface " в модели пользователя
Re: rbac авторизация
Значит я не совсем правильно сформулировал свою мысль в силу своего незнания. Но ведь одного без другого не будет.chungachguk писал(а):необходимо для аутентификации и к авторизации через rbac отношения не имеетpenwon писал(а):"implements \yii\web\IdentityInterface " в модели пользователя
Читал вот это http://www.yiiframework.com/doc-2.0/gui ... ation.html а надо было вот это http://www.yiiframework.com/doc-2.0/gui ... ation.html
Я правда не понял почему разделены статьи эти. Но они недопипасаны ещё, может что то поменяется.
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: rbac авторизация
Почему? Будет. Аутентифицироваться при помощи IdentityInterface можно без RBAC.
Разделены потому как аутентификация != авторизация. Аутентификация — проверка того, что пользователь тот, кем назвался. То есть проверка логина и пароля. Авторизация — проверка того, что пользователь имеет достаточно прав для какого-либо действия.
Разделены потому как аутентификация != авторизация. Аутентификация — проверка того, что пользователь тот, кем назвался. То есть проверка логина и пароля. Авторизация — проверка того, что пользователь имеет достаточно прав для какого-либо действия.
Нравится Yii? Давайте сделаем его лучше!.
Re: rbac авторизация
Чтобы понять достаточно было заглянуть в википедию (хотя бы) и посмотреть значение слов "авторизация" и "аутентификация".penwon писал(а):Я правда не понял почему разделены статьи эти.
Не нужно было самому писать модель user, в advanced шаблоне уже есть пригодная для использования модель.
В начале Вы сказали, что использовали advanced шаблон и написали свою модель User. Не понимаю тогда почему у Вас не было там имплементации интерфейса изначально.
Как сказал Александр - аутентификация прекрасно себе работает без rbac. Это можно лицезреть зарегистрировавшись в приложении сразу после установки и залогинившись под только что созданным пользователем - аутентификация работает.
Re: rbac авторизация
Всегда эти термины приравнивал друг к другу почему то. Благодарствую за разъяснения.Sam Dark писал(а): Разделены потому как аутентификация != авторизация.
Почему не нужно, очень даже нужно для того, чтобы лучше разобраться. Своя модель была сделана в basic app используя advanced app. Имплементация была взять из adv app, но я не мог найти поясняющую информацию в документации, т.к. подменял в своём сознании термины "аутентификация" и "авторизация". Теперь разобрался.VaNnOrus писал(а):Не нужно было самому писать модель user, в advanced шаблоне уже есть пригодная для использования модель.penwon писал(а):Я правда не понял почему разделены статьи эти.
В начале Вы сказали, что использовали advanced шаблон и написали свою модель User. Не понимаю тогда почему у Вас не было там имплементации интерфейса изначально.