A permission is a singular ability to perform an action.
Read more at permissions.
Both users and roles can have permissions.
Implement LaravelDoctrine\ACL\Contracts\HasPermissions and use the WithPermissions trait.
Permissions can be managed via config or Doctrine database tables (see below).
Config Driver: Store permissions in acl.permissions.list as simple array in your config file.
Doctrine Driver: Store permissions in the database. Use the default Permission entity or your own (must implement LaravelDoctrineACLContractsPermission).
A role is a collection of permissions.
Read more about roles.
Implement LaravelDoctrine\ACL\Contracts\Role in your Role entity.
Configure acl.roles.entity in your config to point to your Role entity.
Users can have multiple roles; roles can have permissions.
An organisation is a group of users.
Read more about organisations.
Implement LaravelDoctrine\ACL\Contracts\Organisation in your organisation entity (e.g., Team).
Set acl.organisations.entity in your config.
Users can belong to one or multiple organisations (implement BelongsToOrganisation or BelongsToOrganisations).
This is documentation for laravel-doctrine/acl. Please add your ★ star to the project.