使用python检索LDAP中的所有AD组名称。(不希望检索组成员)

使用python检索LDAP中的所有AD组名称。(不希望检索组成员),python,python-3.x,ldap,ldap3,Python,Python 3.x,Ldap,Ldap3,我正在尝试使用python从LDAP检索所有AD组名称。使用“ldap3”python库 我没能找到一种使用python的方法。如果你们有什么想法,可以告诉我吗 我相信,我可以通过一个简单的命令使用“powershell”检索所有可用的广告组。并保存到文件中 Powershell代码为: $op = @() #This below line doing everything I need. $ADGROUPS = GET-ADGroup -Filter * #Then filtering w

我正在尝试使用python从LDAP检索所有AD组名称。使用“ldap3”python库

我没能找到一种使用python的方法。如果你们有什么想法,可以告诉我吗

我相信,我可以通过一个简单的命令使用“powershell”检索所有可用的广告组。并保存到文件中

Powershell代码为:

$op = @()

#This below line doing everything I need.
$ADGROUPS = GET-ADGroup -Filter *

#Then filtering what I need.
foreach($grp in $ADGROUPS)
{
    $g = "" | Select "name", "dn", "member"
        $g.name = $grp.name
        $g.dn = $grp.distinguishedName
        $g.member = $grp.member

    $op += $g
}

# Saving to csv file.
$op | Export-Csv "groups.csv"
在python中我需要同样的东西

要在python中检索其他内容, 我正在使用这个流。 但是,为了吸引团体,我不明白

from ldap3 import Server, Connection, ALL
ldap_conn = Connection(server, ... bla bla)
ldap_conn.search(
    search_base=my_dn,
    search_filter= '(????)', # required
    search_scope=ldap3.SUBTREE,
    attributes='*'
)

有人能帮我找到所有的广告群名称吗?

你可以从以下过滤器开始:

'(objectClass=group)'
但是,您可能还希望根据组的类型执行其他筛选。例如

'(&(objectClass=group)(groupType:1.2.840.113556.1.4.803:=8))'
你应该得到所有的通用组。例如,如果要包括或排除安全组,则可能需要对照其他位进行检查。看看那些分解属性位字段(如groupType)的站点,看看是否可以筛选出所需的内容。例如,本网站:


我知道这对你没有多大帮助,但这里有一个更容易阅读的Powershell代码
获取ADGroup-Filter*|选择名称,@{n=“dn”;Value={$\u.differentiedName},Member |导出Csv.\Csv.Csv
-Filter*
永远不要这样做。LDAP搜索:objectClass=groupI不确定为什么投反对票?\u Filter='(&(objectClass=group))“这个过滤器对我有用。我可以检索所有组@谢谢你!