From: Joe W. <jo...@gm...> - 2009-11-28 20:36:32
|
Thomas, > What I > have in my mind is the everyday use of administrative tools that usually are > done by different people. Imagine a junior admin that usually adds users and > groups, who accidentally shutdowns the server or even worse - deletes the > main data collection. > > The proper word we can use to describe this perspective is 'area'. It may > help if we think about any area, almost like a job description that can be > given to somebody to perform a specific set of tasks without need to have > access to any other admin resources. Your description of 'area' sounds more like what I think of as 'role' - as in RBAC, which covers all actions/resources that users are authorized to access, including admin functions like those for this admin app. Could you elaborate on the distinction, if any, between your 'area' and 'role'? How do you imagine preventing the user in your example from accessing other admin areas -- through some sort of URL-based access control, or through RBAC (which focuses on documents, collections, functions, and modules)? You also listed many ideas about isolating an area into a single directory with its own controller.xql. Most of your points up to now have been about URLs, but this gets into coding structure. Do you have ideas about ways to arrange the code so that it fits your criteria for modularity? Joe |