【发布时间】:2017-07-23 09:39:43
【问题描述】:
我想制作一个 powershell 脚本来提取 AD 组并将成员添加到特定邮箱。在那个组中有一个我不想提取的组(doNotExtract)。这就是我目前所拥有的:
Import-Module ActiveDirectory
$csv = @"
Mailbox,GroupName
Mailbox1,Group1
"@ | ConvertFrom-Csv
$ExcludedUsers = Get-ADGroupMember -Identity "doNotExtract" -Recursive | Select-Object -ExpandProperty SamAccountName
$csv | ForEach-Object {
$mailbox = $_.Mailbox
Get-ADGroupMember -Identity $_.GroupName -Recursive |
Where-Object { ($ExcludedUsers -notcontains $_.SamAccountName) -and ($_.objectclass -eq 'user') } |
ForEach-Object {
Add-MailboxPermission -Identity $mailbox -User $_.SamAccountName -AccessRights FullAccess -InheritanceType All
}
}
在 AD 组中有以下对象:
doNotExtract
User1
User2
然后我在 Exchange 管理 shell 中启动脚本。但随后它只添加了 User1,而 User2 没有在 Mailbox1 上获得完全访问权限。
我在脚本中找不到问题...
【问题讨论】:
-
显然 user2 在 donotextract 组中?
-
不,user2直接在Group1中
-
以及在组 donotextract 中
-
嗯,有时我应该休息一下,然后再看一遍:3 正如您所说的“User2”在“doNotExtract”组中。谢谢!
标签: powershell active-directory exchange-management-shell