我创建了这个自定义且非常基本的架构:
objectclass ( 2.25.2.2.1
NAME 'myObjectClass'
DESC 'myObjectClass objectclass'
STRUCTURAL
MUST ( cn )
)
我已经用这个 myObjectClass.ldif 文件毫无问题地添加了它:
dn: cn=myObjectClass,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: myObjectClass
olcObjectClasses: {0}( 2.25.2.2.1 NAME 'myObjectClass' DESC 'myObjectClass objectclass' STRUCTURAL MUST cn )
使用 ldapmodify:
sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f myObjectClass.ldif
现在我正在尝试使用 delete.ldif 删除它:
dn: cn=schema,cn=config
changetype: modify
delete: objectClass
objectClass: 2.25.2.2.1
使用 ldapmodify 总是得到 ldap_modify: Server is unwilling to perform (53):
sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f delete.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "cn=schema,cn=config"
ldap_modify: Server is unwilling to perform (53)
我正在使用 OpenLDAP 2.4.31 运行 Ubuntu 14.04 服务器
我在官方文档中搜索过这个:
A.2.2。更好的 cn=schema 功能
在 2.3 中,您只能添加新的架构元素,而不能删除或修改现有元素。在 2.4 中,您可以随意修改架构。(当然,硬编码的系统模式除外。)
有人可以分享任何线索吗?
提前致谢!