我有一个应用程序在 OpenLDAP 中存储联系人。它使用属性c
来存储描述国家/地区名称的字符串。的语法c
仅允许两个字母的国家/地区代码,但应用程序使用完整的国家/地区名称。因此,它的属性应该正在使用co
或
friendlyCountryName
。遗憾的是,我无法更改此应用程序。(它是 Mozilla)。
我正在寻找一种方法来实现这一点。当然,我可以将 的架构定义更改为 的架构定义c
,co
但这似乎是不好的做法。我也可以禁用架构检查,但那更糟糕。
我也尝试过使用 rwm 覆盖来映射c
到co
,它可以工作(如:客户端保存c
,数据库包含co
),但是 的语法c
仍然是强制执行的,所以它不起作用。
因此,我现在最好的选择是更改核心架构中的语法c
。但我很好奇:有没有更好的方法来解决这个问题?
答案1
如果您的 LDAP 服务器配置了mozillaAbPersonAlpha
模式,您可以将 AUX 附加objectClass: mozillaAbPersonAlpha
到您的条目上(假设它们有cn
),然后使用该mozillaHomeCountryName
属性。