Назад | Перейти на главную страницу

Получите журналы отслеживания сообщений

Все,

Мне нужно определить, были ли электронные письма отправлены на внешний адрес с нашего сервера Exchange. К сожалению, конкретного отправителя для таргетинга нет, так как на этот внешний адрес может быть несколько человек.

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

Get-MessageTrackingLog –ResultSize Unlimited | Where -Property Recipients -Like
 “suspectacct@gmail.com” 

или

Get-MessageTrackingLog -Recipients suspectacct@gmail.com

....

Вы, кажется, смешиваете Get-MessageTrackingLog параметры (-Property) с Where-Object командлет. Итак, мы вернем это в Get-MessageTrackingLog часть единственного лайнера (если Recipients - свойство по умолчанию, оно нам совсем не нужно). Тогда мы можем использовать Recipients в Where-Object фильтр.

Сначала подтвердите, что Recipients не является свойством по умолчанию, используйте:

Get-MessageTrackingLog | Get-Member

Если это не так, используйте:

Get-MessageTrackingLog –ResultSize Unlimited -Property Recipients | 
    Where Recipients -Like “suspectacct@gmail.com” 

В противном случае, если это свойство по умолчанию, используйте:

Get-MessageTrackingLog –ResultSize Unlimited | 
    Where Recipients -Like “suspectacct@gmail.com” 

Эта команда получит все журналы отслеживания сообщений и направит их в команду where-object, включая свойство Recipients. В Where-Object будет искать сообщения с получателями, включая "suspectacct@gmail.com".

docs.microsoft справочник по Get-Object.

-ResultSize Unlimited даст вам очень большой набор данных. Настоятельно рекомендую использовать некоторые другие свойства, чтобы ограничить его.

docs.microsoft справочник по Get-MessageTrackingLog

Краткое изложение параметров показывает, что существует параметр, позволяющий указать получателей. Названный -Recipients. Таким образом, вы можете упростить это до:

Get-MessageTrackingLog -ResultSize Unlimited -Recipients "suspectacct@gmail.com*"

Если это сработает, это будет значительно эффективнее по времени и процессору, чем полный дамп, и это именно то, что Get-MessageTrackingLog -ResultSize Unlimited без ограничений дам.

Я обнаружил что Where-Ojbect он же where является одним из самых мощных командлетов в PowerShell, наряду с командлетами импорта / экспорта CSV и Get-Help и Get-Member.