【发布时间】:2012-03-13 19:04:18
【问题描述】:
我正在为在 Google App Engine 上运行的用 Python (2.7) 编写的应用寻找基于角色的框架/模块/包。
对于基于角色,我的意思是一种机制,可以让我检查(大部分时间在请求处理期间)某个用户是否能够执行特定操作。
几个用例:
- 用户 A 应该能够查看和修改自己的个人资料,而用户 B 应该只能看到用户 A 的个人资料。
- 具有“admin”角色的用户应该能够看到所有注册用户,而用户 A 和用户 B 应该只能看到具有公共配置文件的用户(例如 user.public 属性设置为 True 的用户)李>
- 等
我在想像
user_a.is_able_to('read', user_b) # -> True of False
或
user_a.authorize('update', user_b) # raises an exception if 'not allowed to'
到目前为止,我只看到了来自tipfy 的acl.py。看起来很简单,非常接近我正在寻找的东西。我想知道是否有类似于 acl.py 的东西,最好使用 NDB 实现。
【问题讨论】:
-
[Here][1] 是一个很好的实施建议。 [1]:stackoverflow.com/questions/1448308/…
-
是的,我有一些关于如何自己实现它的想法。我想知道是否有人/某事已经实施。似乎不是(来自tipfy的一部分)所以我可能会DIY。
标签: python google-app-engine authorization acl