Manager没有acl_users / source_users中manage_users的权限

时间:2012-12-17 16:35:38

标签: plone

我正在尝试清理已交给我的Plone网站,但我不允许从头开始(我们不仅仅是那里)。

我被要求更改几个用户的密码,我发现自己被锁定了,即使是ZMI用户:当我点击ZMI中的/ plone-site / acl_users / source_users时,我得到{{1错误!

所以,我认为这是:

  • 像LDAP这样的插件(尽管没有使用过)会弄乱我的用户来源。
  • 有人弄乱了权限。

有关如何解决此问题的任何想法? (目前我已指示用户使用“忘记密码”表单重新获得访问权限,但将来我可能需要访问此对象以用于其他目的。)

更新时间2013-01-14

正如@aclark所说,我正在提供Unauthorized的完整追溯:

verbose-security=on

最后一行是启发性的:没有任何角色可以做我想做的事情。现在的问题是如何解决这个问题。另一个问题(我们可能不会回答)是如何发生的。

2 个答案:

答案 0 :(得分:1)

不要猜测。首先,从Unauthorized中忽略的例外列表中删除Site Setup -> Errors

enter image description here

然后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中删除用户。

我建议创建一个紧急用户:

  • 转到服务器上的终端(例如ssh)
  • 运行bin/instance adduser emergency secret(bin / instance可能因安装类型而异)
  • 您现在有一个名为“emergency”且密码为“secret”的新用户,在zope-leve l(/acl_users/users/manage_users)上注册Manager角色(acl_users/roles/manage_roles)。
  • 使用此用户,您可以修复其他管理员用户,修复后删除紧急用户。

如果在Zope的acl_users上注册了相同的用户,并且在Plone的acl_users上注册了不同的角色,则可能会产生一些奇怪的效果。根据当前的身份验证方法(例如,Zope级别的基本身份验证或Plone级别的身份验证身份验证),您可能拥有与同一用户不同的权限。