32121111 发表于 2016-11-30 08:38:43

Office 365 在邮件组中查询用户是否存在

#region IsIn 判断某个用户是否在邮件组中
Function IsIn($User, $GroupName){
    if($User -eq "" -or $GroupName -eq ""){
      Write-Warning "参数丢失,正确的格式为 IsIn userName GroupName"
      break
    }
    Write-Host "【Start】 Search $user in ("$GroupName ") group"
    $Result = Get-DistributionGroupMember -ResultSize unlimited $GroupName | where {$_.name -eq $User -or $_.PrimarySmtpAddress -eq $user}
    if($Result -eq $null){
      $SubGroups = Get-DistributionGroupMember -ResultSize unlimited $GroupName | where {($_.RecipientType -eq "MailUniversalDistributionGroup") -or ($_.RecipientType -eq "MailUniversalSecurityGroup")} | select name
      if($SubGroups -ne $null){
            ForEach($SubGroup in $SubGroups){
                IsIn $user $SubGroup.name
            }
      }else{
            Write-Host -fore red "$user is not in group ("$GroupName "),"
            $result=Get-Mailbox -Identity $User -errorAction silentlyContinue
            if($result -eq $null){
                Write-Warning "The email account $user is not exist."
                break
            }
      }
    }
    else{
      Write-Host $User "is found in group" $GroupName -foregroundcolor green
    }
}

#Example
IsIn "用户邮箱" "邮件组名称"


#endregion


页: [1]
查看完整版本: Office 365 在邮件组中查询用户是否存在