Introduction ------------ Spiff Guard is a library for implementing access lists in Python. It provides a clean and simple API and was implemented with performance and security in mind. It was originally inspired by phpGACL (http:// phpgacl.sourceforge.net/), but features an API that is significantly cleaner and easier to use.
Spiff Guard is free software and distributed under the GNU GPLv2. Changes since 1.4.0: --------------------- The bad: o This release breaks API, hard. The good: o Spiff Guard is now type-aware. That means that you can create your own types and store them in the database; Spiff Guard will create an instance of the same type when you retrieve the object later. o Sections are now obsolete - instead, just use types as a section. o Spiff Guard makes now extensive use of caching. o The API is now a lot easier to use - if that is even possible. Example Code: -------------- guard = Guard(db_connection) group = ResourceGroup("My Group") user = Resource("My User") website = ResourceGroup("My Website") view = Action("View") write = Action("Edit") guard.grant(group, view, website) guard.grant(user, edit, website) if guard.has_permission(user, view, website): print 'Permission granted.' Dependencies ------------- sqlalchemy (http://www.sqlalchemy.org/) Download --------- Tarball: http://pypi.python.org/packages/source/S/Spiff%20Guard/Spiff%20Guard-1.9.0.tar.gz#md5=a81ca3f310899ca8471d26ffbb58a83a SVN: svn checkout http://spiff.googlecode.com/svn/trunk/libs/Guard/ Links: ------- Documentation: http://spiff.googlecode.com/svn/trunk/libs/Guard/README Example: http://spiff.googlecode.com/svn/trunk/libs/Guard/tests/DBTest.py Spiff project page: http://code.google.com/p/spiff/ Mailing list: http://groups.google.com/group/spiff-devel Bug tracker: http://code.google.com/p/spiff/issues/list Browse the source: http://spiff.googlecode.com/svn/trunk/libs/Guard/ If you have any questions, please do not hesitate to ask or file a bug. -Samuel -- http://mail.python.org/mailman/listinfo/python-list