就像标题所说:为什么我没有授权政策就不能使用身份验证策略?
仅设置身份验证策略会导致:
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 强制指定两者?
我的(可能是天真的?)仅指定身份验证策略的动机是,目前,我想“手动”处理授权,而不涉及金字塔的授权“东西”。
答案 0 :(得分:4)
没有令人信服的理由需要授权政策。我只能说,值得尝试将系统纳入ACLAuthorizationPolicy
或构建自定义系统。如果您没有采用这种方式,请添加acl策略,不要担心。如果您对视图使用权限或通过has_permission
调用,则政策非常懒惰且仅会被调用。