Exchange Powershell 循环分发列表

Exchange Powershell Loop Distribution List

我有这个 Gets-DistributionGroupMembers 和/或更新会员政策的 Powershell 脚本。

$DL = Get-DistributionGroupMember "Distribution List GroupName"
ForEach ($Member in $DL) { Set-CASMailbox -Identity $Member.Name -OwaMailboxPolicy "Allow Download Access" } 

以上代码运行正常。

我的问题是:

  1. 如何判断$Member.Name是个人账户还是群组

  2. IF是一个组,那么如何递归调用同一个Action Script

提前致谢。

未经测试,但我认为您可以通过检查 RecipientTypeDetails 属性.

来确定该成员是否是一个组

类似于:

function Set-DistributionGroupPolicy([string] $group) {
    Get-DistributionGroupMember $group -ResultSize Unlimited | ForEach-Object {
        if ($_.RecipientTypeDetails -match "Group") {
            Write-Verbose "Recursing on group '$($_.Name)'"      
            Set-DistributionGroupPolicy $_.Name
        }
        Set-CASMailbox -Identity $_.Name -OwaMailboxPolicy "Allow Download Access"
    }
}

Set-DistributionGroupPolicy