当前位置:首页>弱电技术>系统运维>如何使用 PowerShell 导出 AD 组成员

如何使用 PowerShell 导出 AD 组成员

如果您以管理员或技术人员的身份在 Active Directory 中工作,那么有一天您可能需要导出 Active Directory 中的组成员。有时请求来自 HR,或者您可能只需要此信息进行报告。

如果您仔细研究,就会发现在 Active Directory 中没有用于导出组成员的 GUI。别担心,我们已经为您准备好了。

在本文中,我们将介绍如何使用一些简单但功能强大的 PowerShell 命令导出 AD 组成员。

启动 PowerShell

大多数服务器都已经安装了 PowerShell。我们可以通过按Windows 键 +R并在“运行”框中键入不带引号的“ powershell ”并按回车键来启动 PowerShell。

如果该命令不起作用,您可能没有安装 PowerShell 模块。如果是这种情况,您可以从Microsoft 的 GitHub 帐户下载并安装 PowerShell,以便为您的环境安装 PowerShell 模块。

或者,您可以通过执行以下操作直接从服务器管理器安装 PowerShell作为角色:

打开服务器管理器,然后单击添加角色和功能

单击下一步,直到您看到功能部分。

单击远程服务器管理工​​具选项卡 ->角色管理工具-> AD DS 和 AD LDS 工具

为Windows PowerShell启用Active Directory 模块。

接下来单击“安装”按钮开始安装 PowerShell。

查找 Active Directory 组名

接下来,您需要查找并列出 Active Directory 中的所有组。这有助于您准确了解您的组的名称,以便我们稍后在 PowerShell 命令中引用它进行导出。

运行以下命令以列出服务器上的所有 Active Directory 组:

get-adgroup -filter * | sort name | select Name

您应该会看到不同用户组的列表。请记住,其中许多组已内置到 Active Directory 中,因此您可能需要进行一些搜索才能找到您的组。一旦您确定了您想要的一个或多个组的名称,请继续。

接下来,我们将使用以下命令以及组名来查看该组内的所有成员。

Get-AdGroupMember -identity "Your Group"

下面应列出该组的所有成员的姓名。您可以在任何组上使用它,并且始终可以使用该get-adgroup -filter * | sort name | select Name命令列出所有组。

如何使用 PowerShell 导出 AD 组成员

 

在这里您还可以看到每个用户的 SID、可分辨名称、对象类、GUID 和 SAM 帐户名。

如果您不需要这些附加信息,您可以使用以下命令来过滤您的结果并只输出它们的名称:

Get-AdGroupMember -identity "Your Group" | select name

从 PowerShell 将 AD 组成员导出到 CSV

您可能希望将其转换为 CSV 格式以对其进行清理、将其存储在服务器上或通过电子邮件发送给其他员工。要将结果保存为 CSV,请使用以下命令:

Get-AdGroupMember -identity "Your Group" | select name | Export-csv -path C:\groupmembers.csv -NoTypeInformation

 

如何使用 PowerShell 导出 AD 组成员

上述命令从“您的组”AD 组中获取成员,并将这些成员导出到位于 C 驱动器根目录下的名为 groupmembers.csv 的 CSV 文件中。

其他有用的命令

要在更大的 Active Directory 环境中进一步过滤,您可以使用额外的过滤器来查找可能放错位置或未放入正确组中的某些类型的帐户。例如,具有不在传统管理员组中的管理权限的帐户。

下面的命令使用 GroupCategory 参数来限制仅作为安全组返回的组类型。这对于您可能无法 100% 确定要在哪个组中寻找成员的较大环境很有用。

Get-ADGroup -Filter 'GroupCategory -eq "Security"'

如果您有嵌套组,您可能会发现结果显示的是嵌套组,而不是这些组内的成员。要解决此问题,我们需要添加-recursive参数以枚举所有成员并将它们添加到列表中。

你的命令看起来像:

Get-ADGroupMember -identity “Your Group” -recursive | select name | Export-csv -path C:\groupmembers.csv -NoTypeInformation

最后一个有用的提示是,如果您保存这些命令,您始终可以创建一个 PowerShell 脚本以从计划任务运行,以每月、每季度或任何您需要的方式自动运行。您甚至可以将导出路径设置为其他人也可以访问 CSV 的网络驱动器。

结论

如果您知道如何使用 PowerShell,那么它是一个出色的工具,有时它是完成这项工作的唯一工具。如果您了解 PowerShell,您可以比单独通过 GUI 更快地完成 AD 中的任务。

或者,可以在 AD 中管理用户的一个很棒的免费工具是 SolarWinds 的 Admin Bundle。这个方便的工具可以构建网络地图,帮助管理非活动帐户,并生成简单的报告,就像我们在 PowerShell 中所做的一样

本文由 @卤豆干 发布于弱电智能网 。

题图来自Unsplash,基于CC0协议

内容观点仅代表作者本人,弱电智能网平台仅提供信息存储空间服务。

如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

文章名称:《如何使用 PowerShell 导出 AD 组成员》

文章链接:https://www.ruodian360.com/tech/sytemops/38522.html

添加微信ydian188免费入群,记得备注“弱电智能网”。

给TA打赏
共{{data.count}}人
人已打赏
系统运维

怎么配置AD域密码策略?

2022-12-18 2:03:56

系统运维

如何在Linux中查找一个文件?

2022-12-18 4:38:40

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
搜索