resource authorization simple question
Hey in my app I have a schools resource, super admins can make,view, edit and delete any school. regular admins can create,view, edit and delete only schools that belong to one of their regions.
Initially I was using the following on the schools resource on the regular admin panel:
This worked but I incorrectly assumed that this query change would be applied to every query belonging to that resource which means that regular admins would not be able to access schools that don't belong to them. I tried to edit the URL to access one of those records assuming it would return an
403
error but it worked. so modifyQueryUsing
only affects the list view
now I understand that for this type of authorisation work I need to use model policies but in my case the policy will be practically the same for view
, viewAny
, update
and the rest of the policy methods, so is there a way to define this policy once and for all like I was doing with the modifyQueryUsing
, I hope that made sense1 Reply
No, you only modified the table query. There is
getEloquentQuery()
on the resource for that though.