ldap3 python 搜索组成员并检索他们的 sAMAcountName (Active Directory)
发布日期:2025-04-04 11:52:07 浏览次数:10 分类:精选文章

本文共 1412 字,大约阅读时间需要 4 分钟。

在Python中,使用ldap3库来搜索Active Directory中的组成员并检索他们的sAMAccountName。以下是一个操作步骤和代码示例:

安装ldap3库

通过pip安装ldap3库:

pip install ldap3

连接到LDAP服务器

首先,创建一个LDAP连接:

from ldap3 import Server, Connectionserver = Server('your_domain_controller')  # 替换为域控制器的IP地址或DNS名称connection = Connection(server, user='username', password='password')connection.bind()

搜索组成员

设置搜索基底和过滤条件:

search_base = 'DC=example,DC=com'  # 替换为你要搜索的域的部分DNsearch_filter = '(objectClass=user)'attributes = ['sAMAccountName']connection.search(search_base, search_filter, attributes=attributes)

检索结果

循环遍历搜索结果并打印sAMAccountName:

for entry in connection.entries:    print(entry['sAMAccountName'].value)

退出连接

断开LDAP连接:

connection.unbind()

以上代码会连接到你的Active Directory服务器,搜索所有组成员,并打印每个用户的sAMAccountName。

测试用例

以下是完整的测试用例代码:

from ldap3 import Server, Connectionserver = Server('your_domain_controller')  # 替换为域控制器的IP地址或DNS名称connection = Connection(server, user='username', password='password')connection.bind()search_base = 'DC=example,DC=com'  # 替换为你要搜索的域的部分DNsearch_filter = '(objectClass=user)'attributes = ['sAMAccountName']connection.search(search_base, search_filter, attributes=attributes)for entry in connection.entries:    print(entry['sAMAccountName'].value)connection.unbind()

这个测试用例会连接到你的Active Directory服务器,搜索所有组成员,并打印每个用户的sAMAccountName。

应用场景和示例

ldap3库可用于自动化任务,如脚本查找特定用户或验证用户密码等。例如,你可以创建一个脚本,在用户加入域时自动分配默认用户名和密码。

通过以上方法,你可以轻松地在Python中使用ldap3库来管理Active Directory信息。

上一篇:LDA与QDA
下一篇:Ldap 从入门到放弃(一)

发表评论

最新留言

关注你微信了!
[***.104.42.241]2025年05月13日 10时19分10秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章