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

Модуль Exchange Online PowerShell использует современную проверку подлинности и работает с многофакторной проверкой подлинности (MFA) для подключения ко всем средам PowerShell, связанным с Exchange, в Microsoft 365: Exchange Online PowerShell, PowerShell для обеспечения безопасности & и автономной Exchange Online Protection (EOP) PowerShell. Дополнительные сведения о модуле Exchange Online PowerShell см. в Exchange Online powerShell.

Примечание

Версия 2.0.5 и более ранние называется модулем Exchange Online PowerShell версии 2 (сокращенно как модуль EXO V2). Версия 3.0.0 и более поздние версии называется модулем Exchange Online PowerShell версии 3 (сокращенно как модуль EXO V3).

В этой статье содержатся инструкции по подключению к Exchange Online PowerShell с помощью Exchange Online PowerShell с MFA или без нее.

Сведения о подключении к Exchange Online PowerShell для автоматизации см. в разделе "Проверка подлинности только для приложений" для автоматических сценариев.

Чтобы использовать инструкции по менее безопасному устаревшему удаленному подключению PowerShell, которое станет нерекомендуемым, см. статью Обычная проверка подлинности: подключение к Exchange Online PowerShell.

Чтобы использовать устаревший модуль Exchange Online PowerShell для удаленного подключения к Exchange Online PowerShell с помощью MFA, см. статью Модуль V1: подключение к Exchange Online PowerShell с помощью MFA. Обратите внимание, что поддержка данной устаревшей версии модуля в дальнейшем будет прекращена.

Что нужно знать перед началом работы

  • Требования к установке и использованию модуля описаны в разделе "Установка и обслуживание Exchange Online PowerShell".

    Примечание

    Если вы используете модуль EXO V3 (версии 3.0.0 или 2.0.6-PreviewX) и не используете параметр UseRPSSession в команде Connect-ExchangeOnline , у вас будет доступ только к командлетам REST API. Дополнительные сведения см. в Обновления версии 3.0.0 (модуль EXO V3).

  • После подключения управление наличием доступа к командлетам и параметрам осуществляется путем управления доступом на основе ролей (RBAC). Дополнительные сведения см. в статье Разрешения в Exchange Online.

    Сведения о необходимых разрешениях для запуска определенных командлетов Exchange Online см. в статье Поиск разрешений, необходимых для запуска командлета Exchange.

  • Если в вашей организации используется локальная служба Exchange и вас есть лицензии Exchange Enterprise CAL со службами для Exchange Online Protection (EOP), инструкции по подключению EOP PowerShell совпадают с Exchange Online PowerShell, как описано в этой статье.

Совет

Возникают проблемы? Обратитесь на форум по Exchange Online.

Подключение к Exchange Online PowerShell с использованием современной проверки подлинности или без нее

Эти инструкции по подключению используют современную проверку подлинности и работают с многофакторной проверкой подлинности (MFA) или без нее.

Другие методы входа, доступные в PowerShell 7, см. в разделе Возможности входа PowerShell 7 далее в этой статье.

  1. После установки модуля откройте окно PowerShell и загрузите модуль, выполнив следующую команду*:

    Import-Module ExchangeOnlineManagement
    

    * В современных версиях PowerShell этот шаг обычно можно пропустить и запустить Connect-ExchangeOnline без загрузки модуля.

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

    Connect-ExchangeOnline -UserPrincipalName <UPN> [-ShowBanner:$false] [-ExchangeEnvironmentName <Value>] [-DelegatedOrganization <String>] [-PSSessionOption $ProxyOptions] [-UseRPSSession]
    
    • <UPN> — ваша учетная запись в формате имени субъекта-пользователя (например, navin@contoso.com).
    • С помощью модуля EXO V3 (версии 3.0.0 или 2.0.6-PreviewX), если вы не используете параметр UseRPSSession , у вас будет доступ к командлетам REST API. Дополнительные сведения см. в Обновления версии 3.0.0 (модуль EXO V3).
    • Если вы используете параметр ExchangeEnvironmentName, вам не требуется применять параметры ConnectionUri или AzureADAuthorizationEndPointUrl. Дополнительные сведения см. в описаниях параметров в статье Connect-ExchangeOnline.
    • В параметре DelegatedOrganization указывается организация клиента, которой вы хотите управлять в качестве авторизованного партнера корпорации Майкрософт. Дополнительные сведения см. в разделе Партнеры.
    • Если вы находитесь за прокси-сервером, сначала выполните следующую команду: $ProxyOptions = New-PSSessionOption -ProxyAccessType <Value>, где <Value> равно IEConfig, WinHttpConfig или AutoDetect. Затем используйте параметр PSSessionOption со значением $ProxyOptions. Дополнительные сведения см. в статье New-PSSessionOption.
    • В зависимости от характера вашей организации вы можете опустить параметр UserPrincipalName на следующем шаге. Вместо этого введите имя пользователя и пароль или выберите сохраненные учетные данные после выполнения команды Connect-ExchangeOnline. Если это не сработает, необходимо использовать параметр UserPrincipalName.
    • Если вы не используете многофакторную проверку подлинности, у вас должна быть возможность применить параметр Credential вместо параметра UserPrincipalName. Сначала запустите команду $Credential = Get-Credential, введите имя пользователя и пароль, а затем используйте имя переменной для параметра Credential (-Credential $Credential). Если это не сработает, необходимо использовать параметр UserPrincipalName.

    В этом примере выполняется подключение к Exchange Online PowerShell в организации Microsoft 365 или Microsoft 365 GCC:

    Connect-ExchangeOnline -UserPrincipalName navin@contoso.com
    

    В этом примере выполняется подключение к Exchange Online PowerShell в организации Office 365 Germany:

    Connect-ExchangeOnline -UserPrincipalName lukas@fabrikam.de -ExchangeEnvironmentName O365GermanyCloud
    

    В этом примере выполняется подключение к Exchange Online PowerShell в организации Microsoft GCC High:

    Connect-ExchangeOnline -UserPrincipalName laura@blueyonderairlines.us -ExchangeEnvironmentName O365USGovGCCHigh
    

    В этом примере выполняется подключение к Exchange Online PowerShell в организации Microsoft 365 DoD:

    Connect-ExchangeOnline -UserPrincipalName julia@adatum.mil -ExchangeEnvironmentName O365USGovDoD
    

    В этом примере выполняется подключение к Exchange Online PowerShell для управления другим клиентом:

    Connect-ExchangeOnline -UserPrincipalName navin@contoso.com -DelegatedOrganization adatum.onmicrosoft.com
    
  3. В открывшемся окне входа введите пароль и нажмите кнопку Войти.

    Введите пароль в окне входа в учетную запись.

  4. Только многофакторная проверка подлинности: Код проверки создается и отправляется на основе варианта ответа, настроенного для вашей учетной записи (например, текстовое сообщение или приложение Microsoft Authenticator на вашем устройстве).

    В открывшемся окне введите код проверки и нажмите кнопку Подтвердить.

    Введите код проверки в окне входа в учетную запись.

Дополнительные сведения о синтаксисе и параметрах см. в статье Connect-ExchangeOnline.

Примечание

По завершении настройки отключите удаленный сеанс PowerShell. Если закрыть окно оболочки PowerShell, не выполнив отключение сеанса, можно исчерпать лимит доступных сеансов удаленной оболочки PowerShell. Кроме того, вам придется дождаться окончания срока действия сеансов. Чтобы отключить удаленный сеанс PowerShell, выполните следующую команду.

Disconnect-ExchangeOnline

Возможности входа PowerShell 7

В этом разделе описываются возможности входа, доступные в версии 2.0.4 или более поздней версии модуля в PowerShell 7.

Дополнительные сведения об операционных системах, поддерживаемых модулем в PowerShell 7, см. в разделе "Поддерживаемые операционные системы для Exchange Online PowerShell".

Дополнительные сведения о синтаксисе и параметрах см. в статье Connect-ExchangeOnline.

Интерактивные сценарии с использованием единого входа на основе браузера

Единый вход на основе браузера — это стандартный метод входа в PowerShell 7. Команда Connect-ExchangeOnline открывает страницу входа Azure AD в браузере, используемом по умолчанию. После ввода учетных данных в результирующем сеансе PowerShell будут доступны Exchange Online командлеты Exchange Online и командлеты модуля PowerShell.

Если вы используете в команде параметр UserPrincipalName, значение UPN применяется на странице входа в браузере.

Connect-ExchangeOnline -UserPrincipalName navin@contoso.onmicrosoft.com

Вход на основе устройства

Используйте вход на основе устройства, если браузеры недоступны (поэтому вы не можете увидеть страницу входа).

Connect-ExchangeOnline -Device

Команда возвращает URL-адрес и уникальный код, связанный с сеансом. Откройте URL-адрес в браузере на любом компьютере и введите уникальный код. Когда вы выполните вход в веб-браузере, сеанс в окне PowerShell 7 пройдет проверку подлинности с помощью обычного потока проверки подлинности Azure AD, а командлеты Exchange Online импортируются через несколько секунд.

Встроенные учетные данные

Вы можете ввести свои учетные данные непосредственно в окне PowerShell, не переходя в браузер для единого входа.

Примечание

Этот метод не работает с учетными записями, в которых используется многофакторная проверка подлинности.

Этот метод является улучшением параметра Credential, так как вам не нужно локально хранить учетные данные в сценарии, и вы можете ввести учетные данные непосредственно в интерактивном сеансе PowerShell.

Connect-ExchangeOnline -InlineCredential

Как узнать, что подключение выполнено успешно?

Если не появляются сообщения об ошибках, значит, подключение установлено. Чтобы выполнить быструю проверку, запустите командлет Exchange Online, например Get-Mailbox, и просмотрите результаты его работы.

Если возникают ошибки, просмотрите список возможных причин ниже.

  • Распространенная проблема — неправильный пароль. Еще раз повторите три описанных выше действия, уделив особое внимание имени пользователя и паролю, которые вы используете.

  • Для предотвращения атак типа "отказ в обслуживании" (DoS) можно открыть не более пяти удаленных подключений PowerShell к Exchange Online.

  • Для учетной записи, которую вы используете для подключения, необходимо включить доступ к удаленному сеансу PowerShell. Дополнительные сведения см. в статье Включение и отключение доступа к Exchange Online PowerShell.

  • Между локальным компьютером и Microsoft 365 необходимо открыть трафик для TCP-порта 80. Вполне вероятно, что он уже открыт, но в этом следует убедиться, если в вашей организации действует политика ограниченного доступа к Интернету.

  • Если в вашей организации используется федеративная проверка подлинности и ваш поставщик удостоверений (IDP) и/или служба маркеров безопасности (STS) не являются общедоступными, вы не сможете использовать федеративную учетную запись для подключения к Exchange Online PowerShell. Вместо этого вам нужно создать и использовать нефедеративную учетную запись в Microsoft 365, чтобы подключиться к Exchange Online PowerShell.