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

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

В этой статье приведены инструкции по подключению к Exchange Online PowerShell с помощью модуля EXO V2 с многофакторной проверкой подлинности (MFA) и без нее.

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

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

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

  • Требования для установки и использования модуля EXO V2 описаны в статье Установка и обслуживание модуля EXO V2.

    Примечание

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

  • После подключения управление наличием доступа к командлетам и параметрам осуществляется путем управления доступом на основе ролей (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 загрузите модуль EXO V2, выполнив следующую команду:

    Import-Module ExchangeOnlineManagement
    

    Примечания.

    • Если модуль EXO v2 уже установлен, предыдущая команда будет действовать как написанная.
    • Возможно, вы сможете пропустить этот шаг и запустить Connect-ExchangeOnline без предварительной загрузки модуля.
  2. В команде, которую вам нужно выполнить, используется следующий синтаксис:

    Connect-ExchangeOnline -UserPrincipalName <UPN> [-ShowBanner:$false] [-ExchangeEnvironmentName <Value>] [-DelegatedOrganization <String>] [-PSSessionOption $ProxyOptions]
    
    • <UPN>  — ваша учетная запись в формате имени субъекта-пользователя (например, navin@contoso.com).
    • Если вы используете параметр 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 и более поздних версиях модуля EXO V2 в PowerShell 7.

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

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

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

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

Если вы используете в команде параметр 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 импортируются в локальный сеанс PowerShell и отображаются на индикаторе выполнения. Если не появляются сообщения об ошибках, значит, подключение установлено. Чтобы выполнить быструю проверку, запустите командлет Exchange Online, например Get-Mailbox, и просмотрите результаты его работы.

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

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

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

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

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

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