我刚刚设置了一个 OpenLDAP 服务器 (v2.4.23) 并加载了一些数据。我可以通过 Apache Directory Studio 浏览和编辑,但删除操作全部失败。
例如,我尝试从文件中删除 DN 列表:
ldapdelete -f rmroles.txt -W -D "cn=admin,cn=config"
但它却留下了这样的信息:
ldap_delete:服务器不愿意执行(53) 附加信息:影子上下文;无更新引荐
我发现的大多数信息都表明这与复制有关,但我没有尚未在此服务器上设置复制。olcReadOnly
是FALSE
,并且我已将 olcAccess 设置为to * by * manage
。
还有其他想法可能是什么问题吗?
答案1
显然,只要有olcMirrorMode
属性存在cn=config
(即使设置为FALSE
),就足以触发影子上下文。删除该属性并重新启动 slapd。
答案2
旧线程,但我发现我的解决方案略有不同。
再次,我的 LDAP 服务器处于同步/复制设置中,需要将其禁用。
在/etc/openldap/slapd.conf
指令中syncrepl
指定了(以及下面的一些相关配置)。
注释掉这段代码并重新启动 ldap 服务器后我就可以更改 LDAP 数据库了。
答案3
- 只需观察属性 userPassword 的值。
- 它以 {MD5} 为前缀(就我而言)
- 只需根据它选择加密方法即可