Python LDAP - 将用户移动到不同的 OU
Python LDAP - Move user to different OU
背景:
我一直在 Linux 机器上使用 python-ldap 模块来管理远程 Windows Server 2008 上的用户帐户。我已经能够搜索、创建和修改用户,除了更改用户的 'ou'。
我试过使用 'modify_s' 和 'modrdn_s' 但由于 modrdn 只允许你更改 dn 的第一部分,我没有运气修改 'ou' 或移动一个用户到一个新的 'ou'。
暂时我正在创建一个新用户并复制我能够从旧用户那里复制的所有属性,然后删除旧用户。但这不允许我保留用户创建日期和其他不可编辑的信息。
我已经彻底搜索了互联网并找到了一些解决方案,但是:
在其他操作系统上:How do you move a user to a different OU using Python
和其他编程语言:Active Directory LDAP move user to different OU - Ruby
这在 Linux 上的 python-ldap 中是否可行,或者是否有任何解决方法?
谢谢!
您需要使用rename_s
并指定newsuperior
参数。
快速示例代码:
ldap.rename_s('cn=UserName,ou=OldContainer,dc=example,dc=com', 'cn=UserName', 'ou=NewContainer,dc=example,dc=com')
背景:
我一直在 Linux 机器上使用 python-ldap 模块来管理远程 Windows Server 2008 上的用户帐户。我已经能够搜索、创建和修改用户,除了更改用户的 'ou'。
我试过使用 'modify_s' 和 'modrdn_s' 但由于 modrdn 只允许你更改 dn 的第一部分,我没有运气修改 'ou' 或移动一个用户到一个新的 'ou'。
暂时我正在创建一个新用户并复制我能够从旧用户那里复制的所有属性,然后删除旧用户。但这不允许我保留用户创建日期和其他不可编辑的信息。
我已经彻底搜索了互联网并找到了一些解决方案,但是:
在其他操作系统上:How do you move a user to a different OU using Python
和其他编程语言:Active Directory LDAP move user to different OU - Ruby
这在 Linux 上的 python-ldap 中是否可行,或者是否有任何解决方法?
谢谢!
您需要使用rename_s
并指定newsuperior
参数。
快速示例代码:
ldap.rename_s('cn=UserName,ou=OldContainer,dc=example,dc=com', 'cn=UserName', 'ou=NewContainer,dc=example,dc=com')