一个通用的访问控制列表库
项目描述
Spiff Guard 是一个为Python实现通用访问控制列表的库。它旨在提供干净的API、高安全性和高可扩展性。使用ACL就像这样
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 的功能包括递归、组、Python类型意识、反向查找等。有关更完整的示例,请参阅随包一起提供的 README文件。您还可以查看 API文档。