Powershell返回邮箱的MFA状态

时间:2018-08-23 17:53:16

标签: powershell office365

正在研究一个简单的Powershell脚本,该脚本将获取所有邮箱及其MFA状态并将其放入Excel工作表中。

由于AD同步,我所有的用户都有一个许可证,但是目前只有几百个用户在O365中拥有邮箱。因此,我想提取一个邮箱列表并返回mfastatus。

这就是我得到的。它没有错误,但是将所有邮箱作为禁用的MFA返回。

Connect-MsolService

$Result=@() 
$mailbox = Get-Mailbox -ResultSize Unlimited -RecipientTypeDetails UserMailbox
$mailbox | ForEach-Object {
$mailbox = $_
    if ($mailbox.StrongAuthenticationRequirements.State -ne $null){
    $mfaStatus = $mailbox.StrongAuthenticationRequirements.State
    }
        else {
            $mfaStatus = "Disabled"}

$Result += New-Object PSObject -property @{ 
        UserName = $mailbox.DisplayName
        UserPrincipalName = $mailbox.UserPrincipalName
        MFAStatus = $mfaStatus
    }
    $Result | Select UserName,UserPrincipalName,MFAStatus |
    Export-CSV "D:\\O365-Users-MFA-Status.csv" -NoTypeInformation -Encoding UTF8
}

0 个答案:

没有答案