金字塔:为什么我没有授权政策就不能使用身份验证策略?

时间:2012-06-12 02:50:20

标签: python authentication authorization pyramid

就像标题所说:为什么我没有授权政策就不能使用身份验证策略?

仅设置身份验证策略会导致:

pyramid.exceptions.ConfigurationExecutionError: <class 'pyramid.exceptions.ConfigurationError'>:
    Cannot configure an authentication policy without also configuring
    an authorization policy (use the set_authorization_policy method)

显然通常指定两个策略都有意义......但为什么Pyramid 强制指定两者?

我的(可能是天真的?)仅指定身份验证策略的动机是,目前,我想“手动”处理授权,而不涉及金字塔的授权“东西”。

1 个答案:

答案 0 :(得分:4)

没有令人信服的理由需要授权政策。我只能说,值得尝试将系统纳入ACLAuthorizationPolicy或构建自定义系统。如果您没有采用这种方式,请添加acl策略,不要担心。如果您对视图使用权限或通过has_permission调用,则政策非常懒惰且仅会被调用。