使用Python获取Active Directory组内用户列表的技术请求
获取Active Directory组内用户列表的Python脚本
依赖准备
首先安装pyad库——这是一个简化AD操作的Python工具,对新手友好:
pip install pyad
脚本实现
以下脚本可指定AD组名,输出组内所有用户的基本信息,请根据你的环境替换注释中的参数:
from pyad import pyad # 配置AD连接(替换为你的域控制器地址、有权限的账号信息) # 如果运行脚本的机器已加入域,可省略username和password,自动使用当前登录用户身份 pyad.set_defaults( ldap_server="dc.your-domain.com", username="ad-admin@your-domain.com", password="your-password" ) # 替换为你要查询的目标组名 target_group = "Sales-Team" try: # 获取目标组对象 ad_group = pyad.adgroup.ADGroup.from_cn(target_group) # 提取组内所有成员 group_members = ad_group.get_members() print(f"【{target_group}】组内用户列表:") for member in group_members: # 过滤出用户对象(排除组嵌套的子组) if member.object_category == "CN=Person,CN=Schema,CN=Configuration,DC=your-domain,DC=com": print(f"- 用户名: {member.sAMAccountName}, 全名: {member.name}") except Exception as err: print(f"查询出错:{str(err)}")
注意事项
- 运行脚本的设备需能访问域控制器的LDAP服务(默认端口389)
- 使用的账号需要有读取AD组和用户数据的权限
- 脚本中的过滤条件会自动排除组嵌套的子组,只保留用户成员
内容的提问来源于stack exchange,提问作者ZULI
相关产品推荐
相关产品推荐

