我正在尝试清理已交给我的Plone网站,但我不允许从头开始(我们不仅仅是那里)。
我被要求更改几个用户的密码,我发现自己被锁定了,即使是ZMI用户:当我点击ZMI中的/ plone-site / acl_users / source_users时,我得到{{1错误!
所以,我认为这是:
有关如何解决此问题的任何想法? (目前我已指示用户使用“忘记密码”表单重新获得访问权限,但将来我可能需要访问此对象以用于其他目的。)
更新时间2013-01-14
正如@aclark所说,我正在提供Unauthorized
的完整追溯:
verbose-security=on
最后一行是启发性的:没有任何角色可以做我想做的事情。现在的问题是如何解决这个问题。另一个问题(我们可能不会回答)是如何发生的。
答案 0 :(得分:1)
不要猜测。首先,从Unauthorized
中忽略的例外列表中删除Site Setup -> Errors
:
然后Save
。接下来,请确保在verbose-security
文件的实例部分中启用buildout.cfg
,例如:
[instance]
recipe = plone.recipe.zope2instance
verbose-security = on
(设置完成后运行buildout。)
现在访问 / plone-site / acl_users / source_users ,然后返回Site Setup -> Errors
查看实际错误。
答案 1 :(得分:1)
我假设您正在尝试使用Zope-Application级别用户管理plone用户(用户在zope级别的/acl_users/users/manage_users
处进行侦听 - 而不是在plone级别的acl_users中进行侦听)。
如果用户以某种方式在plone级别上没有管理员角色,则无法管理plone用户。
可能的原因可能是:
您的Zope级别用户在Zope级别不再具有“经理”角色(用户应在Manager
下拥有/acl_users/roles/manage_roles
角色。
您的用户具有与plone级别的zope级别用户相同的ID,但没有Manager
角色。用户将列在/plone-site/acl_users/source_users
下 - 由于Unauthorized
错误而无法检查 - 或者由另一个PAS插件(如LDAP)列出。在plone级别为用户提供Manager
角色也可以解决问题,而无需从plone级别的acl_users中删除用户。
我建议创建一个紧急用户:
bin/instance adduser emergency secret
(bin / instance可能因安装类型而异)/acl_users/users/manage_users
)上注册Manager
角色(acl_users/roles/manage_roles
)。如果在Zope的acl_users上注册了相同的用户,并且在Plone的acl_users上注册了不同的角色,则可能会产生一些奇怪的效果。根据当前的身份验证方法(例如,Zope级别的基本身份验证或Plone级别的身份验证身份验证),您可能拥有与同一用户不同的权限。