запрет

Всё про контроль доступа пользователей: фильтры, RBAC, проверки
Ответить
Еугений
Сообщения: 163
Зарегистрирован: 2014.11.12, 16:00

запрет

Сообщение Еугений »

Всем привет.
Начал изучать RBAC, и мне вот интересно кое-что...
Есть роль "moderator",имеющая разрешения 'create_post', 'update_post', 'delete_post'. Можно ли запретить пользователю какое-нибудь одно из этих действий, не снимая его с него роль модератора? Использую DbManager.
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: запрет

Сообщение zelenin »

нет. надо либо действие выносить из-под роли либо добавлять дополнительное правило.
Еугений
Сообщения: 163
Зарегистрирован: 2014.11.12, 16:00

Re: запрет

Сообщение Еугений »

zelenin писал(а):нет. надо либо действие выносить из-под роли либо добавлять дополнительное правило.
Спасибо. у меня просто есть задача, разработать панель управления rbac, и есть такой момент в задании:
"Пользователю можно задавать роли и права.
Результирующие права - результат сложения
прав ролей и прав пользователя.
Реализация запретов является плюсом.
Запрет имеет высший приоритет при расчете
результирующих прав."


Эти запреты меня малость напрягли, я их понял так, как я написал в теме.. Вроде как, rbac это сам по себе запрет, если нет доступа...
Аватара пользователя
maleks
Сообщения: 1985
Зарегистрирован: 2012.12.26, 12:56

Re: запрет

Сообщение maleks »

Это что, тестовое задание?

Звучит действительно не под yii rbac, например пользователям по теории предполагается роли только присваивать, а не и разрешения тоже.
И в yii нет какого то "результирующего" расчета прав.
Хотя что нибудь и с запретами можно придумать. Как есть `auth_assignment` так можно завести и какую то `auth_forbiddance` и в $user->can() сначала проверять ее.
Yii2 universal module sceleton - for basic and advanced templates
Ответить