Yii2. RBAC. Как очистить права для пользователя?


Работа с RBAC в Yii2 вызывает немало вопросов — один из них — как удалить все права для пользователя, например, для их обновления или же при удалении записи юзера. В этой статье — пример очистки списка прав RBAC для пользователя.

Итак, всё пердельно просто.

Представим ситуацию, когда нам нужно обновить права пользователю. В таком случае перед выполнением метода assign следует выполнить следующую комманду:

$auth   =   \Yii::$app->authManager ;
// метод ниже очищает все права пользователя с id = $userId
$auth->revokeAll( $userId ) ;

// далее выполняем assign в соответствии с логикой задачи
$auth->assign( $somePermission, $user );

Вот и весь пример. Метод revokeAll, как было сказано, удаляет все права для пользователя, id которого был передан ему в качестве параметра.

Удачи!

, ,

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *