gpt4 book ai didi

java - 如何为ldap用户添加自定义属性?

转载 作者:行者123 更新时间:2023-11-29 09:25:20 27 4
gpt4 key购买 nike

我使用以下代码在 LDAP 中创建了一个属性。

attrs.put("NUMERICOID", "1.3.6.1.4.1.42.2.27.4.2.3.1.1.9");
attrs.put("NAME", "myattribute");
attrs.put("DESC", "for JNDITutorial example only");
attrs.put("SYNTAX", "1.3.6.1.4.1.1466.115.121.1.15");
DirContext schema = context.getSchema("");
DirContext newAttr = schema.createSubcontext ("AttributeDefinition/myattribute1", attrs);

属性创建成功,现在我正在尝试将此属性添加到用户说“user1”(uid)。

Attributes attributeslist = context.getAttributes(ld.getUserDN(username));
attributeslist.put("myattribute1", "");
context.modifyAttributes(ld.getUserDN("test5"), DirContext.REPLACE_ATTRIBUTE, attributeslist);

但它给了我对象类冲突错误。

谁能帮我解决这个问题?我需要使用 Java 代码向用户添加用户定义的属性。

最佳答案

您创建属性,然后选择它应属于的类,并更新该类。

您可以修改基类(LDAP 服务器基模式附带)、有效类(可以独立存在的对象类,如 inetOrgPerson)或辅助类(不能创建此类型的对象)本身,但它扩展了另一个对象类)。

所以定义一个 aux 类来“保存”你的新属性,然后用你的类名向目标对象的对象类添加一个条目,然后你可以将属性添加给用户。

我们一直这样做。

关于java - 如何为ldap用户添加自定义属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2787831/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com