У меня есть приложение Laravel, использующее встроенную базовую аутентификацию Laravel, но помимо возможности аутентифицировать пользователей, мне также нужно иметь возможность делать такие вещи, как проверка разрешений и авторизация их для заданных действий контроллера, а также такие вещи, как проверка поддомен сайта, на котором находится пользователь, и разрешить им доступ или нет соответственно.
Для авторизации я наткнулся на Spatie, смог настроить и заставить его работать. Кажется, все в порядке. Однако я не уверен, как лучше всего интегрировать его в мои контроллеры.
Если возможно, я хотел бы проверить разрешения Spatie в конструкторах контроллера и соответственно заблокировать доступ, а не проверять авторизацию в каждом действии контроллера. Есть ли хороший способ сделать это в Laravel? Как я могу либо указать пользователю на представление несанкционированного доступа, либо перенаправить его на экран входа в систему и т. д. из конструктора контроллера?
Точно так же, если пользователь пытается выполнить действие, которое недопустимо для данного поддомена, как я могу заблокировать его/перенаправить из конструктора? Спасибо.
auth()->user()
из промежуточного программного обеспечения? Спасибо. - person HartleySan   schedule 04.03.2019Sentinel::getUser()
, который на 100% доступен из любого промежуточного ПО. То же самое относится и к Spatie (лично с ним не работал, но должно быть похоже). - person Tim Lewis   schedule 04.03.2019