= Theory of Operations = I am writing this page to help others understand the use, operations and limitations of this plugin. == Groups == - One can specify a group which users must be a member of in order to log in. - Additionally, one may specify an ''admin'' group. If a user is a member of the ''admin'' group, then they will automatically be granted the `TRAC_ADMIN` permission. - Finally, Directory groups are extended into the trac namespace. They can be used to extend permissions by group. - directory groups are prefixed by @ - group names are lowercase and spaces are replaced with underscores. See [DirectoryAuthPlugin/GroupManagement GroupManagement] for more details. == Caching == Given the expense of traversing the network for authorizations, a two-stage cache has been implemented. 1. Data is cached into memory for quick lookups on repeat operations. 1. Data is also cached in the database so that lookups can pass between instances of python w/o requiring going to the network. See: [DirectoryAuthPlugin/CacheManagement CacheManagement] for details.