我正在编写一个web应用程序,我想使用repoze.what和repoze.who来处理我的授权和身份验证。问题是,repoze.what似乎是硬编码的,以接受特定的权限模型,即:
访问站点的anonymous.
。
因此,例如,您的权限可能是“can - post”和“can - post -注释”,而您的组可能是“作者”、“访问者”,其中'author‘可以同时发布文章和评论,而访问者只能发布评论。
这种模式可能适用于大多数网站。然而,我的网站允许团队在不同的层次上相互协作。所以我需要的安全模型是:
anonymous.
)上是“评论”。
小组的数量将随着时间的推移而变化,这些小组的成员身份也将发生变化。我看不到将这个权限模型集成到repoze.what中的任何简单方法。我漏掉了什么明显的东西吗?
发布于 2010-12-15 21:55:38
那么,您可以很容易地拥有一个"Group_A_commenter“组和"Group_B_editor”组。它们不需要手动生成。)你的模型实际上只是分组的问题。
但是,您还应该能够生成实现规则的谓词检查器。
http://what.repoze.org/docs/1.0/Manual/Predicates/index.html#term-predicate
发布于 2011-01-09 08:08:48
我得到了一个答案,经过一段时间的摆弄。
答案是,使用repoze.what文档中建议的身份验证模式的唯一原因是,如果使用,则可以免费使用它们的谓词。幸运的是,编写和使用自己的谓词是小菜一碟。在我看来,唯一困难的需求是对用户对象(尽管很明显,您可以任意称呼它)。在我的应用程序中,我有一堆自定义谓词,它们检查某些事情,比如:
然后,我可以在任何我想使用的地方使用这些谓词。
https://stackoverflow.com/questions/4455197
复制相似问题