Besedilo: Kristijan Sekereš
EWS v Exchange Online preneha delovati 1. aprila 2027: selitev integracij na Microsoft Graph

Microsoft je začel izklapljati Exchange Web Services (EWS) v Exchange Online. Prvi koraki uveljavljanja potekajo ta mesec, nato bodo najemniki, ki nastavitev EWS nikoli niso spreminjali, izklopljeni drug za drugim, od 1. aprila 2027 pa EWS ne bo več za noben najemnik Microsoft 365. Microsoft je jasno povedal, da po aprilu 2027 izjem ne bo.
Če nekaj, kar je zgradilo vaše podjetje, s poštnimi predali Microsoft 365 komunicira prek EWS, bo najpozneje na ta datum prenehalo delovati, morda pa že veliko prej. Običajni osumljenci: CRM, ki e-poštna sporočila strank vlaga k računom strank, skripta za arhiviranje ali hrambo, zaslon za rezervacijo sejnih sob, sistem za zahtevke, ki bere skupni predal podpore, poročevalsko opravilo, ki šteje e-poštna sporočila po ekipah. Rešitev je ponovno pisanje za Microsoft Graph, nekatere stvari, ki jih je zmogel EWS, pa v Graph sploh nimajo ustreznika.
Kaj se zgodi, datum za datumom
Microsoft EWS za vsak najemnik upravlja z nastavitvijo EWSEnabled, ki ima tri vrednosti: Null (privzeto), True in False. Poleg nje je zdaj še druga nastavitev, EWSAllowedAppIDs: seznam ID aplikacij, ki še smejo uporabljati EWS. Trenutna stran Microsoft Learn podaja oris: oktobra 2026 se EWS začne globalno onemogočati za vse organizacije, aprila 2027 pa je EWS v celoti onemogočen.
Podrobnosti so v objavi ekipe Exchange z dne 1. oktobra, EWS Deprecation Is Here. Za svetovni komercialni oblak:
- 2. oktober 2026, ob koncu dneva po pacifiškem času: Microsoft zabeleži vse najemnike, ki imajo
EWSEnablednastavljen na True, nimajo pa seznama dovoljenih. - 8. in 9. oktober 2026: za te najemnike Microsoft ustvari seznam dovoljenih in ga napolni z ID aplikacij, ki so v zadnjih 60 dneh uporabljale EWS.
- Od 10. oktobra 2026: ko je
EWSEnabledTrue, je seznam dovoljenih obvezen. Aplikacija, ki ni na njem, je zavrnjena. - Druga faza, nato: najemnikom, ki so še na Null, se
EWSEnablednastavi na False, kar EWS blokira za vse aplikacije. Vsak dobi 7-dnevno opozorilo v središču za sporočila (Message Center), Microsoft pa malo pred tem napolni seznam dovoljenih iz 60 dni uporabe, da lahko skrbnik EWS z vrednostjo True spet vklopi. - 1. april 2027: EWS je „v celoti in trajno onemogočen“, skrbniki najemnikov pa izgubijo možnost, da bi
EWSEnabledsploh spreminjali.
Najemniki v drugih Microsoftovih oblakih dobijo svoje časovnice prek središča za sporočila.
Seznam dovoljenih kupi čas, ne prinese rešitve
Samodejni seznam se zgradi iz 60 dni prometa, Microsoftova lastna navodila z dne 4. septembra pa opozarjajo, da lahko „spregleda aplikacije, ki se izvajajo redko“. Izvoz ob koncu četrtletja ali letno arhiviranje ne bosta na njem in bosta ob naslednjem zagonu odpovedala.
Spremembe seznama dovoljenih začnejo veljati po 24 urah, spremembe EWSEnabled pa po približno eni uri. Vsak popravek, ki ga naredite po odpovedi, stane vsaj en dan.
Da vidite, kje je vaš najemnik, lahko skrbnik z Exchange Online PowerShell zažene:
Get-OrganizationConfig | Format-List EWSEnabled
Get-OrganizationConfig -RetrieveEwsOperationAccessPolicy | Format-List EwsAllowedAppIDs
Za koga je to in kdo lahko neha brati
Lokalni Exchange Server ni prizadet. Microsoft pravi, da ukinitev velja „samo za Microsoft 365 in Exchange Online“ in da „v Exchange Server pri EWS ni sprememb“. Če so vsi vaši poštni predali na vaših lastnih strežnikih, se lahko tu ustavite.
Hibridne postavitve zahtevajo natančnejši pogled. Lokalni poštni predali lahko še naprej uporabljajo EWS; predali v oblaku se morajo preseliti na Graph. Microsoftova objava o hibridnih okoljih z dne 30. septembra obravnava dva primera, ki zahtevata ukrepanje zdaj, med njimi lokalne predale z arhivi v Exchange Online, kjer je trenutni nasvet, da EWS ostane omogočen, hibridna aplikacija pa se doda na seznam dovoljenih.
Paketna programska oprema je naloga ponudnika. Če je to, kar kliče EWS, komercialni izdelek, je dobava različice za Graph naloga ponudnika, vaša pa je, da od njega dobite datum in namestite posodobitev. Microsoftovi lastni odjemalci niso nič drugačni: nekateri se še pojavljajo v poročilih o uporabi in do posodobitve potrebujejo seznam dovoljenih.
Lastna koda je vaša naloga. Skripte, notranje storitve, prilagojena odprtokodna orodja in integracije, ki jih je pred leti zgradila agencija, nimajo nikogar navzgor, ki bi jih popravil. Tam je delo. Za predstavo o obsegu: exchangelib, knjižnica za Python za komunikacijo z Exchange prek EWS, je bila v zadnjem mesecu s PyPI prenesena 1.174.625-krat. Del tega je lokalna uporaba, a daje občutek, koliko kode neposredno govori EWS.
Prvi korak: poiščite vse, kar uporablja EWS
Začnite s poročilom o uporabi EWS v skrbniškem središču Microsoft 365 (Reports, Usage, Exchange, nato zavihek EWS usage). Za vsako aplikacijo navaja ID aplikacije Microsoft Entra, vsako dejanje SOAP, ki ga je ta aplikacija klicala, obseg klicev in datum zadnje dejavnosti. Pogledate lahko 7, 30 ali 90 dni nazaj in izvozite v CSV.
O njem morate vedeti tri stvari:
- Podatki se združujejo tedensko in se lahko pojavijo šele po 10 dneh.
- ID aplikacije ni lastnik. Vsak ID primerjajte z Enterprise applications v Microsoft Entra, nato poiščite osebo ali ekipo, ki aplikacijo upravlja. Pričakujte nekaj ID, ki jih nihče ne prepozna.
- Stolpec dejanj SOAP vam pove, kako veliko je posamezno opravilo. Aplikacija, ki kliče le
FindIteminGetItem, je kratko opravilo. Aplikacija, ki kličeSyncFolderItems,SubscribeinExportItems, je projekt.
Tudi 90 dni ne ujame letnih opravil, zato preverite še drugo stran: načrtovana opravila in vnose cron ter repozitorije kode, preiskane za končno točko EWS (Exchange.asmx), EWS Managed API za .NET in exchangelib. Microsoftova stran o ukinitvi povezuje tudi na analizator EWS za kodo .NET (klice EWS označi v Visual Studio in VS Code ter predlaga ustreznike v Graph) in vadnico o preoblikovanju kode s pomočjo umetne inteligence.
Drugi korak: odločite, kaj postane vsaka integracija
Vsaka aplikacija na seznamu dobi enega od štirih odgovorov:
- Ukinite jo. Nekatere integracije obstajajo le zato, ker jih nihče ni izklopil.
- Posodobite jo. Izdelki ponudnikov dobijo nadgradnjo ponudnika. Datum dogovorite zdaj.
- Napišite jo znova za Microsoft Graph. Privzeta izbira za lastno kodo.
- Zasnujte jo na novo. Za vse, kar se zanaša na zmožnost, ki je Graph nikoli ne bo imel (glejte spodaj).
Microsoft kot način za ponovno izvedbo poteka dela navaja tudi Power Platform. Za skripto, ki priponke posreduje v mapo, je to lahko najcenejši odgovor.
Kaj ponovno pisanje za Graph v resnici vključuje
Večina operacij EWS ima neposreden ustreznik v Graph, Microsoft pa vzdržuje preslikavo iz EWS v Graph. Preslikava je lažji del. Težji so tisti deli, ki jih ne pokaže.
Dovoljenja postanejo ožja, in to je prednost
Aplikacija, ki EWS uporablja brez prijavljenega uporabnika, ima aplikacijsko dovoljenje EWS, ki ga Microsoft opisuje kot „poln dostop do vseh poštnih predalov“. Graph ga razdeli na ločena dovoljenja: Mail.Read, Mail.ReadBasic, Mail.Send, Calendars.ReadWrite, MailboxSettings.Read in tako naprej.
Omejite lahko tudi, do katerih poštnih predalov aplikacija seže. RBAC for Applications in Exchange Online dovoljenje dodeli glede na obseg upravljanja ali upravno enoto in nadomešča starejše Application Access Policies. Zaslon za rezervacijo sob lahko bere koledarje dvanajstih poštnih predalov sob in nič drugega. Ena past: dodelitve na ta način se seštejejo s katero koli dodelitvijo za ves najemnik v Microsoft Entra, zato vaš obseg ne omejuje ničesar, če je Mail.Read tam še vedno odobren. Odstranite dodelitev v Entra.
Za avtentikacijo aplikacij, kjer je mogoče, uporabljajte potrdila namesto skrivnosti odjemalca, poverilnice pa hranite zunaj skript in repozitorijev.
Sinhronizacija in obvestila se zgradijo na novo, ne prevedejo
To je običajno največja sprememba pri vsem, kar hrani lokalno kopijo podatkov iz poštnih predalov.
Sinhronizacija. SyncFolderItems se preslika v poizvedbo delta za sporočila v Graph, SyncFolderHierarchy pa v poizvedbo delta za poštne mape. Delta za sporočila deluje po eno mapo naenkrat, zato polna sinhronizacija predala pomeni sledenje drevesu map in shranjevanje ločene povezave delta za vsako mapo. Filtriranje je omejeno (le po datumu prejema), rezultati pa vključujejo brisanja, premike iz mape in spremembe stanja prebranosti, tudi kadar se ne ujemajo z vašim filtrom.
Obvestila. Naročnine EWS s pretakanjem in potisnim obveščanjem postanejo obvestila o spremembah v Graph, dostavljena na webhook, ki ga upravljate sami, ali v Azure Event Hubs ali Event Grid. Webhook mora biti dosegljiv z Microsoftove strani, kar je arhitekturna sprememba za skripto, ki je prej povezavo držala odprto izza požarnega zidu. Naročnine za pošto, koledar in stike trajajo največ 10.080 minut (nekaj manj kot sedem dni) ali 1.440 minut, ko obvestilo nosi podatke, zato jih mora nekaj obnavljati. Vsak poštni predal dovoljuje največ 1.000 aktivnih naročnin za vse aplikacije skupaj.
Vzorec, ki zdrži: obvestilo obravnavajte kot namig, zaženite poizvedbo delta, da vidite, kaj se je spremenilo, in jo poganjajte tudi po časovniku, da ujamete vse, kar bi zgrešeno obvestilo izgubilo.
Podatki, ID in prepustnost
- Shranjeni ID. Če je vaš CRM ali sistem za zahtevke shranjeval ID elementov EWS za povezovanje e-pošte z zapisi, je treba te povezave pretvoriti. Graph ima za prav to funkcijo
translateExchangeIds. Pretvorbo načrtujte kot samostojen korak selitve. - Iskanja.
ResolveNamesse preslika v People API,GetUserAvailabilityvgetSchedule, nastavitve odsotnosti v nastavitve poštnega predala. Bližnji ustrezniki, ne enaki. - Omejevanje (throttling). Graph vsak par aplikacije in poštnega predala omeji na 10.000 zahtev na 10 minut, štiri sočasne zahteve in 150 MB nalaganja na 5 minut. Paketno opravilo, ki je proti enemu predalu poganjalo desetine vzporednih niti EWS, je treba na novo zasnovati okoli teh številk.
Vrzeli in kaj ne bo nikoli prišlo
Microsoft objavlja načrt zmožnosti EWS, ki v Graph še manjkajo. Vključuje uvoz in izvoz s polno zvestobo za arhivske predale, predale javnih map in predale skupin, dostop do arhivov na mestu, dovoljenja za mape prek Exchange Admin API in ustvarjanje sporočil, ki niso osnutki, iz MIME. Večina ciljev je v četrtem četrtletju 2026. Nekaj jih je bilo predvidenih v tretjem četrtletju, ki se je zdaj končalo, zato preverite, kaj je bilo dejansko dobavljeno, preden zasnujete rešitev okoli tega. Microsoftovo lastno opozorilo: če zmožnosti ni v načrtu, „ne računajte“ na ustreznik v Graph, preden se EWS izklopi.
Za tri zmožnosti je potrjeno, da v Graph ne bodo nikoli prišle:
- Splošni dostop do javnih map (ustvarjanje, branje, posodabljanje in brisanje map in elementov).
- Splošni dostop do poštnih predalov skupin Microsoft 365. Graph namesto tega pokriva pogovore, niti in objave skupin.
- Dostop do predalov za odkrivanje (discovery mailbox). Microsoft namesto tega napotuje na Purview eDiscovery.
Če je orodje odvisno od ene od teh zmožnosti, prenos kode ni dovolj: podatke ali potek dela je treba najprej preseliti drugam, to pa traja dlje kot ponovno pisanje.
Šestmesečni načrt
Od danes do 1. aprila 2027 je nekaj manj kot šest mesecev. Realen vrstni red:
Oktober 2026: ugotovite, kje ste.
Preverite EWSEnabled in seznam dovoljenih. Izvozite 90 dni poročila o uporabi. Preglejte seznam, ki ga je napolnil Microsoft, odstranite, kar ne sodi nanj, in dodajte redka opravila, za katera veste. Če je vaš najemnik še na Null, razmislite, ali bi seznam in True nastavili sami, namesto da čakate na Microsoftov preklop na False in šele takrat ugotovite, kaj se pokvari.
November 2026: razvrstitev. Vsakemu ID aplikacije dodelite lastnika in odgovor (ukinitev, posodobitev, ponovno pisanje, nova zasnova). Preglejte kodo. Označite vse, kar se dotika javnih map, predalov skupin ali predalov za odkrivanje, in novo zasnovo začnite zdaj. Ustvarite registracije aplikacij za Graph z omejenimi dovoljenji.
December 2026 do januar 2027: gradnja. Začnite z integracijo, ki bi jo poslovanje najprej pogrešalo. Napeljavo za sinhronizacijo in obvestila zgradite enkrat in jo uporabljajte znova. Pretvorite shranjene ID.
Februar 2027: vzporedno delovanje. Dokler EWS še deluje, staro in novo različico poganjajte proti istim poštnim predalom in primerjajte izhod. Ko je posamezna integracija sprejeta, njen ID odstranite s seznama dovoljenih. To je hkrati preizkus: počakajte 24 ur in potrdite, da se ni ustavilo nič drugega.
Marec 2027: EWS izklopite sami.
EWSEnabled nastavite na False precej pred 1. aprilom. Vse, kar ste spregledali, odpove, ko lahko EWS še vklopite nazaj. Po 1. aprilu te možnosti ni več. Četrtletnim in letnim opravilom pred tem namenoma omogočite tudi testni zagon: opravilo, ki teče ob zaključku prvega četrtletja, se bo prvič zagnalo, ko EWS ne bo več.
Kje dobiti pomoč
Težak primer je integracija, katere prvotni razvijalec je odšel. Naša storitev vzdrževanja podedovanih sistemov je narejena prav za to: preberemo obstoječo kodo, dele z EWS napišemo znova za Microsoft Graph (dovoljenja, sinhronizacija, obvestila, selitev ID) ter staro in novo različico poganjamo vzporedno, dokler se številke ne ujemajo. Če namesto tega potrebujete inženirje, ki delajo znotraj vaše ekipe, si oglejte našo storitev kadrovske okrepitve.
Če je vaše poročilo o uporabi polno ID aplikacij, ki jih nihče ne prepozna, pišite na office@c9group.dev.