On Wed, Nov 21, 2001 at 10:21:30AM -0800, Tavis Rudd wrote:
> > In the more general sense, you might want to have relations.  A
> > person can "own" something, perhaps another person is the
> > "creator", or "manager", etc.  I suppose that's what you were
> > thinking of as roles...?  Ownership could just be another role.
> 
> Yeah that's what I was thinking of (and wanting to avoid).  Isn't 
> this what Zope uses, or have I totally misunderstood it?

The needs of small, simple sites are different than large, complex
sites.  If we are attempting to have the same authentication/permission
system scale to both, we have to make sure one doesn't get lost.

For simple sites, only three levels of permissions ("roles") are
necessary: anonymous user (often read-only), logged-in user
(read-write), and content manager/administrator (god).  The last may be 
factored out if there's no through-the-web management.  The first may be
factored out if servlets have an if-no-user if-branch.  These sites
mostly need some examples and a HOWTO.  If the new system is to be
usable for simple sites, it must not require lots of complicated
terminology and and configuration pieces just to get it working.

More complex sites may have two or three levels of users, in addition to
the content manager and the anonymous user.  Some levels may correspond
to paid services, or for sponsors to edit their own sponsorship
information (e.g., banner ads).

The management interface can be kept simple by allowing all managers to
have the same privilege level; i.e., "everything".  They can share a
group or even share a username/password.

More complicated sites require multiple levels of manager access.  This
is what Zope's security system was designed for and what it does best.
It also makes it a pain in the ass to design simple sites in, because
you have the learning curve of all these concepts, plus applying them
correctly, plus having to set the permissions of things all the time
even though your application doesn't need that complexity.

Proxy Roles (akin to Unix Set-UID programs) were added to Zope
specifically to address issues related to through-the-web management.
Likewise, ownership was added in 2000 to plug a security hole related to
through-the-web editing.

Only some sites will have a web management interface.  Even fewer will
allow non-managers to edit content through the web.  The sites that
don't do this shouldn't have to go through the learning curve, hoops and
bugs involved in "roles" and "ownership".  But we should also identify
exactly where these concepts become desirable or even necessary, scale
them in right at that point, and make sure the documentation explains
when to use them.

-- 
-Mike (Iron) Orr, [EMAIL PROTECTED]  (if mail problems: [EMAIL PROTECTED])
   http://iron.cx/     English * Esperanto * Russkiy * Deutsch * Espan~ol

_______________________________________________
Webware-discuss mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/webware-discuss

Reply via email to