我是PowerShell的新手,但我希望有一种方法可以为指定OU中的所有用户获取组成员资格。 例如,如果我想知道OU"用户"中的所有用户是哪些用户,而不是键入他们的同一个用户。可能吗?如果我能将它呈现在列表中,那也会很棒。
由于
答案 0 :(得分:1)
查看ActiveDirectory
模块中的Get-ADUser
。
$Users = Get-ADUser -Filter * -SearchBase 'CN=Users,DC=Contoso,DC=com' -Properties MemberOf
然后,您可以根据需要格式化输出。
请注意,如果您想要一个递归组成员资格 - 即用户所属的所有组以及这些组所属的所有组 - 那么逻辑会更改,您必须为每个用户执行查找:
$Users = Get-ADUser -Filter * -SearchBase 'CN=Users,DC=Contoso,DC=com' -Properties MemberOf, DistinguishedName;
$Users | ForEach-Object {
Get-ADGroup -LDAPFilter ("(member:1.2.840.113556.1.4.1941:={0})" -f $_.DistinguishedName);
}
显然,你必须做一些操作才能让用户和团队保持在一起,但我会把它作为练习留给你。