Making Moin better ;)

Some proprosals for making managability of ACLs easier.

Creator and Last

Each page has at least 2 well determined revisions, that is the first one, and the last one. The users who did those could be referenced by the names Creator: and Last: (maybe one can think of better names). Adding the proper rules to the default rules will make it easier to delegate wiki maintainace to users like: Creator:admin Last:revert

Problems:

self_..

some right might benefit from a self_ prefix as in self_revert or (likely more complicated) self_write which restricts the actions to content which was done by the user itself (one might revert his own changes, or correct text he created)

add

Its likely trivial to determine if a diff contains only additions and no deletes. It would be quite useful if pages can restrict access only on additions (like commenting systems). a new right called add would be nice for such.

access macros

currently the Wiki only exploits low-level access rights (read,write,admin,...). These could be grouped to higher level convenience rights, which just acts like a macro processor example: "edit"="read,write,revert" then Foo:edit will be just the same as Foo:read,write,revert.

This might be too complicated. How about class based rights?

read
    write
        revert
            delete
                admin

If you can write, you can also read, as it does not make sense otherwise. If you can delete, you can write and read and revert.

Instead of:

#acl User:read,write,revert,delete,admin

We can use:

#acl User:admin

ACLs for creating subpages

This is something I can't do with just acl_before, acl_default and acl_after, and it's the only way (?) I can set ACLs for non-existing pages.

The proposition is to add a create right (maybe subpage, add or child would be better?).

This right woudn't apply to the page it's on, but to it's (immediate) subpages - basically granting the write right.

You could maybe achive similar result with something like #child_acl: something:write, that would allow you to specify the ACL for non-existing subpages.

Discussion

Most of these suggestions have one problem - they don't solve any real problem with acls. We should not make the acl system more complicated or configurable, we should make it simpler to use and prevent user errors. User error in acl definition can mean your private information can leak.

If you want to have custom security policy in your wiki, go and write custom SecurityPolicy, you can do anything in this code, including adding custom acl rights etc. -- NirSoffer 2005-02-17 21:40:28

I don't see those features making moin easier or better, I think it would just complicate things. See also my comments above. Therefore, for now:


CategoryFeatureRejected

MoinMoin: FeatureRequests/AclExtensions (last edited 2007-10-29 19:22:37 by localhost)