Alan Burlison wrote:
>  In the first case we'd 
> have to add new data to the database for each and every user that needed 
> to do code reviews. In the second case, the right we chose to alias 
> 'code reviewer' on to actually starts to describe a role rather than a 
> right.

<DESIGN-ON-THE-FLY warning>

 From a "security" perspective, the second case is fraught with
authorization holes.

Code review or ARC authority or web editing privs based on the existance of
attributes intended to be used for community voting/membership status means
that there is no way to say things like "is an ARC member but is not a
website editor".

This seems like a hardcoded assumption rather than a configurable policy,
and feels shortsighted.  Rather, since you already intend to have the
confederation of affiliated sites be controlled and limited, you could
easily include a mechanism (aka LDAP...) whereby each system defined a
set of roles that would indeed be added (as a relation?) to your user/auth
schema.

Thus, the website would add "role=editor", the poll system would add
"role=voter", the ARC system would add "role=member, intern", etc...
and the affiliated sites could ask you to associate a person with one
of their roles (but not with some other site's roles...).

    -John

Reply via email to