获取单个用户所属的所有组的最干净(和最快)的方法是什么?
im使用powershell 2.0计算citrix中的登录用户数,并将他们从active目录分为多个组。所有用户都是名为“VDI计费”的组的一个子组的成员,但用户和VDI计费组之间的嵌套组数并不总是相同的。因此,我希望能够让所有组(包括嵌套组)与VDI计费组(第一级)的成员列表进行比较,以便获得一个概述。
例子:
VDI计费有一个成员组NL-VDI-T-Systems。有多个组(自己有多个组)。但总览必须计算NL-VDI-T-Systems的所有用户(子)成员。
所以在概述中我应该得到:
NL-VDI-T-系统:22
ITA-VDI-T-系统:25
等等。
有人知道一个漂亮的小把戏吗?

最佳答案

我们一直都在写剧本来完成我的工作!有了QuestActiveRoles管理工具,一个免费的管理单元,使得在Powershell中处理活动目录对象更加容易。
Quest安装免费的quest activeroles管理工具
将pssnapin添加到您的配置文件中,以便您可以从控制台访问所有powershell广告工具-Add-PSSnapin Quest.ActiveRoles.ADManagement。如果要编写使用ad工具的scipts,只需将命令添加到脚本的第一行。
运行以下命令以获取用户所属的所有直接和嵌套组:Get-QADUser 'DOMAIN\USER' | foreach -Process {$_.memberof, $_.nestedmemberof}如果需要,可以通过在命令末尾添加Out-CSVOut-Filecmdlet将其管道化为文本文件或csv。
这对我很有吸引力。如果你有任何问题,请告诉我!

关于windows - 使用PowerShell递归获取AD组成员身份,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4302605/

10-10 13:32