權限控制工具庫 Simple RBAC
Simple RBAC 是一個簡單的權限控制工具庫,提供了在 Python 中使用基于角色訪問控制(Role Based Access Control)的可能。該工具庫有如下特性:
- 支持角色(Role)和資源(Resource)的多重繼承,以便于在分層復雜的使用場景中使用;
- 支持規則斷言(Assertion),可以實現特殊的訪問控制規則(例如早上九點到十點之間拒絕上傳、小組成員才允許發言等);
- 最簡單的情況下可以只啟用一個規則注冊表(rbac.acl.Registry),調用 `is_allowed`和 `is_any_allowed`驗證規則;
- 復雜一點的場景,可以啟用訪問控制上下文(rbac.context.IdentityContext),設置回調函數自動加載用戶擁有的角色身份,并用 Python 豐富的 AOP 支持驗證權限(裝飾器、with 語法等);
- 對于使用了 ORM 的情況,還可以使用代理注冊表(rbac.proxy.RegistryProxy),在注冊規則和驗證權限的時候直接使用 ORM 映射過的類或實例作為參數。
詳細介紹請見項目主頁,Github 托管的源碼中也包含了使用范例。該工具庫也已經注冊到 PyPI,可以使用
easy_install simple-rbac # or pip install simple-rbac
安裝。
如果發現有 Bug 或對本項目有任何建議,都歡迎到 Github 提交 Issues 或 Fork me。
本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!