【发布时间】:2017-06-08 06:03:32
【问题描述】:
我正在尝试使用 java 在 ldap 中创建一个用户,但是正在创建用户但它被禁用,如何在创建用户时启用它,发布我用于创建的代码。是否缺少任何参数或设置错误的属性或密码设置错误?帮帮我。
Attribute userCn = new BasicAttribute("cn", commonName);
Attribute samAccountName = new BasicAttribute("samAccountName",samaccountname);
Attribute userPassword = new BasicAttribute("userPassword",Password);
Attribute oc = new BasicAttribute("objectClass");
oc.add("top");
oc.add("person");
oc.add("organizationalPerson");
oc.add("user");
Attributes entry = new BasicAttributes(true);
entry.put(userCn);
entry.put(samAccountName);
entry.put(oc);
entry.put(userPassword);
String entryDN = "CN=" + userID.trim() + ",OU=abc,OU=def,DC=ghi,DC=jkl";
dirContext.createSubcontext(entryDN, entry);
更新 1
我在更新或修改用户以设置用户密码并启用它时遇到以下异常/错误,我正在使用 ldap 服务器和我的环境之间的私有连接,所以我需要使用 SSL/TLS 配置。
错误代码 53 和 WILL_NOT_PERFORM
【问题讨论】:
-
您使用的是哪种 LDAP 实现以及架构中的什么属性决定用户是否处于活动状态?
-
对于 ldap 实现-“需要创建一个活跃用户”,我不知道负责使其活跃的属性这就是为什么发布这个问题
-
我对实施的意思是“品牌”、Active Directory、OpenLdap 或其他。什么告诉您用户已禁用?您使用的是特定客户端吗?
-
我正在使用 Active Directory,通过打开微软的 ldap 浏览器并点击用户属性,我知道它已被禁用,并且我没有使用任何特定的客户端,只是使用 java JNDI
-
如果您使用 Active Directory 和 Java JNDI,您的问题与 openldap 无关。
标签: java active-directory ldap jndi