Если вы не заинтересованы в написании этого кода самостоятельно, такой пакет, как разрешения Laravel, будет делать именно то, что вы хотите.
https://github.com/spatie/laravel-permission
В противном случае вам необходимо создать сводные таблицы между пользователями.и их роли, роли и права доступа
Таким образом, у вас будет таблица user_roles, которая будет состоять из user_id и role_I'd.
У вас также будет таблица role_permissions, которая будет содержать role_id иpermission_id.
Это позволило бы вам иметь отношения многие ко многим и иметь множество сквозных связей, чтобы переходить от пользователя к роли и от роли к пользователю.
Надеюсь, что это поможет