如何使用Python将用户移动到不同的组织单位(OU)?

4
我一直在使用Tim Golden的active_directory module和广泛的python-ldap模块进行尝试,虽然我看到了很多关于如何使用python查询、修改、创建和删除Active Directory条目的文章,但是我无法找到任何关于如何使用python将用户移动到不同OU的建议。是我的谷歌搜索有问题还是这不可能?(我在c#方面取得了很大的成功,但我更喜欢在python上工作)。
提前感谢您的帮助。
编辑: 好的,我做了更多的挖掘,并意识到我需要使用MODRDN命令。这是通过Python_Ldap提供的,所以太好了!...但是我似乎无法让python-ldap使用Windows凭据进行身份验证,所以我一直在使用pywin32。 pywin32非常适合编辑属性,但我还没有找到通过此模块编辑区别名称的方法...哎呀!如果您有任何线索,将不胜感激。
1个回答

4

好的,我已经解决了这个问题,而且解决方案相当不错。

很遗憾,这是一个仅适用于Windows的解决方案,因为它使用了pywin32模块(尽管在python-ldap下您也可以使用modrdn来解决此问题)

好的,下面是如何将用户“jimboface”移动到OU“happyland”的方法:

import active_directory

user = active_directory.find_user("jimboface")
destination_ou = active_directory.find_ou("happyland")
destination_ou.com_object.MoveHere(str(user.as_string()), str(user.Name))
#Thats it!

这样的时刻让我想起了我为什么喜欢这门语言。希望这能对某些人有所帮助!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接