我使用下面的代码删除过程如何使用弹簧templete
}
但使用解除绑定()删除从LDAP的特定属性,它会删除所有的属性, 但是我想从ldap中只删除特定的atrribute,就像这个人的角色一样。
感谢您的帮助。
我使用下面的代码删除过程如何使用弹簧templete
}
但使用解除绑定()删除从LDAP的特定属性,它会删除所有的属性, 但是我想从ldap中只删除特定的atrribute,就像这个人的角色一样。
感谢您的帮助。
对于属性修改,您应该使用DirContextAdapter
,如reference documentation中所述。适用于您的要求的部分是3.2.2节(更新);要删除属性值,您应该使用removeAttributeValue
。
有三种模式:
你应该使用MOD_REPLACE
>>> mod_attrs = [ (ldap.MOD_DELETE, 'cn','Francis Bacon') ]
>>> l.modify_s('uid=francis,ou=users,dc=example,dc=com', mod_attrs)
(103, [])
>>>
这将从cn属性只移除属性值培根。如果不存在这样的值,则会引发NO_SUCH_ATTRIBUTE异常。否则,该值将被丢弃。
如果你不知道字段的值,然后使用无作为这样的(@Anouar莫卡塔里取例子)值:
mod_attrs = [ (ldap.MOD_DELETE, 'cn', None) ]
l.modify_s('uid=francis,ou=users,dc=example,dc=com', mod_attrs)