title: Best Design for a User/Role Management System?
body: <p>Here's a software design question I've encountered several times and have never found an ideal solution for (I'm also dealing with it now again.)</p>
  
  <p>Many applications need some form of user/role management.  You have base users, groups that these users can belong to (not limited to just one), roles and permissions they have, organizational units, and a whole bunch of properties and other features that are project-specific.</p>
  
  <p>My question is, what ways do people know of and/or have experience with to design and build a really dynamic, flexible user management system?  Are there any design patterns you know of that really help?</p>