积极答复者
如何实现根据组织架构(OU架构)清理安全组内成员(powershell)

问题
答案
-
你好,
谢谢你的提问。
你可以使用以下powershell脚本来实现你的需求。
$groupname="test" $oupath= "ou=test,dc=lee,dc=com" $users=Get-ADUser -Filter * -SearchBase $oupath foreach($usera in $users) { Add-ADGroupMember -Identity $groupname -Members $usera.SamAccountName } $groupusers=Get-ADGroupMember -Identity $groupname foreach($userb in $groupusers) { $userOU = ($userb.DistinguishedName -split ",",2)[1] if($userOU -ne $oupath) { Remove-ADGroupMember -Identity $groupname -Members $userb.SamAccountName -Confirm:$false} }
这个脚本你需要注意的是将第一行的$groupname等号后面的改为实际的组的samaccountname,第二行改为ou的DN地址。并且使用管理员身份打开PowerShell身份运行这个脚本。
工作顺利!
Lee
Just do it.
- 已标记为答案 xi丶xi 2019年6月28日 13:04
全部回复
-
你好,
谢谢你的提问。
你可以使用以下powershell脚本来实现你的需求。
$groupname="test" $oupath= "ou=test,dc=lee,dc=com" $users=Get-ADUser -Filter * -SearchBase $oupath foreach($usera in $users) { Add-ADGroupMember -Identity $groupname -Members $usera.SamAccountName } $groupusers=Get-ADGroupMember -Identity $groupname foreach($userb in $groupusers) { $userOU = ($userb.DistinguishedName -split ",",2)[1] if($userOU -ne $oupath) { Remove-ADGroupMember -Identity $groupname -Members $userb.SamAccountName -Confirm:$false} }
这个脚本你需要注意的是将第一行的$groupname等号后面的改为实际的组的samaccountname,第二行改为ou的DN地址。并且使用管理员身份打开PowerShell身份运行这个脚本。
工作顺利!
Lee
Just do it.
- 已标记为答案 xi丶xi 2019年6月28日 13:04