当用户帐户被删除时,如何检查组成员身份?

当用户帐户被删除时,如何检查组成员身份?

我有一个计划任务,当用户帐户从 Active Directory 中删除时,它会执行 PowerShell 脚本。有没有办法检查该用户帐户的组成员身份?我尝试过

 If ((Get-ADUser $user -Properties MemberOf | Select -ExpandProperty MemberOF) -ccontains $groupname)
    {
      //code
    }

但不幸的是,这没有起作用。(原因也是可以理解的)。

我正在考虑使用自定义 xml 文件来创建计划任务,但在这种情况下,我不知道必须查询哪个值。

有任何想法吗?

答案1

删除用户帐户对象后,SID 将从该对象所属的所有组中删除。这就是为什么我个人更喜欢禁用用户帐户而不是删除它们的原因。

但是,如果你启用了Active-Directory 回收站功能,您将能够使用它恢复用户帐户对象和所有组成员身份信息。

有几种方法可以做到这一点。我更喜欢使用 PowerShell。以下是一个例子:

 Get-ADObject -Filter {displayName -eq "Mary"} -IncludeDeletedObjects | Restore-ADObject

如果您想了解有关该主题的更多信息,请查看Active Directory 回收站分步指南

如果您还没有启用该功能,我还建议您启用它。

如果您的备份解决方案支持细粒度的 AD 对象恢复,则第二种选择是依靠您的 Active Directory 备份。

答案2

你什么都不能检查用户帐户被删除,因为 AD 不再有关于它的任何信息;你唯一的选择是检查组成员身份(或你可能需要的任何其他信息)删除用户帐户。

相关内容