Гид по технологиям

Как подключиться к Exchange Online через PowerShell

4 min read IT администрирование Обновлено 12 Dec 2025
Подключение к Exchange Online через PowerShell
Подключение к Exchange Online через PowerShell

Введение

Подключение к Exchange Online через PowerShell

Этот материал описывает два надёжных метода для подключения к Exchange Online с помощью PowerShell: классический (Remote PowerShell) и современный (модуль ExchangeOnlineManagement). Шаги приведены подробно, с диагностикой типичных ошибок и рекомендациями по безопасности.

Предварительные проверки

  • Установлена PowerShell на Windows 7 SP1 или более поздней версии, либо на Windows Server 2008 R2 SP1 и новее.
  • Windows Management Framework (WMF) версии 3.0, 4.0 или 5.1.
  • .NET Framework 4.5 или выше.
  • Стабильное интернет-соединение с открытым TCP-портом 80 (и 443 для HTTPS) от локальной машины до хостов Microsoft 365.
  • У вашей учётной записи включён доступ к Exchange Online PowerShell.

Важно: современные рекомендации Microsoft — использовать модуль ExchangeOnlineManagement вместо классического Remote PowerShell, особенно если включена многофакторная аутентификация (MFA).

1. Классический способ подключения (Remote PowerShell)

  1. Нажмите клавишу Windows, введите PowerShell, затем выберите «Запуск от имени администратора». Открыть PowerShell от имени администратора
  2. Установите политику выполнения скриптов, если требуется:
Set-ExecutionPolicy RemoteSigned
  1. Подтвердите, введя Y, когда будет предложено.
  2. Получите учётные данные в переменную:
$UserCredential = Get-Credential

Откроется окно для ввода имени пользователя и пароля.

  1. Создайте сеанс и импортируйте командлеты Exchange (в одну строчку или по частям):
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session
  1. После импорта вы можете выполнять командлеты, например:
Get-Mailbox -Filter '(RecipientTypeDetails -eq "RoomMailBox")'

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

2. Современный способ — модуль ExchangeOnlineManagement

Установка модуля

  1. Запустите PowerShell от имени администратора. Открыть PowerShell от имени администратора
  2. Проверьте, установлен ли модуль:
Get-Module -ListAvailable -Name ExchangeOnlineManagement

Проверка наличия модуля ExchangeOnlineManagement

  1. Если модуль отсутствует, установите его:
Install-Module -Name ExchangeOnlineManagement -Force

Установка модуля ExchangeOnlineManagement

  1. При необходимости обновите модуль:
Update-Module ExchangeOnlineManagement

Подключение к Exchange Online

  1. Подключитесь с помощью современного командлета:
Connect-ExchangeOnline

Окно аутентификации Connect-ExchangeOnline

  1. Введите свои учётные данные в появившемся окне. Если в вашей учётной записи включена MFA, вас попросят пройти дополнительную проверку.

Совет: можно явно указать параметры, например имя пользователя или роль подключения: Connect-ExchangeOnline -UserPrincipalName admin@contoso.com.

Завершение сеанса

Для корректного выхода из сессии выполните:

Disconnect-ExchangeOnline -Confirm:$False

Команда Disconnect-ExchangeOnline

Быстрый набор команд (cheat sheet)

  • Установка модуля: Install-Module -Name ExchangeOnlineManagement -Force
  • Подключение: Connect-ExchangeOnline
  • Отправка команд в классическом режиме: Import-PSSession $Session
  • Проверка почтовых ящиков: Get-Mailbox
  • Отключение: Disconnect-ExchangeOnline -Confirm:$False

Распространённые ошибки и способы их устранения

  • Ошибка аутентификации при использовании классического метода: проверьте, не отключена ли базовая аутентификация или включена ли политика Conditional Access. Решение: используйте модуль ExchangeOnlineManagement с поддержкой MFA.
  • Командлеты не доступны после Import-PSSession: убедитесь, что сессия успешно создана, и проверьте сетевые правила (порты, прокси, TLS).
  • Появляются ошибки TLS/SSL: обновите .NET Framework и Windows Management Framework, включите поддержку TLS 1.2.
  • Проблемы с установкой модуля: запустите PowerShell от администратора и проверьте политику выполнения (Get-ExecutionPolicy).

Важно: никогда не храните учётные данные в открытом виде в скриптах. Используйте защищённые хранилища или модуль для автоматического аутентифицированного доступа.

Роли и чек-листы при подключении (кто за что отвечает)

  • Администратор Microsoft 365:
    • Проверяет и предоставляет доступ к Exchange Online PowerShell.
    • Настраивает политики безопасности и MFA.
    • Устанавливает и обновляет модули.
  • IT‑специалист/оператор поддержки:
    • Выполняет подключение и базовую диагностику.
    • Выполняет управление почтовыми ящиками по просьбе администратора.
  • Разработчик/автоматизатор:
    • Интегрирует скрипты с защищёнными механиками аутентификации (Managed Identity, сервисные учётные записи с ограничениями).

Когда этот подход не сработает и альтернативы

  • Если организация полностью запретила удалённые PowerShell-сессии и базовую аутентификацию — используйте REST‑API Microsoft Graph для управления почтовыми ящиками и политиками.
  • Для автоматизации сценариев без интерактивной аутентификации рассмотрите приложение Azure AD с правами приложения и использование Microsoft Graph.

Безопасность и лучшие практики

  • Включите MFA для учётных записей с правами администратора.
  • Используйте минимально необходимые привилегии для учётных записей, выполняющих задачи.
  • Регулярно обновляйте модуль ExchangeOnlineManagement.
  • Логи и аудит: отслеживайте подключение через журнал аудита Microsoft 365.

Краткая методология быстрой проверки перед подключением

  1. Проверить версию PowerShell и WMF.
  2. Проверить сетевое соединение и доступ к outlook.office365.com.
  3. Проверить права учётной записи и требование MFA.
  4. Установить/обновить модуль ExchangeOnlineManagement.
  5. Подключиться и выполнить тестовую команду Get-Mailbox -ResultSize 1.
  6. Отключиться корректно.

Однострочные определения (глоссарий)

  • PowerShell: оболочка командной строки и язык сценариев от Microsoft.
  • Exchange Online: служба электронной почты в составе Microsoft 365.
  • MFA: многофакторная аутентификация — дополнительный уровень безопасности.
  • Connect-ExchangeOnline: командлет модуля ExchangeOnlineManagement для подключения к Exchange Online.

Критерии приёмки

  • Установлен и/или обновлён модуль ExchangeOnlineManagement.
  • Успешное выполнение Connect-ExchangeOnline без ошибок.
  • Выполнение тестовой команды возвращает ожидаемый результат.
  • Сессия корректно завершена с помощью Disconnect-ExchangeOnline.

Резюме

  • Используйте модуль ExchangeOnlineManagement и командлет Connect-ExchangeOnline по умолчанию.
  • Для устаревших сценариев поддерживается классический Remote PowerShell, но он имеет ограничения по безопасности.
  • Всегда следуйте принципам наименьших привилегий и включайте MFA.

Спасибо за чтение. Если у вас остались вопросы — опишите сценарий и ошибки, и мы поможем с диагностикой.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как отписаться от каналов YouTube — быстро и правильно
Руководство

Как отписаться от каналов YouTube — быстро и правильно

Удалить плейлист на YouTube — быстро
How-to

Удалить плейлист на YouTube — быстро

Как посмотреть текст песни в YouTube Music
Музыка

Как посмотреть текст песни в YouTube Music

Как смотреть падение шара Times Square 2023
Развлечения

Как смотреть падение шара Times Square 2023

Удалить Google Drive с Mac — полное руководство
Mac

Удалить Google Drive с Mac — полное руководство

Сохранить страницу офлайн в Brave
Браузеры

Сохранить страницу офлайн в Brave