【发布时间】:2021-01-08 00:33:30
【问题描述】:
我在 csv 中有大量 samAccountNames,我需要编写一个脚本来检查每个用户并查看他们是否是 3 个 AD 组中的任何一个的成员。我尝试了一个在组中搜索然后找到用户的脚本,但我遇到了组包含太多成员的问题,这会引发错误。
我尝试遍历每个用户并提取组成员身份,但我认为我不知道如何正确搜索数组中的值,或者至少我认为这是我的问题
这就是我想要的:
#Groups to look for
$groups = 'Group1', 'Group2', 'Group3'
#Import users to check from a csv file
Import-Csv "$PSScriptroot\Users.csv" | ForEach-Object {
#define users variable
$users = $_."samAccountName"
foreach ($user in $users) {
#Get all groups that the $user is a member of
$membership = Get-ADPrincipalGroupMembership $user | select name
foreach ($group in $groups) {
#Check if $group is in $membership
}
}
}
#export a new csv of all $users who were found to be in an $groups
寻求有关如何完成此任务的任何帮助。谢谢!
【问题讨论】:
标签: powershell active-directory