Я ищу способ эффективного и действенного удаления всех собраний, которые прекращенный пользователь мог создать во время своего пребывания в должности.
В настоящее время наша группа должна предоставить доступ администратора к почтовому ящику пользователя, создать профиль в качестве этого пользователя, загрузить Outlook и начать очистку повторяющихся встреч и резервирований комнат.
Я надеюсь, что есть гораздо более простой способ, возможно, PowerShell, который может выполнить эту задачу.
Вы не можете сделать это только с помощью командной консоли Exchange, для этого вам придется реализовать клиент веб-служб Exchange.
Более простым вариантом, чем создание нового профиля и использование Outlook, определенно будет использование Outlook Web App:
Теперь оператор может переключаться на календарь пользователя и редактировать встречи без необходимости создавать новый профиль и запускать Outlook.
Как предложил "jack" в своем сообщении, вы можете искать эти элементы с помощью команды оболочки Exchange.
Поиск-Почтовый ящик, а затем удалите их.
Вы указываете TargetMailbox и TargetFolder, куда будут скопированы элементы, найденные при каждом поиске. Вы также можете выбрать «-LogLevel full -LogOnly» и получить только CSV-файл с скопированными туда результатами.
Вы указываете свой поисковый запрос с помощью Поисковый запрос paramter, и получить это право может быть немного сложно, потому что свойства поиска (например, тема, от, дата) должны быть указаны на вашем языке / локали. Итак, в английской системе SearchQuery для элементов календаря может выглядеть так:
'Kind:meetings AND From:*name* AND Subject:Pizza'
«И» или «ИЛИ» не зависят от локали, и вы также можете использовать круглые скобки. Я никогда не находил переводов этих ключевых слов от Microsoft, может быть, кто-то знает, где их найти.
Убедившись, что SearchQuery соответствует вашему желанию, вы можете добавить -DeleteContent чтобы удалить эти элементы. Полная команда может выглядеть так:
Search-Mailbox *name* -SearchQuery 'Kind:meetings AND From:*name2* AND Subject:Pizza' -TargetMailbox admin -TargetFolder ExchangeSearches -LogLevel full
Используйте управляемый API EWS для доступа к содержимому почтового ящика пользователя и удаления необходимых элементов. Может быть реализован на любом языке .Net или в сценарии PowerShell.
get-mailbox -Filter {recipientTypeDetails -eq "roomMailbox"}|Search-Mailbox -SearchQuery 'From:user and kind:meetings' -DeleteContent