0

我正在寻找一个 powershell 交换脚本来删除所有禁用用户对特定 OU 中所有共享邮箱的完全访问权限。

这是我到目前为止得到的

Remove-MailboxPermission -Identity Sharedmailbox -AccessRights Fullaccess -InheritanceType all -user DisabledUser -Confirm:$false | where {$_.UseraccountControl -like "*accountdisabled*"}

它似乎有效,但我不确定最后一段 het 脚本是否会检查“accountdisabled”

然后我创建了一个变量,所以它只会检查一个特定的 OU

$ou = Get-ADUser -SearchBase "OU=Functional Mailboxes,OU=Generalaccounts,DC=DOMAIN,DC=COM" -Filter * foreach ($user in $ou)

Remove-MailboxPermission -Identity "$ou" -AccessRights Fullaccess -InheritanceType all -Confirm:$false | where {$_.UseraccountControl -like "*accountdisabled*"}

该脚本正在检查正确的 OU,但我仍在寻找最后一部分,它将仅自动删除禁用用户的完全访问权限。

有人能给我指路吗?

4

1 回答 1

0

而不是在删除邮箱权限后尝试筛选禁用用户(这Remove-MailboxPermission ... | Where-Object ...似乎是您打算做的 - 除了您编写它的方式,它只是在删除权限检查禁用状态),尝试选择禁用首先是帐户,然后仅将禁用的帐户传递给Remove-MailboxPermission

Get-ADUser -SearchBase ... -filter {Enabled -eq $false} | Remove-Mailbox ...

(替换...为适当的 SearchBase 或参数Remove-Mailbox$_用于您要删除其邮箱权限的 ADUser 的身份。)

于 2016-12-20T14:03:33.983 回答