从 PowerShell 中的组中删除用户
本文将讨论从活动目录组中删除用户并使用 PowerShell 讨论命令的参数。
从 PowerShell 中的组中删除用户
一旦用户离开组或组织,从本地或活动目录组中删除用户是一项常见要求。然而,手动移除它们可能很耗时,而且在批量移除的情况下,它非常困难并且需要高度集中。
尽管如此,PowerShell 中有一些命令可以从本地和 AD 组中删除用户。
在 PowerShell 中,特定的本机命令会从组中删除用户。该 cmdlet 称为 Remove-ADGroupMember
。
该命令的基本语法如下。
Remove-ADGroupMember [-WhatIf] [-Confirm] [-AuthType] [-Credential <PSCredential>] [-Identity] <ADGroup> [-Members] <ADPrincipal[]> [-Partition <String>] [-PassThru] [-Server <String>] [-DisablePermissiveModify] [<CommonParameters>]
Remove-ADGroupMember
使用 rlgm
别名。如你所见,该命令包含并接受许多参数,因此让我们一一讨论。
PowerShell 中 Remove-ADGroupMember
的命令参数
-
-Confirm
此参数在继续执行之前询问客户端确认。参数的数据类型是
switch
。它的别名是
cf
。False
是默认值。该参数不承认管道输入,并且不允许使用通配符。 -
-WhatIf
此参数让用户知道此 cmdlet 是否运行。参数的数据类型为
switch
,参数别名为wi
,该参数的默认值为False
,不接受管道输入,不允许使用通配符。
-
-Authtype
此参数暗示从 AD 组中删除项目的身份验证。可以协商(
0
)或基本(1
)。默认情况下,使用协商。基本策略需要设置 SSL 关联。
该参数的默认信息类型为
ADAuthType
。默认值为无
。此参数不确认管道输入,并且不允许使用通配符。
-
-Credential
此参数指示脚本将在其下运行 cmdlet 的凭据。默认情况下,首先考虑当前用户的个人资料。
如果从驱动器运行命令,则使用驱动器的帐户。此参数的默认数据类型是
PSCredential
。None
是默认值。该参数不承认管道输入,并且不允许使用通配符。 -
-DisablePermissiveModify
此参数可防止系统在将现有用户添加到组时引发错误。该参数的默认数据类型是
switch
。默认值为
false
。该参数不接受管道输入,也不允许使用通配符。 -
-Members
此参数可以是需要从 Active Directory 组中删除的一组用户、组或对象。参数可以取以下值; DN、安全标识符、SAM 帐户名称和 GUID。
该参数的数据类型是
ADPrincipal[]
。None
是参数的默认值。
该参数不接受管道输入,也不允许使用通配符。
-
-Partition
此参数表示 Active Directory 分区的可分辨名称。在 Active Directory 中,在下列情况之一下设置默认值。
在标识的情况下,为参数分配一个 DN,然后直接从 DN 生成分区名称。假设 cmdlet 从 AD 驱动器运行。
分区的值来自驱动器的当前路径。如果以上两种情况中的任何一种都不匹配,则将目标域值用作分区值。
数据类型是
字符串
。无
是默认值。该参数不接受管道输入,也不允许使用通配符。 -
-Passthru
此参数不会生成任何输出。它通常返回我们试图删除的项目的对象。
数据类型是
switch
。无
是默认值。该参数不接受管道输入,也不允许使用通配符。下面是
Removed-ADGroupMember
的示例代码。Write-Host "Removing users from an AD group." Import-Csv "C:\temp\test_users.csv" | ForEach-Object { $identity = $_.Identity $user = $_.Member Remove-ADGroupMember -Identity $identity -Members $user Write-Host "User $user successfully removed from the AD group" }
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn