I am beginning a new project and I already know that I'll have various roles for various users, regardless of their access level. They just have different jobs to do.
With that in mind, I'm thinking that I'll have certain actions that can only be performed by those who have a certain role (like being in a group)
The other method that I thought of would be to assign each user a level number and assign each action a level requirement (probably admin=0 and untrusted = SOMELARGENUMBER).
Is there a reason to prefer one method over the other? (security / maintainability...)