[cvs] [Wiki] changed: Project/HordePolicy

Chuck Hagenbuch chuck at horde.org
Tue Sep 30 20:59:38 UTC 2008


chuck  Tue, 30 Sep 2008 16:59:38 -0400

Modified page: http://wiki.horde.org/Project/HordePolicy
New Revision:  1.28
Change log:  start updating/refining spec and goals

@@ -2,8 +2,22 @@

  + Horde Policies

  The idea of Horde Policy is to implement a replacement for the  
current prefs system, modeled after how Group Policy Objects work in a  
Microsoft Active Directory.  Including a nice administrative GUI,  
meaning no more editing prefs.php files, and happier admins.
+
+
+++ Goals
+
+The Horde_Policy system should be able to replace all user  
preferences and most admin/file-level configuration. Policies should  
be nestable; it should be possible to load policies based on arbitrary  
criteria such as time of day, server load, user group, IP address,  
etc; administrators should be able to define at each level of the  
policy tree whether a value can be overridden. End users would only  
see the values that could be overridden, but should still be able to  
create multiple policies (probably not nested, though, for simplicity)  
that could be switched between, like "Locations" in some systems or  
separate "Home" and "Work" profiles (or probably more useful, Desktop  
and Mobile browser profiles).
+
+From a system standpoint there should be three kinds of policies: PHP  
files on disk that can contain arbitrary logic (obviously admin only),  
YAML or JSON files on disk that contain a list of keys and values plus  
metadata (overridable or not, but no conditions), or policies stored  
in a SQL database or other backend storage, which would be  
functionally equivalent to on-disk JSON/YAML files.
+
+When the policy system is fully implemented, the only classic  
configuration necessary should be enough information to point to the  
root policy. This could be as simple as the location of the root .php  
file that loads all other policies (though other policies might not be  
required), which would essentially eliminate ALL other configuration.
+
+To avoid having a huge tree in memory, policies will be split out on  
a system level, such as main config, main preferences, mime driver  
configuration, etc. Applications will be able to either override  
system values or add their own keys, like they currently can, so that  
the Policy system will automatically reconcile IMP-specific MIME  
settings when in IMP's context.
+
+From an end-user perspective, though, there should be one policy (or  
two, if they have Home and Work policies), with tabs/sub-sections for  
apps and section settings.
+

  ----

  ++ Visualization of a Horde Policy


More information about the cvs mailing list