Найдите пользователей, которые автоматически пересылают / перенаправляют свою электронную почту в Exchange 2010 с помощью Powershell


8

Мы используем Live @ edu, который по сути является хост-сервером Exchange, с некоторыми дополнительными функциями и ограничениями для обхода, и я пытаюсь найти всех, кто пересылает или перенаправляет электронные письма из своих учетных записей.

Я пытаюсь удалить старые учетные записи, которые не использовались, но у нас есть инструкции для пользователей по перенаправлению электронных писем, поэтому мы должны ожидать, что некоторые пользователи действительно перенаправляют свои электронные письма, что приведет к тому, что их время последнего входа в систему / выхода из системы не будет отражать их действительно, используя правила автоматической переадресации или автоматического перенаправления.

Как найти список пользователей с правилами переадресации или перенаправления с помощью командлетов Exchange 2010 Powershell?

/ РЕДАКТИРОВАТЬ: Для моих целей может быть достаточно выяснить, существуют ли ЛЮБЫЕ правила на стороне сервера, независимо от того, перенаправляет ли правило / перенаправляет или выполняет какое-либо другое действие.

Ответы:


8

Вы имеете в виду, как

get-mailbox -Filter { ForwardingAddress -like '*' } | select-object Name,ForwardingAddress

? Или, скорее, «Правила входящих», которые ваши пользователи создали бы в Outlook или OWA? Последний должен быть хитрее, но трубопровод

$mbox = Get-Mailbox; $mbox | Foreach { Get-InboxRule -Mailbox $_ }

(Райан, спасибо за тестирование и исправление синтаксиса здесь) и выполнение некоторой фильтрации по правилам не-переадресации / перенаправления должны помочь.


4

Мне показались полезными следующие команды PowerShell.

Чтобы найти Форвардные правила:

 foreach ($i in (Get-Mailbox -ResultSize unlimited)) { Get-InboxRule -Mailbox $i.DistinguishedName | where {$_.ForwardTo} | fl MailboxOwnerID,Name,ForwardTo >> d:\Forward_Rule.txt }

Чтобы найти правила перенаправления:

 foreach ($i in (Get-Mailbox -ResultSize unlimited)) { Get-InboxRule -Mailbox $i.DistinguishedName | where {$_.ReDirectTo} | fl MailboxOwnerID,Name,RedirectTo >> d:\Redirect_Rule.txt }

Источник: форумы Microsoft TechNet


3

Спасибо за эти команды.

Вот то, что я в конечном итоге использовал, чтобы найти правила оптовой или прямой переадресации ...

foreach ($i in (Get-Mailbox -ResultSize unlimited)) { Get-InboxRule -Mailbox $i.DistinguishedName | where {$_.RedirectTo -or $_.ForwardTo -and -not ($_.description -match "If the message") } | fl MailboxOwnerId,Description >> rules.txt }

Это чтобы найти учетные записи, которые в основном используют почтовый ящик в качестве ретранслятора для отправки всего на другую учетную запись. Я думал, что это может быть полезно для некоторых.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.