我有一个预先存在的对象类,它具有很多MAY属性。我已经创建了新属性,但只需要将它们添加到预先存在的类中即可。现在,我可以使用iManager(eDirecory的NetIQ接口)将属性添加到类中,但是我想知道是否可以简单地将属性附加到“ MAY”部分的对象类中,而无需先删除整个对象类并重新加上原始的MAY属性。我注意到很多人都问过这个问题,但是我从未看到有回复说您可以做到,如何做到或不能做到。我只是好奇它是否可能。这是一个对象类示例:
objectClasses: (
2.5.6.10 NAME“ inetOrgPerson” 结构性 SUP(organizationalPerson) MAY(employeeID $ employeeType $ nameName $ groupMembership $ uid $ user $ user $ userCertificate $ userPassword) X-NDS_NOT_CONTAINER'1' X-NDS_NONREMOVABLE'1' X-NDS_NAME“用户” )
我只想使用ldapmodify将我创建的新属性(例如“ manager”“ managerID”)添加到对象类的May部分,因此最终结果如下所示:
objectClasses: (
2.5.6.10 NAME“ inetOrgPerson” 结构性 SUP(organizationalPerson) MAY(employeeID $ employeeType $ givenName $ groupMembership $ uid $ user $ user $ userCertificate $ userPassword $ manager $ managerID) X-NDS_NOT_CONTAINER'1' X-NDS_NONREMOVABLE'1' X-NDS_NAME“用户” )
同样,我知道我可以删除整个对象类并使用新属性重新创建,也可以使用iManager的gui来完成。但是问题是是否有可能做到这一点?
谢谢
答案 0 :(得分:1)
LDAP RFC中未定义如何修改LDAP目录服务器的架构,因此仍然是专有的。一些服务器允许通过LDAP进行删除和添加“ cn = Schema”条目中的objectClasses属性(例如OpenDJ)。有些要求您停止服务器并手动编辑架构。 最重要的是,它完全取决于您使用的服务器,它应该是产品文档的一部分。
答案 1 :(得分:0)
不在OpenDJ中。为此,您需要使用
changetype:修改 替换:对象类
但是,架构后端不支持此功能,它将用于修改用户条目。
您可以(尽管不建议)直接修改架构文件,但这可能在下次重新启动服务器时导致问题。如果您使用的是旧版OpenDJ,则还可以通过控制面板管理架构。