Использование Exchange Online PowerShell для отображения сведений о почтовом ящике Microsoft 365 или Office 365

Важно!

Ознакомьтесь с новым Центром администрирования Exchange! Это современный, интеллектуальный, доступный и улучшенный интерфейс. Персонализируйте панель мониторинга, управляйте миграцией между клиентами, запустите улучшенную функцию "Группы" и многое другое. Попробуйте прямо сейчас!

Администраторы могут узнать, как использовать Exchange Online PowerShell для отображения сведений о почтовых ящиках в microsoft 365 или Office 365 организации.

Чтобы получить представление о некоторых способах, которые можно сделать с помощью PowerShell в Microsoft 365 и Office 365, давайте рассмотрим почтовые ящики пользователей в Exchange Online PowerShell.

Перед началом работы

Сведения о том, как подключиться к Exchange Online PowerShell, см. в статье Подключение к Exchange Online PowerShell.

Отображение данных почтовых ящиков с помощью Exchange Online PowerShell

Вы можете легко получить сведения о почтовом ящике одного пользователя. Например, ниже приведена команда, которая возвращает некоторые сведения о почтовом ящике пользователя Ken Myer.

Get-Mailbox -Identity "Ken Myer"

Эта команда возвращает приблизительно следующие данные:

Name      Alias       ServerName      ProhibitSendQuota
----      -----       ----------      -----------------
kenmyer   kenmyer     bn1pr02mb038    49.5 GB (53,150,220,288 bytes)

Можно получить данные, такие как псевдоним пользователя и квота для размера почтового ящика. Однако с почтовым ящиком Exchange Online связано намного больше сведений, чем четыре свойства, которые возвращает командлет Get-Mailbox.

Вот пример команды, которая отображает все сведения об определенном почтовом ящике.

Get-Mailbox -Identity "Ken Myer" | Format-List

Команда дает среде Exchange Online PowerShell указание вернуть все доступные свойства почтового ящика в списке. Существует около 200 различных свойств и их значений. Вы также можете использовать командлеты Format-List и Format-Table, чтобы возвращались только значения определенных свойств. Например, с помощью этой команды вы можете просмотреть свойства, связанные с хранением для судебного разбирательства, для пользователя Ken Myer:

Get-Mailbox -Identity "Ken Myer" | Format-List DisplayName, LitigationHoldEnabled, LitigationHoldDate, LitigationHoldOwner, LitigationHoldDuration

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

Get-Mailbox -Identity "Ken Myer" | Format-List DisplayName, Lit*

Эта команда указывает Команде Get-Mailbox получить значение свойства DisplayName Ken, а также значения любых свойств с именами, начинающимися с букв lit. Ниже показаны результаты выполнения этой команды.

DisplayName            : Ken Myer
LitigationHoldEnabled  : False
LitigationHoldDate     :
LitigationHoldOwner    :
LitigationHoldDuration : Unlimited

Вы можете вернуть сведения о нескольких почтовых ящиках, оставив параметр Identity . В следующем примере возвращаются свойства DisplayName и LitigationHoldEnabled всех почтовых ящиков:

Get-Mailbox -ResultSize unlimited | Format-Table DisplayName, LitigationHoldEnabled -Auto

Во многих случаях требуется просматривать только некоторые из почтовых ящиков. Предположим, что вам требуется составить список всех почтовых ящиков, которым назначено хранение для судебного разбирательства. Для этого вы можете использовать командлет Where-Object в сочетании с командлетом Get-Mailbox. Для командлета Where-Object требуется выражение фильтра, чтобы сообщить среде Exchange Online PowerShell необходимый набор почтовых ящиков.

В простейшей форме фразы фильтра используют синтаксис "<PropertyName> -<ComparisonOperator> <PropertyValue>".

Ниже перечислены некоторые из часто используемых операторов сравнения.

  • eq (равно, без учета регистра)

  • ne (не равно, без учета регистра)

  • gt (больше)

  • lt (меньше)

Полный список операторов сравнения см. в статье Where-Object.

Значения для <PropertyValue> зависят от свойства и могут быть такими значениями, как строки, числа, логические значения ( $True или $False), или без значения ( $Null). Текстовые значения с пробелами требуют кавычек вокруг значения. Числовые значения, логические значения и $Null не требуют кавычек вокруг значения.

Возвращаясь к нашему примеру всех почтовых ящиков, которым назначено удержание в судебном порядке, фраза фильтра будет "LitigationHoldEnabled -eq $True":

  • Имя свойства — LitigationHoldEnabled.

  • Оператор сравнения — eq.

  • Значение свойства, которое мы ищем, — .$True

После добавления выражения фильтра можно создать часть команды Where-Object, используя указанный ниже синтаксис.

Get-Mailbox -ResultSize unlimited | Where-Object {$_.<Filter Phrase>}

Вот команда для нашего примера:

Get-Mailbox -ResultSize unlimited | Where-Object {$_.LitigationHoldEnabled -eq $True}

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

Get-Mailbox -ResultSize unlimited | Get-MailboxJunkEmailConfiguration | Where-Object {$_.Enabled -eq $False}

Это лишь один пример. Если вы хотите отобразить набор почтовых ящиков на основе параметра и не можете отфильтровать этот параметр в Центр администрирования Microsoft 365, сделайте следующее:

  1. Найдите свойство почтового ящика, соответствующее интересующему вас параметру, выполнив команду Get-Mailbox -Identity "<MailboxIdentity" | Select-Object * , чтобы получить список всех свойств почтового ящика. <MailboxIdentity> — это любой уникальный идентификатор почтового ящика (имя, адрес электронной почты, псевдоним и т. д.).

  2. Создайте команду PowerShell Office 365 следующим образом:Get-Mailbox -ResultSize unlimited | Where-Object {$_.<PropertyName> -<ComparisonOperator> <PropertyValue>}