我和这个人有同样的问题: Remove all ex-employees from ALL distribution groups
有很多残疾用户离开公司,需要从所有DL中删除。
已停用的用户位于:uk.domain.int/USR/Disabled Users
DL位于:uk.domain.int/USR/Distribution Lists
@Raymund提供了Powerscript 我对LDAP位不太确定。
在我的情况下,这是不是'我不确定:
LDAP://OU=Disabled Users,OU=USR,DC=uk,DC=Domain,DC=int"
只需要确保PS脚本不会在除uk.domain.int之外的任何其他域上运行,并且仅针对禁用的用户。
请告知
ps:Powershell版本:主要:2 |轻微:0 |建立-1 |修订版-1
答案 0 :(得分:0)
此LDAP过滤器LDAP://OU=Disabled Users,OU=USR,DC=uk,DC=Domain,DC=int"
将查看UK子域,USR OU,已禁用用户OU。
虽然提供的脚本命令可以完成这项工作,但我更倾向于使用exchange management shell commands
+ active directory
powershell模块命令。这只是为了给你一些想法,通过正确的工具编写自己的脚本。
import-module activedirectory
$session = new-pssession -configurationname microsoft.exchange -connectionuri "http://yourcasserver.yourdomian.com/powershell/" -authentication kerberos -credential (get-credential)
import-pssession $session
$users = get-aduser -filter * -searchbase "OU=Disabled Users,OU=USR,DC=uk,DC=Domain,DC=int"
get-distributiongroup
使用Powershell命令的另一个优点是,您可以通过对测试用户和测试DistributionGroup运行int来确保脚本中每个命令的效果。
首先在lab environment
中测试您的脚本是明智的。特别是当你在企业中交易时。