33

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.)

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.

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?

Nick Gotch
  • 9,167
  • 14
  • 70
  • 97

4 Answers4

20

You should adapt your design because every organization is different. Check this page, you can see a pattern for role-based administration.

Teun Zengerink
  • 4,277
  • 5
  • 30
  • 32
JoseJC
  • 758
  • 1
  • 9
  • 20
3

Not sure if it will help you, but if you have the opportunity you should check out the built in functionality in ASP.NET . You could get some pointers, at least, from there.

Nailer
  • 2,446
  • 1
  • 24
  • 34
2

Chapter 2 of The Data Model Resource Book, Vol. 1: A Library of Universal Data Models for All Enterprises might be helpful.

Tuna
  • 2,937
  • 4
  • 37
  • 61
VK.
  • 21
  • 2
1

Take a look at Scott Mitchell's ASP.NET 2.0 Membership, Roles and Profile Tutorial series:

http://weblogs.asp.net/scottgu/archive/2006/05/07/ASP.NET-2.0-Membership-and-Roles-Tutorial-Series.aspx

Buggieboy
  • 4,636
  • 4
  • 55
  • 79