我如何使用ldaptemplate删除操作属性

问题描述 投票:1回答:3

我需要从名为pwdAccountLockedTime的策略覆盖图中删除操作属性>

我遵循了this Q&A,建议方法2:

直接使用LdapTemplate#modifyAttributes(Name, ModificationItem[]),手动建立ModificationItem阵列。

这是我的代码:

Name dn = buildDn(user);
DirContextOperations context = ldapTemplate.lookupContext(dn);
ModificationItem[] modificationItems;
modificationItems = new ModificationItem[1];
modificationItems[0] = new ModificationItem(DirContextAdapter.REMOVE_ATTRIBUTE,
                                            new BasicAttribute(
                                                 "pwdAccountLockedTime", dn));
ldapTemplate.modifyAttributes(dn,modificationItems);

我检查了用户,该属性仍然存在。

我想念的是什么?

我需要从名为pwdAccountLockedTime的策略覆盖图中删除操作属性,我遵循此问答,提出了方法2:使用LdapTemplate#modifyAttributes(Name,...

java spring ldap openldap spring-ldap
3个回答
0
投票

看来您的目的是要解锁一个因OpenLdap中的错误密码尝试过多而被锁定的帐户。


0
投票

你不知道。操作属性适用于LDAP服务器,而不适用于应用程序。它们对应用程序是只读的。


0
投票

如果要删除pwdAccountLockedTime属性,则在配置LDAP时必须指定管理员凭据。用户无权删除操作属性。您可以参考以下代码。

© www.soinside.com 2019 - 2024. All rights reserved.