Active directory 如何使用特定的用户属性搜索用户所属的所有组?

Active directory 如何使用特定的用户属性搜索用户所属的所有组?,active-directory,ldap,Active Directory,Ldap,我想搜索用户所属的所有组,但我只有用户的sAMAccountName属性,必须在一个查询中完成 下面的查询工作正常,但我不知道用户CN,我只知道用户的sAMAccountName "(&(objectClass=Group)(member=CN=Mariusz Kulig,CN=Users,DC=krbtst2k8,DC=local))" 以下查询也可以正常工作: (&(objectClass=user)(sAMAccountName=mkulig)) 如何通过sAMAcco

我想搜索用户所属的所有组,但我只有用户的sAMAccountName属性,必须在一个查询中完成

下面的查询工作正常,但我不知道用户CN,我只知道用户的sAMAccountName

"(&(objectClass=Group)(member=CN=Mariusz Kulig,CN=Users,DC=krbtst2k8,DC=local))"
以下查询也可以正常工作:

(&(objectClass=user)(sAMAccountName=mkulig))

如何通过sAMAccountName获取所有组?在指向用户的Group对象中,除了member之外,我看不到任何其他属性

使用LDAP必须使用从筛选器返回的DN:

(&(objectClass=user)(sAMAccountName=mkulig))

因此需要两个查询

Powershell提供了一些技巧,允许使用一行程序。(但它会发出相同的两个或多个查询)

发件人:


-jim

使用LDAP您必须使用从筛选器返回的DN:

(&(objectClass=user)(sAMAccountName=mkulig))

因此需要两个查询

Powershell提供了一些技巧,允许使用一行程序。(但它会发出相同的两个或多个查询)

发件人:


-吉姆

谢谢你的帮助。我不使用Powershell。我使用的Java应用程序有一些限制——我只能提供一个查询,其中包含用户所属的所有组。我找到了解决办法。谢谢你的帮助。我不使用Powershell。我使用的Java应用程序有一些限制——我只能提供一个查询,其中包含用户所属的所有组。我找到了解决办法。我找到了专门针对我的案例的解决办法。我使用连接到LDAP的Java应用程序,该应用程序只允许提供一个查询来查找用户所属的所有组。总之,我找到了一种在这个应用程序中使用用户DN而不是sAMAccountName的方法,因此我使用了查询(&(objectClass=Group)(member=CN=Mariusz-Kulig,CN=Users,DC=krbtst2k8,DC=local))。我找到了一种适合我的情况的解决方法。我使用连接到LDAP的Java应用程序,该应用程序只允许提供一个查询来查找用户所属的所有组。总之,我找到了一种在这个应用程序中使用用户DN而不是sAMAccountName的方法,因此我使用了查询(&(objectClass=Group)(member=CN=Mariusz-Kulig,CN=Users,DC=krbtst2k8,DC=local))。
(Get-AdUser -Filter {(sAMAccountName=mkulig)}  | select sAMAccountName)) {
    Get-ADPrincipalGroupMembership $user.sAMAccountName| select @{Expression={$user.sAMAccountName};Label="User"},sAMAccountName,name