четверг, 23 ноября 2017 г.

Symfony Voter для упрощения проверки прав пользователя.

Если Вы используете symfony и Вам нужно проверить имеет ли пользователь права на просмотр или редактирование какой-нибудь сущности в вашем приложении, то самый лучший способ сделать это - использовать Voter.

Прием использования Voter(ов) для проверки прав пользователя хорошо описан в документации вот по этой ссылке.

https://symfony.com/doc/2.4/cookbook/security/vote...

Там все достаточно подробно написано, напишу здесь только алгоритм создания и применения Voter

1. Создать класс и специального Voter и унаследовать его от Symfony\Component\Security\Core\Authorization\Voter\Voter
2. Настроить приложение на использование созданного Voter например в конфигурациях YML... делается это в app/Resources/config/services.yml, подбробный синтаксис можно найти по ссылке, которую я привел в начале статьи.
3. После этого останется только использовать Voter в нужном месте вашего приложения, например в каком нибудь из действий контроллера вот таким образом.

$this->denyAccessUnlessGranted('view', $company);

Комментариев нет:

Отправить комментарий

Yii2 запуск миграций из любой директории

Для этого можно использовать ключ migrationPath php yii migrate --migrationPath="vendor\yiisoft\yii2\rbac\migrations"