我正在使用 Python-LDAP与 Active Directory 交互,并努力寻找我需要编写哪些代码才能将用户添加到安全组中。
我已经编写了搜索用户和组的 DN 的代码,我只是不确定我需要使用什么函数来添加用户。我遇到了这个:
LDAPObject.add_s(dn, modlist)
所以我已经有了 DN,但是当我搜索 modlist 时,我得到了这个:
ldap.modlist.addModlist(entry[, ignore_attr_types=[]])
我不确定我是否需要 modifyModlist 或 addModlist,也不确定我需要发送给它的值。
我以为我可以将用户和组 DN 发送到一个函数,它会将用户添加到组中……我猜这不是那么简单?
最佳答案
模块 ldap.modlist仅包含用于生成修改列表的便利函数。您必须调用方法 LDAPObject.modify_s()实际修改组条目。
假设您在变量 user_dn 中有用户条目的 DN,group_dn 是组条目的 DN,ldap_conn 是您的 LDAPObject实例。
那么你只需使用:
ldap_conn.modify_s(
group_dn,
[
(ldap.MOD_ADD, 'member', [user_dn]),
],
)
当然,您也可以在一次修改操作中删除用户并添加其他用户:
ldap_conn.modify_s(
group_dn,
[
(ldap.MOD_ADD, 'member', [user1_dn, user2_dn]),
(ldap.MOD_DELETE, 'member', [user3_dn, user4_dn]),
],
)
关于python - 如何使用 Python 将用户添加到 LDAP 组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51328279/