-1

我正在尝试使用来自 LDAP 的 python 检索所有 AD-GROUP 名称。使用“ldap3”python库。

我找不到使用python的方法。如果你们有任何想法,请告诉我。

我可以通过一个简单的命令使用“power shell”检索所有可用的 AD-GROUPS。并保存到文件。

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='*'
)

有人可以帮我或类似的人找到所有 AD-GROUP 名称吗?

4

1 回答 1

0

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

'(objectClass=group)'

但是您可能还想根据组的类型进行额外的过滤。例如。

'(&(objectClass=group)(groupType:1.2.840.113556.1.4.803:=8))'

应该让你所有的通用组。例如,如果您想要包含或排除安全组,您可能需要检查其他位。看看那些分解了 groupType 等属性的位字段的网站,看看你是否可以过滤出你需要的东西。例如,这个网站:

https://ldapwiki.com/wiki/GroupType

于 2020-05-01T19:22:20.280 回答