使用PowerShell的Active Directory组管理
在本文中,我们将研究用于管理Active Directory域组的PowerShell函数。我们将了解如何在AD中创建一个新的组,向其中添加用户并删除它们,以显示组用户的列表以及域组的一些其他有用操作,这些操作对日常管理非常有用。以下基本cmdlet可用于管理模块Active Directory for Windows PowerShell中的AD组:
若要使用这些cmdlet,我们必须有一个特殊模块才能与AD- 用于Windows PowerShell的Active Directory模块进行交互。此模块是在Windows Server 2008 R2中引入的。在Windows Server 2012/2012R2/2015中,它在DCs上默认启用。我们可以在客户端计算机(Windows 10、8.1和7)上安装并启用它作为RSAT组件之一。我们可以确保模块是否可用,如下所示:
Get-Module -Listavailable
如我们所见,ActiveDirectory模块已加载。如果没有,请使用以下命令导入:
Import-Module ActiveDirectory
我们可以通过运行以下命令获得模块命令的完整列表:
Get-Command -Module ActiveDirectory
模块中有147个cmdlet可用,其中11个涉及管理AD组。
Get-Command -Module ActiveDirectory -Name "*Group*"
列表如下:
Add-ADGroupMember
Add-ADPrincipalGroupMembership
Get-ADAccountAuthorizationGroup
Get-ADGroup
Get-ADGroupMember
Get-ADPrincipalGroupMembership
New-ADGroup
Remove-ADGroup
Remove-ADGroupMember
Remove-ADPrincipalGroupMembership
Set-ADGroup
新建AD群-创建新AD群
使用 新建ADGroup命令在指定的Active Directory容器(OU)中新建一个组:
New-ADGroup "TestADGroup" -path 'OU=Groups,OU=NY,OU=US,DC=corp,dc=theitroad,DC=com' -GroupScope Global -PassThru –Verbose
使用 Description属性可以设置组描述,使用DisplayName可以更改显示的名称。
GroupScope参数可以设置以下分组类型之一:
0=域本地
1=全局
2=通用
我们可以按如下方式创建通讯组:
New-ADGroup "TestADGroup-Distr" -path 'OU=Groups,OU=NY,OU=US,DC=corp,dc=theitroad,DC=com' -GroupCategory Distribution -GroupScope Global -PassThru –Verbose
添加AdGroupMember–向AD组添加用户
我们可以使用[add-AdGroupMember]cmdlet将用户添加到Active Directory组。向新组添加两个新用户:
Add-AdGroupMember -Identity TestADGroup -Members user1, user2
如果要添加到组中的用户列表非常大,可以将用户帐户列表保存到CSV文件中,然后导入此文件并将每个用户添加到组中。
CSV文件的格式如下(用户必须以users作为列标题在一行中列出)。
Import-CSV .\users.csv -Header users | ForEach-Object {Add-AdGroupMember -Identity ‘TestADGroup’ -members $_.users}