4

我开始了解powershell。但话又说回来,也许不是!有人可以告诉我如何列出 OU 中的所有安全组吗?

我可以列出组内的所有成员,例如:

get-adgroupmember "groupName" | select-object name

在下文中,我试图列出一个 OU 中的所有安全组:

Import-Module ActiveDirectory
Get-ADOrganizationalUnit -Identity 'ou=OUName'

ERROR: Cannot find object with identity: ......

我想从特定 OU 中的所有安全组中删除所有成员。然后我想从文本文件中添加组成员。

4

2 回答 2

4

Get-ADOrganizationalUnit

以下是您应该如何使用 -Identity (来自上述文档底部的示例):

Get-ADOrganizationalUnit -Identity 'OU=AsiaPacific,OU=Sales,OU=UserAccounts,DC=FABRIKAM,DC=COM'

所以我怀疑你的 'ou=OUName' 最后需要相关的 DC=domain,DC=com 信息。

要删除用户,我会这样做:

Get-ADGroup -SearchBase "OU=AsiaPacific,OU=Sales,OU=UserAccounts,DC=FABRIKAM,DC=COM" -filter {GroupCategory -eq "Security"} | Get-ADGroupMember | Remove-ADGroupMember -WhatIf

如果您满意,请将 -WhatIf 替换为 -Confirm:$false,这可以满足您的需要。

于 2013-11-08T15:00:36.083 回答
3

如果要检索特定 OU 中的所有组。我会使用:

get-adobject -Filter 'ObjectClass -eq "group"' -SearchBase <<Path to OU>>

将返回的对象传递给 Get-ADGroupMember 将为您提供当前成员资格。然后使用 remove-adgroupmember 删除现有成员并使用 add-adgroupmemeber 从 txt 文件中添加名称。

于 2013-11-08T15:20:36.530 回答