Открыть сервис

MAPI over HTTP

MAPI over HTTP — это протокол удалённого доступа к почтовым ящикам Microsoft Exchange Server и Microsoft 365, использующийся для взаимодействия почтового клиента (например, Microsoft Outlook) с сервером. В отличие от более ранних методов (MAPI/RPC), MAPI over HTTP передаёт данные через стандартные HTTP-запросы, что упрощает настройку брандмауэров и повышает надёжность соединения. Протокол был представлен компанией Microsoft в Exchange Server 2013 с пакетом обновления 1 (SP1) и стал основным для Outlook в Exchange Server 2016 и более поздних версиях.

История

До появления MAPI over HTTP основным протоколом для удалённой работы Outlook с Exchange был MAPI/RPC (Messaging Application Programming Interface over Remote Procedure Call). Этот протокол использовал динамические порты RPC, что создавало сложности при настройке сетевых экранов и требовало открытия широкого диапазона портов (обычно 1024–65535). Кроме того, MAPI/RPC был чувствителен к задержкам и разрывам соединения, что делало его нестабильным при использовании через ненадёжные каналы связи (например, через интернет).

В Exchange Server 2007 и 2010 Microsoft пыталась решить эти проблемы с помощью Outlook Anywhere (ранее известного как RPC over HTTP). Этот протокол инкапсулировал RPC-трафик в HTTP-пакеты, что позволяло проходить через брандмауэры, но сохранял многие недостатки MAPI/RPC, включая высокую нагрузку на сервер и сложность диагностики.

В 2014 году с выходом Exchange Server 2013 SP1 Microsoft представила MAPI over HTTP как альтернативу Outlook Anywhere. Первоначально протокол был опциональным и требовал ручного включения. Начиная с Exchange Server 2016, MAPI over HTTP стал протоколом по умолчанию для всех новых установок, а Outlook Anywhere был объявлен устаревшим. В Exchange Server 2019 поддержка Outlook Anywhere была полностью прекращена.

Принцип работы

MAPI over HTTP работает по следующей схеме:

  1. Установка соединения: Почтовый клиент (Outlook) отправляет HTTP-запрос на сервер Exchange (или на обратный прокси-сервер, например, Microsoft Forefront TMG или Microsoft Entra Application Proxy).
  2. Аутентификация: Сервер проверяет учётные данные пользователя. Поддерживаются протоколы аутентификации NTLM, Kerberos и современная аутентификация (OAuth 2.0), которая используется в Microsoft 365.
  3. Обмен данными: После успешной аутентификации клиент и сервер обмениваются серией HTTP-запросов и ответов. Каждый запрос содержит команды MAPI, упакованные в тело HTTP-сообщения. Ответы содержат запрошенные данные (например, содержимое папки «Входящие», календарь, задачи).
  4. Поддержание сессии: В отличие от MAPI/RPC, MAPI over HTTP не поддерживает постоянное соединение. Каждый запрос является независимым, что делает протокол более устойчивым к разрывам связи. Для поддержания сессии используется механизм сессионных cookie (например, X-BackEndCookie), которые позволяют серверу идентифицировать клиента при последующих запросах.

Ключевые особенности

Архитектура

MAPI over HTTP реализован на основе клиент-серверной архитектуры:

Компоненты серверной части

  1. Виртуальный каталог MAPI: Создаётся в IIS (Internet Information Services) на сервере Exchange. Он обрабатывает все запросы, поступающие от клиентов.
  2. Служба MAPI: Отвечает за преобразование HTTP-запросов в команды MAPI и передачу их в базу данных почтовых ящиков.
  3. Модуль аутентификации: Проверяет учётные данные пользователя (NTLM, Kerberos, OAuth).

Сравнение с другими протоколами

ХарактеристикаMAPI over HTTPMAPI/RPCOutlook Anywhere (RPC over HTTP)
Порты443 (HTTPS)Динамические (1024–65535)443 (HTTPS)
Тип соединенияHTTP-запросы (без постоянного соединения)Постоянное RPC-соединениеHTTP-запросы, инкапсулирующие RPC
Устойчивость к сбоямВысокая (автовосстановление сессии)Низкая (разрыв соединения требует переподключения)Средняя
Нагрузка на серверНиже (отсутствие RPC-инфраструктуры)ВысокаяСредняя
Сложность настройкиНизкая (только порт 443)Высокая (требуется настройка RPC-диапазона)Средняя
Поддержка в Exchange 2019Да (основной протокол)НетНет
Поддержка в Microsoft 365Да (основной протокол)НетНет

Применение

MAPI over HTTP используется в следующих сценариях:

Критика и ограничения

Несмотря на преимущества, MAPI over HTTP имеет некоторые недостатки:

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →