Поделиться через


Не удается подключиться к Outlook с помощью протоколов POP/IMAP и современной проверки подлинности

Корпорация Майкрософт недавно объявила о возможности использовать проверку подлинности OAuth для протоколов POP, IMAP и SMTP в Exchange Online. Кроме того, клиентам рекомендуется отключить обычную проверку подлинности и перейти на современный тенант проверки подлинности для современных клиентов.

Если отключить обычную проверку подлинности и настроить профиль Outlook с помощью POP и SMTP или IMAP, вы заметите, что Outlook не подключается или не проходит проверку подлинности. Причина в том, что Outlook поддерживает современную проверку подлинности только для профилей Exchange (MAPI/HTTP и EWS), Outlook.com и Gmail в настоящее время. Об этом также говорится в разделе "Прекращение использования обычной проверки подлинности в Exchange Online".

Клиенты Outlook не могут поддерживать OAuth для POP и IMAP, но Outlook может подключаться с помощью MAPI/HTTP (клиенты Windows) и EWS (Outlook для Mac).

Если вы используете ПРОТОКОЛ POP/IMAP и SMTP для учетной записи Exchange Online в Outlook, необходимо включить обычную проверку подлинности для этих протоколов (до тех пор, пока она не будет окончательно устарела в октябре 1). Для этого отключите параметры безопасности Microsoft Entra по умолчанию , если они включены.

Включение обычной проверки подлинности для протоколов POP и IMAP

Если вы ранее отключили обычную проверку подлинности для POP или IMAP с помощью политики проверки подлинности Exchange Online, можно изменить политику, чтобы разрешить эти протоколы. Чтобы повторно включить обычную проверку подлинности для этих протоколов, выполните следующую команду PowerShell:

Set-AuthenticationPolicy -Identity <Policy Name> -AllowBasicAuthPop -AllowBasicAuthImap -AllowBasicAuthSmtp

Затем можно либо дождаться обновления маркера по истечении срока его действия, либо выполнить следующую команду, чтобы принудительно обновить его немедленно:

Set-User -Identity <user account> -STSRefreshTokensValidFrom $([System.DateTime]::UtcNow)

Включение протокола SMTP

Протокол SMTP можно включить и отключить на уровне клиента или на уровне почтового ящика. Эта функция доступна администраторам, чтобы предотвратить отправку сообщений злоумышленниками с помощью этого протокола. Некоторые компании могут полностью отключить протокол в качестве меры безопасности и просто включить его для определенных почтовых ящиков.

Уровень клиента

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

Get-TransportConfig | Select SmtpClientAuthenticationDisabled
  • Если значение равно False, SMTP не отключен.
  • Если значение равно True, SMTP отключен для всего клиента.

Чтобы включить протокол SMTP, выполните следующую команду, чтобы вернуть значение False:

Set-TransportConfig -SmtpClientAuthenticationDisabled $False

Дополнительные сведения об этой Set-TransportConfig команде см. Set-TransportConfig.

Уровень почтового ящика

Чтобы проверить текущий параметр на уровне почтового ящика, выполните следующую команду:

Get-EXOCasMailbox <mailbox account> -Properties SmtpClientAuthenticationDisabled | Select SmtpClientAuthenticationDisabled
  • Если значение пусто, конфигурация уровня клиента учитывается на уровне почтового ящика. Если для конфигурации уровня клиента задано отключение протокола SMTP, Outlook не будет подключаться. В этом случае можно задать исключение с разрешением для определенного почтового ящика и сохранением параметра уровня клиента, чтобы отключить протокол SMTP. Кроме того, можно изменить параметр уровня клиента, чтобы выполнить полное включение.
  • Если значение равно False, конфигурация на уровне клиента будет переопределена параметром на уровне почтового ящика, и SMTP не будет отключен для этого конкретного пользователя.
  • Если значение равно True, SMTP отключен, и этому пользователю не удастся подключиться с помощью SMTP AUTH.

Чтобы включить SMTP для определенного пользователя, выполните следующую команду, чтобы вернуть значение False:

Set-CasMailbox <mailbox account> -SmtpClientAuthenticationDisabled $False

Дополнительные сведения об этой Set-CasMailbox команде см. в Set-CasMailbox