Удаляем письма с определенным контентом из почтового ящика MS Exchange 2010. PowerShell

Сегодня мы научимся удалять нежелательные письма из почтовых ящиков пользователей, удалять предварительно куда-нибудь их забэкапив. Ведь что есть за админ без бэкапа? А смысл задачи прост. Предположим, что ваш шеф активно якшается с любовницей и вот заговор раскрывается и кто должен спасти босса если не вы… Слава богу есть великий PowerShell, который поможет и вам сохранить свою голову в целости и сохранности и его достоинства на месте.

В самом простом виде, наша задача будет решаться так:

1. Регистрируем снапин Search-Mailbox:
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010
Проверяем что он успешно добавился
Get-PSSnapin -Registered
2.  Добавляем нам необходимый уровень работы с установленным командлетом:
New-ManagementRoleAssignment -Role «Mailbox Import Export» -User LittleAdmin
3. После этого формируем наш запрос:
Search-Mailbox -Identity BigBoss -SearchQuery ‘секс OR вечером OR свидание’ -TargetMailbox «MariaIvanovna» -Target Folder «SpamAssassinReport» -DeleteContent
(мы прошлись по почтовому ящику BigBoss, прошерстили его на предмет слов секс, вечером и свидание, все найденное, включая письма, файлы, календарные заметки забросили в почтовый ящик пользователя MariaIvanovna в папку SpamAssassinReport и удалили контент из целевого ящика)

Задача решена, идем играть в кваку.

Да! Также существует очень полезный ключ -EstimateResultOnly, который позволяет посчитать количество элементов, попадающих в поисковый запрос, но ничего не удаляет, о нем тоже стоит помнить.

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

Дополнительные ссылки для изучения:
Search-Mailbox
http://technet.microsoft.com/en-us/library/dd298173%28v=exchg.141%29.aspx

Advanced Query Syntax
http://msdn.microsoft.com/en-us/library/aa965711%28v=vs.85%29.aspx

Delete All Calendar Entries In An Exchange 2010 Mailbox
http://www.howexchangeworks.com/2012/11/delete-all-calendar-entries-in-an-exchange-2010-mailbox.html