idea

ACL Parsing should be moved into the security policy.

Currently, ACLs are parsed in Page::getACL(). This feels wrong, because they're actually used only by the security policy. Therefore, I propose moving the parsing there. -- JohannesBerg 2005-02-16 16:52:40

comments

This would straighten the current call paths and simplify the structure of MoinMoin's security system. -- AlexanderSchremmer 2005-02-16 16:54:12

ACL are NOT parsed in getACL they are parsed in wikiacl.

ACL has two modes:

  1. text, in the page text (maybe in separate file in 1.4)
  2. ACL object created from the text - the parsing of the text into rights dict is done in wikiacl, in the AccessControlList class.

The text mode of acl has nothing to do with the security policy. Security policy should not know anything about the storage of acls, it should do only policy, using ACL objects. The page class should be responsible to storage of the acl lines and retrieving them when needed. It should return an ACL object created from the acl lines. I don't see any problem here or any benefit with this idea.

The real problem with acl is the caching. To get page acl, the code access the disk to get the page version, only then it can get the acl object from the memory cache. -- NirSoffer 2005-02-16 21:09:39

MoinMoin: RefactoringProposals/ACL Parsing (last edited 2007-10-29 19:07:19 by localhost)