Symfony 4: обновление ролей

115
14 июля 2021, 05:20

Столкнулся со следующей проблемой: когда изменяю права/роли у пользователя, то ему необходимо перезайти в свой аккаунт, чтобы они обновились. Можно ли как-то избавиться от этой неприятной особенности?

Answer 1

При использовании стандартной аутентификации данные пользователя сериализуются и сохраняются в сессии. Далее при каждом запросе обращение к БД не происходит, а данные берутся из сессии. Если вам надо постоянно контролировать изменения, связанные с пользователем, то можете написать собственный аутентикатор https://symfony.com/doc/current/security/guard_authentication.html в котором можете перечитывать данные пользователя из БД при каждом запросе https://symfony.com/doc/current/security/guard_authentication.html#avoid-authenticating-the-browser-on-every-request

Answer 2

К сожалению, нет. Конфигурация считывается при заходе в аккаунт, и не может изменяться без перезахода - что совершенно правильно и обосновано.

READ ALSO
Насколько необходимы Custom Exception?

Насколько необходимы Custom Exception?

Я так понимаю, хорошим тоном является под каждый вид исключения делать свой собственный класс

102
Удалить все файлы через 3 дня на сервере

Удалить все файлы через 3 дня на сервере

Нужно удалить все файлы и папки рекурсивно на сервереДоступ по FTP

111
Оптимизация выборки из бд PHP

Оптимизация выборки из бд PHP

Есть примерно 80 таблиц с данными по которым идёт поиск значений через foreach, и пока он идёт успевает пройти секунд 10-15 так как много таблиц,...

98
Вывод массива - php

Вывод массива - php

Есть форма:

115