【问题标题】:Modify user attributes in LDAP using JAVA使用 JAVA 修改 LDAP 中的用户属性
【发布时间】:2021-09-01 16:02:54
【问题描述】:

我正在尝试更改 LDAP 服务器中用户的属性,当我尝试更改 LDAP 中用户的任何属性时,我会收到 NoPermissionException 但是如果用户是管理员,我可以更改/添加属性。我的目标也是更改密码。

javax.naming.NoPermissionException: [LDAP: error code 50 - 00002098: SecErr: DSID-03150F93, problem 4003 (INSUFF_ACCESS_RIGHTS), data 0
]; remaining name 'CN=test,CN=Users,DC=myid,DC=com,DC=local'

我的代码

ModificationItem[] mods = new ModificationItem[2];
mods[0] = new ModificationItem(DirContext.REMOVE_ATTRIBUTE,
                            new BasicAttribute("department"));
mods[1] = new ModificationItem(DirContext.ADD_ATTRIBUTE,
                            new BasicAttribute("department", "New Department"));
                   
ldapCtx.modifyAttributes("CN=test,CN=Users,DC=myid,DC=com,DC=local", mods);

谢谢。

【问题讨论】:

    标签: java active-directory ldap


    【解决方案1】:

    经过一番研究,我想通了。您可以通过授予他们在 Active Directory 中的权限来将这些权限委派给该用户。

    1. 在 ADUC(Active Directory 用户和计算机)中,右键单击包含您希望其他用户能够修改其属性的所有用户的 OU(组织单位)。选择“委托控制”。

    2. 添加您希望授予权限的用户。接下来。

    3. 选择“创建要委派的自定义任务”。接下来。

    4. 在列表中选择“仅文件夹中的以下对象”,然后选择“用户对象”。接下来。

    5. 取消选中常规。只检查属性特定的。

    6. 在权限列表下,根据您的要求检查条目,例如

    写部门

    写电话号码

    写街道地址

    1. 单击下一步并完成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-17
      • 1970-01-01
      • 1970-01-01
      • 2018-11-22
      • 1970-01-01
      • 2015-08-23
      • 1970-01-01
      • 2013-08-10
      相关资源
      最近更新 更多