使用PowerShell的Active Directory组管理

时间:2020-01-09 10:46:10  来源:igfitidea点击:

在本文中,我们将研究用于管理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}