我想检查某些OU中的用户是否是来自其他特定OU的组(以及哪些组)的成员。 我怎样才能做到这一点 ?
实施例: 我有三个OU用户(users1OU,users2OU,users3OU)和两个用于各种grup的OU(grups1OU,groups2OU)。
现在我想知道来自OU users1OU的用户,来自OU groups2OU的成员,他们是。
我正在使用powershell 2.0并赢得2008年。
答案 0 :(得分:3)
使用RSAT工具中的activedirectory模块:
Import-Module activedirectory
$memb = @{}
foreach ($group in get-adgroup -searchbase "ou=groups2OU,dc=domain,dc=tld" -filter *){
get-adgroupmember $group |? {$_.distinguishedname -like "*ou=users1OU,*"}|
%{$memb[$_.name] += @($group.name)
}
}
$memb
枚举groups2OU中的组,获取组成员并使用distinguishedname过滤users1OU中的组。使用用户名作为键创建哈希表,并累积组名称集合作为值。
完成后,循环遍历哈希表键,并以您想要的任何报告格式输出用户名(键)和组成员身份(值)。