使用 PowerShell 将全局安全组转换为通用安全组
我们喜欢使用 PowerShell 将全局安全组转换为通用安全组。为什么使用 PowerShell?因为我们要转换一百多个团体。如果我们要使用 Active Directory 用户和计算机 (ADUC) 来完成此操作,则需要花费数小时的时间。在本文中,您将了解如何使用 PowerShell 将全局安全组转换为通用安全组。
Active Directory 组类型
使用 ADUC 在组织中创建新组时,我们有组范围和组类型。
Active Directory 组范围
我们可以选择三个组范围:
域本地组:用于分配访问资源的权限。
-
全局组:用于组织具有相似网络访问要求的用户。
通用组:用于为多个域中的相关资源分配权限。
Active Directory 组类型
有两种组类型:
安全组:用于控制对资源的访问。安全组还可以用作电子邮件通讯组列表。
通讯组:仅可用于电子邮件通讯组列表或简单的管理分组。通讯组不能用于访问控制,因为它们未启用安全性。
现在我们对组范围和组类型有了一些了解,让我们开始转换。
将全局安全组转换为通用安全组
我们将从一个名为数据的组中获取信息。以管理员身份运行 PowerShell。
注意:在 ADUC 中,它被命名为组范围和组类型。在 PowerShell 中,它被命名为组范围和组类别。
PS C:\> Get-AdGroup "Data" | ft Name, GroupScope, GroupCategory
Name GroupScope GroupCategory
---- ---------- -------------
Data Global Distribution将组范围更改为通用,并将组类型更改为安全。之后,我们将检查它是否转换成功。
PS C:\> Get-AdGroup "Data" | Set-ADGroup -GroupScope Universal -GroupCategory Security
PS C:\> Get-AdGroup "Data" | ft Name, GroupScope, GroupCategory
Name GroupScope GroupCategory
---- ---------- -------------
Data Universal Security将 Global Distrubition 组转换为 Universal Security 组进展顺利。如果我们有一百多个组需要从全局安全组转换为通用安全组怎么办?
批量将全局转换为通用安全组
我们有一个名为 Mailbox 的组织单位 (OU),其中包含我们想要转换为通用安全组的所有组。在 AD 中查找专有名称。我们需要将其插入 PowerShell 命令中。
启动 Active Directory 用户和计算机。启用高级功能。
右键单击包含您要转换的组的组织单位。点击属性。
单击属性编辑器选项卡。找到属性distinguishedName 并复制其值。
列出 OU 邮箱中的所有组。
PS C:\> Get-ADGroup -SearchBase "OU=Mailbox,OU=Groups,OU=Company,DC=exoip,DC=local" -filter * | Sort Name | Select-Object Name, GroupScope, GroupCategory
Name GroupScope GroupCategory
---- ---------- -------------
All Staff Global Security
Data Universal Security
Finance Universal Distribution
HR Universal Distribution
IT Admins Global Distribution
Management Universal Distribution
Payroll Team Global Distribution
Payroll Team Leaders Global Distribution
Sales Global Distribution在 C:\ 上创建一个临时文件夹。将输出导出为 CSV 并按名称排序。如果您想发送包含详细信息的列表,这会派上用场。 CSV 的名称将为 Mailbox_Groups.csv。
PS C:\> Get-ADGroup -SearchBase "OU=Mailbox,OU=Groups,OU=Company,DC=exoip,DC=local" -Filter * | Sort Name | Select-Object Name, GroupScope, GroupCategory | Export-Csv -Path "C:\temp\Mailbox_Groups.csv" -NoTypeInformation将 OU 邮箱中的所有组批量转换为组范围通用。之后,检查组范围是否显示为通用。
PS C:\> Get-ADGroup -SearchBase "OU=Mailbox,OU=Groups,OU=Company,DC=exoip,DC=local" -filter * | Set-ADGroup -GroupScope Universal
PS C:\> Get-ADGroup -SearchBase "OU=Mailbox,OU=Groups,OU=Company,DC=exoip,DC=local" -filter * | Sort Name | Select-Object Name, GroupScope, GroupCategory
Name GroupScope GroupCategory
---- ---------- -------------
All Staff Universal Security
Data Universal Security
Finance Universal Distribution
HR Universal Distribution
IT Admins Universal Distribution
Management Universal Distribution
Payroll Team Universal Distribution
Payroll Team Leaders Universal Distribution
Sales Universal Distribution执行相同的操作,但这次将 OU 邮箱中的所有组批量转换为组类型安全。完成后,检查组类型是否显示为安全。
PS C:\> Get-ADGroup -SearchBase "OU=Mailbox,OU=Groups,OU=Company,DC=exoip,DC=local" -filter * | Set-ADGroup -GroupCategory Security
PS C:\> Get-ADGroup -SearchBase "OU=Mailbox,OU=Groups,OU=Company,DC=exoip,DC=local" -filter * | Sort Name | Select-Object Name, GroupScope, GroupCategory
Name GroupScope GroupCategory
---- ---------- -------------
All Staff Universal Security
Data Universal Security
Finance Universal Security
HR Universal Security
IT Admins Universal Security
Management Universal Security
Payroll Team Universal Security
Payroll Team Leaders Universal Security
Sales Universal Security
我们可以在一个命令中运行上述两个命令。这会将 OU 中的组批量转换为组范围通用和组类型安全。
PS C:\> Get-ADGroup -SearchBase "OU=Mailbox,OU=Groups,OU=Company,DC=exoip,DC=local" -filter * | Set-ADGroup -GroupScope Universal -GroupCategory Security结论
您学习了如何使用 PowerShell 将全局安全组转换为通用安全组。如果我们使用 PowerShell 转换组,只需几分钟的工作。我们可以只转换一组,也可以批量转换所有组。 Microsoft 确实编写了有关 Active Directory 安全组的文档。您喜欢这篇文章吗?您可能还想阅读 MSExchange ActiveSync 1023 警告。不要忘记关注我们并分享这篇文章。



