Spiff Guard is a library implementing generic access lists for Python. It was designed to provide a clean API, high security and high scalability. Working with an ACL is as simple as this:
from Guard import *
guard = DB(db_connection)
group = ResourceGroup("My Group")
user = Resource("My User")
website = ResourceGroup("My Website")
view = Action("View")
write = Action("Edit")
guard.register_type([Resource, ResourceGroup, Website])
guard.add_action([view, write])
guard.add_resource([user, group, website])
guard.grant(group, view, website)
guard.grant(user, edit, website)
if guard.has_permission(user, view, website):
print 'Permission granted.'
Spiff Guard’s features include recursion, groups, Python type awareness, inverse lookup, and a lot more. For a more complete example, have a look into the README file included with the package. You may also look at the API documentation.
Metadata
Release files for SpiffGuard 1.9.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| SpiffGuard-1.9.2.tar.gz | 18.6 kB | Details |
Release files / SpiffGuard-1.9.2.tar.gz
| Download URL | SpiffGuard-1.9.2.tar.gz |
|---|---|
| Size | 18.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b7a871c7142be3df313c4126337e76d5ac8224572b6d614b18e938f1cdab216f
|
|
BLAKE2b-256 checksum How to use checksums |
8d877851686bb233903e97183ab45329c0b1be3a3b9db21fcae82ccb3341ddf6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |