You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为LDAP 2.4.42.0添加cn;phonetic属性?

解决OpenLDAP 2.4.42支持cn;phonetic属性的问题

问题分析

错误码17对应undefinedAttributeType,说明服务器未识别cn;phonetic属性——默认core.schema中cn的定义未启用phonetic子类型支持,且你之前修改时用错了绑定DN(业务根DNcn=testadmin,o=test.com无权限修改cn=config配置库),导致无效DN错误。

解决步骤

1. 用正确的绑定DN访问配置库

修改OpenLDAP的schema需要使用cn=config库的管理员账号(通常为cn=admin,cn=config,而非业务根DN),若为Docker部署,该账号密码由LDAP_CONFIG_PASSWORD环境变量设置。

2. 导出当前core schema配置

先导出core schema的属性定义,确认cn条目的序号:

ldapsearch -x -D cn=admin,cn=config -W -b cn=core,cn=schema,cn=config olcAttributeTypes

输出中找到cn对应的条目,格式为olcAttributeTypes: {X}( 2.5.4.3 NAME ('cn' 'commonName') ... ),记下{X}中的数字X。

3. 生成schema修改LDIF文件

创建modify_cn_phonetic.ldif,替换其中的{X}为上一步找到的序号:

dn: cn=core,cn=schema,cn=config
changetype: modify
replace: olcAttributeTypes
olcAttributeTypes: {X}( 2.5.4.3 NAME ('cn' 'commonName') DESC 'RFC4519: common name(s) for which the entity is known by' SUP name EQUALITY caseIgnoreMatch SUBSTR caseIgnoreSubstringsMatch PHONETIC phoneticMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )

该配置为cn属性添加phonetic匹配规则,启用cn;phonetic子类型支持。

4. 执行schema修改

运行命令应用修改:

ldapmodify -x -D cn=admin,cn=config -W -f modify_cn_phonetic.ldif

输入cn=admin,cn=config的密码后,若提示modifying entry "cn=core,cn=schema,cn=config"则修改成功。

5. 验证与测试

  • 验证修改后的cn属性定义:
ldapsearch -x -D cn=admin,cn=config -W -b cn=core,cn=schema,cn=config olcAttributeTypes | grep -A5 "2.5.4.3"

确认输出包含PHONETIC phoneticMatch。

  • 测试添加带cn;phonetic的条目:
    创建test_entry.ldif:
dn: cn=testuser,o=test.com
objectClass: inetOrgPerson
cn: Test User
cn;phonetic: テストユーザー
sn: User

执行添加命令:

ldapadd -x -D cn=testadmin,o=test.com -W -f test_entry.ldif

此时应能成功添加,不再出现错误码17。

内容的提问来源于stack exchange,提问作者Risto Libera

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 03:31:30