【发布时间】:2021-09-20 19:42:49
【问题描述】:
我正在尝试编写一个脚本来查看用户及其所属的 AD 组,寻找具有多个“子组”的特定组。 例如 VPN-GRP-ONE、VPN-GRP-TWO、VPN-GRP-THREE....
尝试使用我在一些演示中找到的一些东西,但它无法正常工作,因为它希望导入 ActiveDirectory 模块以使用 get-aduser,并且我们不允许安装我们还没有的新模块。 (我的可用模块中没有 ActiveDirectory)
我正在尝试使用:
$list1 = C:\Users\MrAoxx\Documents\List1.txt
foreach ($_ in $list1) {
net user $_ /domain}
我希望输出结果是我可以采取下一步将其通过管道传输到一个新的文本文件并开始从中剥离我需要的内容以获取我正在寻找的 AD 组名称,即:ONE、TWO、三。但它所做的只是打开 txt 文件而已。
【问题讨论】:
-
我强烈建议您为您的操作系统安装 RSAT 并利用随它安装的 ActiveDirectory 模块。对于任何 Windows 管理员来说,这是一个非常标准的工具集,尤其是对于 AD 角色。
-
我们不允许安装未经公司 INFOSEC 小组审查的东西,这使我们非常有限。
-
RSAT 与用于系统管理工作的工具一样标准。这不是一些第三方工具,这是微软提供的标准系统管理工具包。如果您要求以 Windows syadmin 身份安装它并因为“Infosec”没有审查该工具而被拒绝,我会感到非常惊讶。
-
$list1 = Get-Content 'C:\Users\MrAoxx\Documents\List1.txt' -
使用
net user $_ /domain该命令的问题是它会截断组成员部分中的组名称。不幸的是,现在是 2019 年,与用于自省 AD 的net user命令相比,我更擅长 cmdlet,并且不知道是否有一些命令不会截断组成员资格。
标签: list powershell active-directory