none
查询邮箱用户中域账号被禁用的邮箱用户 RRS feed

  • 问题

  • 由于很多用户离职域账号被禁用,但是邮箱继续保留,如果利用exchange powershell命令查询某个数据库中哪些邮箱用户的域账号是被禁用的?

    比如DB01中,有1000多用户邮箱账号(包括域账号是激活的和禁用的),需要查出哪些用户邮箱的域账号是被禁用的



    • 已编辑 MSTEO 2020年3月12日 7:29
    2020年3月12日 5:49

全部回复

  • 您好,

    您可以运行以下命令得到状态为disabled的邮箱名和禁用日期:

    Get-MailboxDatabase DB01 | Get-MailboxStatistics | Where { $_.DisconnectReason -eq “Disabled” } | ft DisplayName,DisconnectDate

    参考链接:http://msexchangeguru.com/2016/03/30/disconnected-mailboxes/

    请注意:由于该网站不是由Microsoft托管的,因此链接可能会更改,恕不另行通知。 Microsoft不保证此信息的准确性。

    Regards,

    Eric Yin


    Please remember to mark the replies as answers if they helped. If you have feedback for TechNet Subscriber Support, contact tnsf@microsoft.com.

    2020年3月12日 7:59
  • 邮箱没有禁用的,邮箱账号还在的,是禁用了域账号,需要查某个DB上禁用了域账号但是邮箱账号还存在的有那些人?
    2020年3月12日 8:40
  • 您好,

    抱歉之前没有看清您的要求。

    您可以通过运行以下脚本来得到包含此类邮箱名字的csv文件:

    $Mailboxes = Get-Mailbox -database db01 | where {$_.RecipientTypeDetails -eq "UserMailbox"}
    $Disabled = @()
    
    Foreach ($Mailbox in $Mailboxes) {
        if((Get-ADUser $Mailbox.Name).Enabled -eq $False){
            $Disabled += Get-MailboxStatistics $Mailbox.Name | Select DisplayName
        }    
    }
    $Disabled | Export-Csv c:/temp/DisabledList.csv -NoTypeInformation


    此致,

    Eric Yin


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.


    2020年3月12日 8:58
  • 这个命令不能用啊,搜出来的值为空的
    2020年3月13日 4:31
  • 您好,

    请再次确认:您指的是在ADUC中被禁用,但ECP中仍然存在账号的邮箱吗?

    我手动创建了几个这样的邮箱,都是可以显示在CSV文件中的。

    您可以先试下不加"-DB01",是否能得到结果?

    此致,

    Eric Yin


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.

    2020年3月16日 8:54
  • 您好,

    请问您的问题有最新进展吗?如果您对此问题有任何疑问或需要进一步的帮助,请随时回复。

    此致,

    Eric Yin


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.

    2020年3月19日 8:16
  • 试过了,需要改成以下才可以用:

    $Mailboxes = Get-Mailbox -database db02 | where {$_.RecipientTypeDetails -eq "UserMailbox"}
    $Disabled = @()
    Foreach ($Mailbox in $Mailboxes) {
        if((Get-ADUser $Mailbox.Alias).Enabled -eq $false){
            $Disabled += Get-MailboxStatistics $Mailbox.Alias | Select DisplayName
        }    
    }
    $Disabled | Export-Csv -encoding default -notypeinformation c:/AA/DisabledList.csv

    另外请问,如果需要导出的结果有displayname,PrimarySmtpAddress 应该怎么写呢?我在select后面加上PrimarySmtpAddress 导出的值为空的,请看以下截图:

    2020年4月7日 3:42
  • 您好,

    Get-MailboxStatistics并不包含primaryaddress属性,如果您需要增加该属性,需要脚本在脚本中添加用Get-mailbox得到primaryaddress, displayname应该是能正常导出的

    此致,

    Eric Yin


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.

    2020年4月10日 9:17
  • 您好,

    请您尝试将含有“$Disabled +=...”的一行改成

    $Disabled += Get-MailboxStatistics $Mailbox.Alias | Select-Object DisplayName, @{Name="Primaryaddress";Expression={(Get-Mailbox $Mailbox).PrimarySMTPaddress}}

    Regards,

    Eric Yin


    Please remember to mark the replies as answers if they helped. If you have feedback for TechNet Subscriber Support, contact tnsf@microsoft.com.

    2020年4月13日 9:21