Oblak Znanja

  • Home
  • Novosti
  • Učionica
    • Informatika 5
    • Informatika 6
    • Informatika 7
    • Informatika 8
    • Logo jezik
    • WordPress
    • Microsoft Office
  • Vodiči
    • Online vodiči
    • Kratki savjeti
    • Korisne aplikacije
    • Društvene mreže
    • Multimedija
    • Zanimljivosti
✕

Microsoft (nenamjerno?) izlaže sadržaj neaktivnih poštanskih sandučića putem EWS API-ja

Microsoft Office

Microsoft (nenamjerno?) izlaže sadržaj neaktivnih poštanskih sandučića putem EWS API-ja

Tomšić Damjan 22. siječnja 2025

U posljednje vrijeme bilo je nekih nedoumica u Exchange Onlineu, uglavnom zbog nekih nadolazećih obustava. EWS odlazi, kao i neki cmdleti povezani s revizijom. S druge strane, Microsoft je bio zauzet ažuriranjem pozadine kako bi proveo ove zastare. Ali tamo gdje ima promjena, postoji i mogućnost da se uvuče neželjeno ponašanje… posebno s obzirom na loše kontrole kvalitete na koje smo navikli u usluzi u oblaku.

Namjerno ili ne, sada možemo pristupiti sadržaju Exchange Online neaktivni poštanski sandučići putem EWS API-ja. Da se osvježimo, neaktivni poštanski sandučići su poštanski sandučići koji su stavljeni na čekanje prije brisanja odgovarajućeg korisničkog računa. Postavljeni su kao alternativa tipu scenarija “pretvori ovaj poštanski sandučić u zajednički za čuvanje podataka”, u usporedbi s kojim nude neke pogodnosti. Najvažnija od njih je da su neaktivni poštanski sandučići besplatni, a podatke u njima možete čuvati neograničeno dugo.

S druge strane, krajnji korisnici ne mogu pristupiti neaktivnim poštanskim sandučićima i ne mogu se konfigurirati u klijentima e-pošte. Stoga nisu prikladni za scenarije u kojima trebate često pristupati sadržaju koji se u njima nalazi. Osim toga, neaktivni poštanski sandučići ne mogu se koristiti za primanje ili slanje poruka. Možete ih zamisliti kao “hladnu” pohranu, s podacima koji se čuvaju samo u svrhu usklađenosti, za razliku od toga da su dostupni za rad. Neaktivni poštanski sandučići transparentni su i za većinu administratorskih alata. Jedini način pristupa sadržaju unutar neaktivnog poštanskog sandučića je izvršavanje upita eDiscovery ili pretraživanja sadržaja. Administratori također mogu obnoviti ili oporaviti neaktivne poštanske sandučiće kako bi omogućili pristup njihovom sadržaju.

Dakle, to je teorija. Međutim, kako se ispostavilo, u trenutku pisanja ovog članka možemo koristiti EWS API za pristup sadržaju neaktivnih poštanskih sandučića, bez potrebe za administriranjem ili alatima za usklađenost. Pa, još uvijek morate imati konfiguriranu aplikaciju s dovoljnim dopuštenjima, posebno opseg oponašanja EWS-a. Osim toga, nema preduvjeta. Pretpostavljam da biste trebali znati i SMTP adresu dotičnog poštanskog sandučića jer nam je potrebna za bitove lažnog predstavljanja.

Da bismo ilustrirali kako možete iskoristiti EWS API za pristup sadržaju pohranjenom u neaktivnim poštanskim sandučićima, možemo upotrijebiti standardni tok: pribavite pristupni token za ExO resurs, stvorite objekt usluge Exchange i utisnite token na njega, zatim oponašajte korisnika i pokrenite neke upite prema poštanskom sandučiću. U donjem primjeru koristit ćemo dopuštenja aplikacije jer je s njima lakše rukovati provjerom autentičnosti. Osim toga, u svakom slučaju morate oponašati korisnika.

#Load the MSAL binaries
Add-Type -Path "C:\Program Files\WindowsPowerShell\Modules\MSAL\Microsoft.Identity.Client.dll"

#Obtain an access token
$app = [Microsoft.Identity.Client.ConfidentialClientApplicationBuilder]::Create("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx").WithClientSecret("xxxxxxxxxxxxxxxxxxxxxxxx").WithTenantId("tenant.onmicrosoft.com").Build()

$Scopes = New-Object System.Collections.Generic.List[string]
$Scope = "https://outlook.office365.com/.default"
$Scopes.Add($Scope)

$token = $app.AcquireTokenForClient($Scopes).ExecuteAsync().Result

#Load the EWS binaries
Add-Type -Path 'C:\Program Files\Microsoft\Exchange\Web Services\2.2\Microsoft.Exchange.WebServices.dll'

#Create Exchange service
$global:exchangeService = New-Object Microsoft.Exchange.WebServices.Data.ExchangeService([Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2013)
$exchangeService.Url = "https://outlook.office365.com/EWS/Exchange.asmx"
$exchangeService.Credentials = New-Object Microsoft.Exchange.WebServices.Data.OAuthCredentials -ArgumentList $token.AccessToken

#Impersonate the user
$exchangeService.ImpersonatedUserId = New-Object Microsoft.Exchange.WebServices.Data.ImpersonatedUserId([Microsoft.Exchange.WebServices.Data.ConnectingIdType]::SmtpAddress, "inactive@domain.com")

Od sada biste trebali moći koristiti bilo koju od standardnih EWS metoda za rad sa stavkama pohranjenima u neaktivnom poštanskom sandučiću. Na primjer, možemo nabrojati sve mape pod Top of Information trgovina preko FindFolders metoda:

$RootFolderID = New-Object Microsoft.Exchange.WebServices.Data.FolderId([Microsoft.Exchange.WebServices.Data.WellKnownFolderName]::MsgFolderRoot)
$RootFolder = [Microsoft.Exchange.WebServices.Data.Folder]::Bind($exchangeService,$RootFolderID)
$View = New-Object Microsoft.Exchange.WebServices.Data.FolderView(10000)
$View.Traversal = [Microsoft.Exchange.WebServices.Data.FolderTraversal]::Deep
$res = $RootFolder.FindFolders($View)

Snimka zaslona u nastavku daje nam brzu usporedbu između skupa mapa dobivenih gornjom metodom i skupa mapa dobivenih putem Get-MailboxFolderStatistics cmdlet (ne zaboravite koristiti –IncludeSoftDeletedRecipients prekidač). U oba slučaja primijenio sam filtar za prikaz samo mapa sa stavkama različitim od nule.

Na isti način možete iskoristiti FindItems metoda za dohvaćanje stavki pohranjenih unutar zadane mape unutar neaktivnog poštanskog sandučića. Ovo uključuje stavke u RecoverableItems podstablo. Na primjer, za upit o sadržaju Čišćenja mapu, možemo upotrijebiti nešto ovako:

$SearchFilter = New-Object Microsoft.Exchange.WebServices.Data.SearchFilter+IsEqualTo([Microsoft.Exchange.WebServices.Data.EmailMessageSchema]::ItemClass, "IPM.Note")
$View = New-Object Microsoft.Exchange.WebServices.Data.ItemView(1000) 
$Result = $exchangeService.FindItems([Microsoft.Exchange.WebServices.Data.WellKnownFolderName]::RecoverableItemsPurges,$SearchFilter,$View)

$Result.Items[0]
$Result.Items[0].Load()
$Result.Items[0].Body.Text

Imajte na umu da Vrhunska trgovina informacijama/korisnički dostupno podstablo moglo bi biti malo neplodno, ovisno o obradi politike zadržavanja i tome je li poštanski sandučić imao omogućenu mrežnu arhivu (budući da se obrada MRM-a na neaktivnim poštanskim sandučićima još uvijek događala nekada). U svakom slučaju, kao što je prikazano u gornjem primjeru, možemo koristiti istu metodu za pokrivanje sadržaja RecoverableItems podstablo, gdje se čuvaju sve stavke na čekanju. Slično tome, ako poštanski sandučić ima mrežnu arhivu, možete postaviti upit ArchiveRecoverableItemsRoot umjesto toga podstablo.

Također je vrijedno napomenuti da pristup nije ograničen na operacije samo za čitanje. Zapravo, možete premještati i brisati postojeće stavke i mape, stvarati nove i tako dalje. Dobra vijest je da se provjere sukladnosti i kontrole i dalje primjenjuju – ne možete ukloniti stavke iz Čišćenja mapu na primjer. Na istoj napomeni, možete koristiti (većinu) drugih EWS metoda, kao što je GetDelegates jedan. Pomalo zabrinjavajuća činjenica je da možete pristupiti i sadržaju revizije folder, što do sada nije bilo moguće.

Za razliku od korištenja EWS metoda, nijedna od gore navedenih neobičnosti ne može se reproducirati putem Graph API-ja. Međutim, zanimljivo je da neki od poziva upućenih putem Grapha rezultiraju 504 Gateway Timeout odgovor, što ostavlja prostora za tumačenje. Pa opet, Graph API nije poznat po tome što je vrlo dosljedan u odjelu za obradu pogrešaka, zar ne…

Dakle, ukratko, nešto sumnjivo se događa s EWS-om u Exchange Onlineu, budući da vam API sada omogućuje pristup sadržaju koji je povijesno bio nedostupan. Svi znakovi upućuju na to da se radi o nenamjernoj promjeni, koja iskreno nema smisla, s obzirom na nadolazeću obustavu podrške za EWS API u usluzi. Bez obzira na razlog, ostaje činjenica da trenutno možemo koristiti EWS API metode za pristup sadržaju pohranjenom unutar neaktivnih poštanskih sandučića, za što čvrsto vjerujem da bi korisnici Microsofta 365 trebali biti svjesni!

PS Ako radije ne koristite primjere temeljene na kodu, dobri stari EWS urednik alat bi vam trebao dati jednostavan način da to testirate.

Web izvor

Povezani sadržaji

  • Što je LinkedIn i kako to funkcionira?Što je LinkedIn i kako to funkcionira?
  • 5 Savjeta za upravljanje Linux korisničkim računima5 Savjeta za upravljanje Linux korisničkim računima
  • Ne otkažite Netflix: Koristio sam ove tajne kodove za otključavanje cijelog kataloga emisijaNe otkažite Netflix: Koristio sam ove tajne kodove za otključavanje cijelog kataloga emisija
  • IP Copilot želi upotrijebiti AI kako bi vaše Slack poruke pretvorio u patenteIP Copilot želi upotrijebiti AI kako bi vaše Slack poruke pretvorio u patente
  • OnePlus nudi 100 dolara popusta na svoj najnoviji vodeći model (i dijeli besplatne slušalice)OnePlus nudi 100 dolara popusta na svoj najnoviji vodeći model (i dijeli besplatne slušalice)
  • Izrada web stranica – Elementi stranice

Previous Article

Financiranje startupa za igre na sreću palo je u četvrtom kvartalu 2024. | Konvoj

Next Article

E&, DE-CIX stvaraju bliskoistočnu SmartHub internetsku razmjenu

Posljednje objave

Factify želi preskočiti PDF i .docx dajući digitalnim dokumentima vlastiti mozak

Factify želi preskočiti PDF i .docx dajući digitalnim dokumentima vlastiti mozak

Sat Sudnjeg dana sada je 85 sekundi do ponoći. Evo što to znači

Sat Sudnjeg dana sada je 85 sekundi do ponoći. Evo što to znači

Najjača sigurnosna značajka vašeg Android telefona isključena je prema zadanim postavkama i skrivena – uključite je sada

Novosti

  • Factify želi preskočiti PDF i .docx dajući digitalnim dokumentima vlastiti mozak 29. siječnja 2026
  • Sat Sudnjeg dana sada je 85 sekundi do ponoći. Evo što to znači 28. siječnja 2026
  • Najjača sigurnosna značajka vašeg Android telefona isključena je prema zadanim postavkama i skrivena – uključite je sada 28. siječnja 2026
  • Google lansira Google AI Plus plan za 7,99 USD mjesečno 28. siječnja 2026
  • “Kao da nikad nije postojao” – Glumac za kojeg se pretpostavlja da je Farah u remakeu Prince of Persia: Sands of Time otkrio je da je igra otkazana na internetu 28. siječnja 2026
  • AO implementira izvornu bežičnu mrežu Mist AI 28. siječnja 2026
  • Contextual AI pokreće Agent Composer kako bi poslovni RAG pretvorio u AI agente spremne za proizvodnju 27. siječnja 2026
  • Hvatanje trenutka kada je bijeli patuljak eksplodirao 27. siječnja 2026
  • Zašto ne kupujem ‘AI slušalice’ dok ne dobiju ove 3 specifične nadogradnje 27. siječnja 2026
  • Ažuriranje Google Play usluga uključuje podršku za sigurnosni ključ CTAP2, više 27. siječnja 2026

O nama

Oblak Znanja je blog edukativnog karaktera i namijenjen je svima koji žele unaprijediti svoje znanje iz područja računala i interneta.

Naš cilj je edukacija i pisanje zanimljivih objava kojima ćemo zajedno učiti i informirati se o svijetu informatike.

Na ovom blogu zabranjeno je svako kopiranje sadržaja bez dozvole autora.

Oblak Znanja

Oznake

besplatni powerpoint predlošci društvene mreže excel facebook firefox gmail google+ Google Chrome halloween halloween walpapers internet kartice linkedin profil linux microsoft Mozilla Firefox ms powerpoint oblak znanja office 2007 office savjeti online kupovina pick powerpoint powerpoint predložak powerpoint savjeti rastući niz savjet slike za radnu površinu spremanje datoteka strani jezik tipkovnicke kratice twitter twitter alati uređivanje slika wallpaper clock web preglednik windows windows 7 windows aplikacije windows vista word word 2007 word savjeti youtube savjeti youtube tipkovničke kratice