Какво е IMAP импортът на Exchange Admin Center?
Microsoft предоставя вградена функция за IMAP миграция в Exchange Admin Center (EAC), която позволява на администраторите да импортират имейли от всеки IMAP сървър към Exchange Online (Microsoft 365). Този вграден инструмент е проектиран за организации, мигриращи от не-Microsoft платформи: Gmail, Zimbra, Dovecot, Courier, cPanel хостинг и всеки друг сървър, поддържащ IMAP.
IMAP импортът на Exchange Admin Center често е първият инструмент, който администраторите опитват. Без софтуер от трети страни. Без допълнителни лицензионни разходи. Директно вграден в административния интерфейс на Microsoft 365. Изглежда като очевидният избор.
Но този вграден инструмент на Microsoft произвежда същия проблем с датите като инструментите за миграция от трети страни. След IMAP импорт чрез Exchange Admin Center всеки мигриран имейл показва датата на миграцията вместо оригиналната дата на получаване. Потребителите отварят Outlook и откриват, че години имейл история изглежда така, сякаш е пристигнала в един и същи ден. Инструментът на Microsoft разваля датите в пощенския клиент на Microsoft.
Как IMAP импортът на Exchange причинява проблеми с датите
Процесът на импорт
IMAP импортът на Exchange Admin Center работи, като се свързва с изходния IMAP сървър, изтегля всеки имейл и го вмъква в целевата Exchange Online кутия. По време на това вмъкване Exchange Online обработва всеки импортиран имейл като нова доставка и добавя транспортни хедъри, включително "Received" хедър с текущия времеви печат - тоест датата на импорта.
"Received" хедърът, добавен от Exchange Online
Когато Exchange Online получи съобщение (било чрез нормална доставка или чрез IMAP импорт), добавя "Received" хедъри, документиращи пътя на съобщението през транспортната инфраструктура на Microsoft. Тези хедъри съдържат времеви печати, отразяващи момента, в който Exchange Online е обработил съобщението. За импортирани имейли тези времеви печати съответстват на датата и часа на операцията за импорт, а не на оригиналната дата на доставка.
Типичен "Received" хедър, добавен от Exchange при IMAP импорт, изглежда така:
Received: from BN6PR01MB1234.prod.exchangelabs.com
by BN6PR01MB5678.prod.exchangelabs.com with HTTPS;
Mon, 15 Jan 2024 08:30:45 +0000
Този хедър се поставя в началото на веригата хедъри, което го прави най-скорошния "Received". Outlook чете този хедър, за да определи датата на получаване, и показва датата на импорта за всеки мигриран имейл.
Защо инструментът на Microsoft има този проблем
Изглежда абсурдно, че инструментът за миграция на Microsoft причинява проблем с показването на датата в пощенския клиент на Microsoft. Но обяснението всъщност е логично: IMAP импортът правилно записва момента, в който е обработил съобщението (изискване на стандартите за имейл транспорт), а Outlook правилно чете най-скорошния "Received" хедър, за да определи датата на получаване (стандартно поведение на пощенски клиент). Комбинацията от тези две правилни поведения произвежда неправилен резултат за мигрирани имейли. Две правилни неща, които създават грешка. За пълно техническо обяснение вижте защо имейлите показват грешни дати след IMAP миграция.
Конфигурирането на IMAP импорт (не предотвратява проблема)
Настройки на Exchange Admin Center
IMAP импортът на Exchange Admin Center предлага опции за конфигуриране на мапване на папки, филтриране на елементи и планиране на миграционни партиди. Но нито една от тези опции не контролира как Exchange Online обработва "Received" хедърите по време на импорта. Няма квадратче за "запазване на оригиналните дати" и никаква настройка, която предотвратява добавянето на транспортни хедъри от Exchange. Проблемът с датите е последствие от архитектурата на имейл транспорта, а не липсваща опция за конфигурация.
PowerShell миграционни cmdlets
Администраторите, използващи PowerShell cmdlets (New-MigrationBatch, New-MoveRequest) за IMAP миграция, имат достъп до допълнителни параметри, но никой от тях не предотвратява добавянето на "Received" хедъра. Cmdletът Start-MigrationBatch и свързаните команди контролират процеса на миграция, а не поведението на имейл транспорта на Exchange Online. Дори с най-грижливата PowerShell конфигурация импортираните имейли ще имат датата на миграцията като дата на получаване в Outlook.
Въздействието върху Outlook и OWA
Outlook Desktop
Outlook Desktop е най-засегнатият клиент. Изгледът по подразбиране сортира имейлите по дата на "Получаване", която показва времевия печат на импорта за всяко мигрирано съобщение. Потребителите, разчитащи на търсене, сортиране и филтриране по дата, виждат работния си процес напълно нарушен. Входяща поща, обхващаща пет години кореспонденция, се появява, сякаш всичко е пристигнало в един и същи ден. Как да намерите онзи важен имейл от 2021, когато всяко съобщение твърди, че е пристигнало през януари 2024?
Outlook в уеб (OWA)
OWA показва същите грешни дати като Outlook Desktop. За разлика от уеб интерфейса на Gmail (който понякога чете "Date" хедъра), OWA систематично използва времевия печат на доставка от Exchange. Никоя OWA настройка или опция за показване не показва оригиналната дата вместо датата на импорт.
Outlook Mobile
Outlook Mobile (iOS и Android) също показва датата на импорта. Проблемът е еднакъв на всички Outlook платформи, тъй като всички те четат същата стойност за дата от Exchange Online. За пълно ръководство за проблеми с датите, специфични за Outlook, вижте коригиране на грешната Outlook дата след миграция.
Чести заобиколни решения (и защо не работят)
Сортиране по дата "Изпратено"
Най-често предлаганото заобиколно решение е да промените изгледа на Outlook да сортира по дата "Изпратено" вместо дата "Получено". Въпреки че това променя реда на показване, не коригира основните данни. Датата на "Получаване" остава грешна в резултатите от търсенето, правилата, инструментите за съответствие и всяка друга функция, рефераща времевия печат на получаване. А това заобикаляне изисква всеки потребител да промени настройките си на всяко устройство.
Повторно стартиране на IMAP импорта
Повторното импортиране на имейлите не коригира проблема с датите. Втори импорт добавя друг набор от "Received" хедъри с нов времеви печат, допълнително усложнявайки веригата хедъри, без да коригира показваната дата. Повторният импорт може също да създаде дубликати, ако инструментът не обработва правилно дедупликацията.
Използване на различен инструмент за миграция
Преминаването към инструмент от трети страни (BitTitan MigrationWiz, CloudM или imapsync) не решава проблема с датите. Всеки инструмент, който вмъква имейли в Exchange Online, предизвиква същото поведение на транспортен хедър. Проблемът идва от начина, по който Exchange Online обработва входящите съобщения, а не от инструмента за миграция. За сравнение на всички опции за корекция вижте могат ли имейл датите да се коригират след миграция.
Коригиране на дати от IMAP импорт на Exchange с Redate.io
Как Redate.io идентифицира хедърите от Exchange импорт
Redate.io се свързва с Exchange Online и подава всеки имейл през собствения си многоетапен процес на анализ. За IMAP импорти на Exchange, Redate.io прилага съпоставяне на миграционни сигнатури срещу стотици известни сигнатури, включително модели на транспортната инфраструктура на Exchange Online (като "prod.exchangelabs.com"), за да идентифицира точно кои "Received" хедъри са добавени по време на импорта спрямо тези, които са част от оригиналната верига на доставка.
Какво дава Redate.io
След обработка всеки коригиран имейл показва оригиналната си дата на получаване в Outlook, OWA и всички свързани клиенти. Хронологичният ред е възстановен. Всяка корекция преминава през проверка на целостта преди финализиране и оригиналите се съхраняват в папка "Redate.io - Originals" за 30 дни. Коригиращият двигател обработва специалните случаи, които правят ръчните подходи опасни: S/MIME подписани съобщения, PGP криптирано съдържание, multipart MIME структури с вложени граници, вариации на кодиране и повредени MIME граници. Всъщност това е много повече от просто търсене-замяна на текст в хедъри.
Свързване с Exchange Online
Redate.io се свързва с Exchange Online чрез регистрация на Azure AD (Entra ID) приложение с OAuth2 удостоверяване. Администраторът създава регистрация на приложение, предоставя Mail.ReadWrite разрешения и дава администраторско съгласие. Не се изискват потребителски пароли. Процесът на конфигуриране отнема около 15 минути и следва същите модели, използвани от други сертифицирани от Microsoft приложения.
Специфични ръководства по платформи
Често задавани въпроси
Това известен проблем ли е при Microsoft?
Microsoft не документира официално този проблем като известен дефект на IMAP импорта на Exchange Admin Center. Тикетите за поддръжка за този проблем с дати обикновено получават предложения за заобикаляне (сортиране по дата Изпратено), а не корекция. Проблемът е последствие от стандартното поведение на Exchange транспорта, а не бъг във функцията за импорт.
PowerShell може ли да коригира датите след импорта?
Не. Exchange Online PowerShell не предоставя cmdlets за модификация на суровото съдържание на съществуващи съобщения. Cmdlets като Set-Mailbox и свързаните контролират конфигурацията на кутията, а не хедърите на индивидуалните съобщения. Корекцията изисква работа на ниво, което PowerShell просто не излага за Exchange Online.
Redate.io работи ли с хибридни Exchange среди?
Да. Redate.io работи с всяка пощенска кутия, хоствана в Exchange Online, независимо дали организацията използва хибридна Exchange конфигурация или не. Корекцията се прилага към Exchange Online кутията и не изисква достъп до on-premises Exchange сървърите.
IMAP импортът на Exchange подправи датите на всички имейли? Стартирайте безплатен анализ с Redate.io, за да идентифицирате засегнатите имейли във всяка кутия и възстановите правилните дати в Outlook, OWA и всички свързани клиенти.