JMAP - avatud protokoll asendab IMAP'i e-kirjade vahetamisel

Kuu alguses arutleti Hacker News'is aktiivselt JMAP protokolli ĂŒle, mille arendust juhib IETF.Otsustasime rÀÀkida, miks see on vajalik ja kuidas see töötab.

JMAP - avatud protokoll asendab IMAP'i e-kirjade vahetamisel
/ PxHere / PD

Mis ei sobinud IMAP-iga?

Protokoll IMAP tutvustati 1986. aastal. Paljud asjad, mis on standardses, ei ole tĂ€napĂ€eval enam aktuaalsed. NĂ€iteks suudab protokoll tagastada meili ridade arvu ja kontrollsummad, MD5 – see funktsionaalsus ei ole tĂ€napĂ€evastes postiklientides praktiliselt kasutusel.

Teine probleem on seotud liikluse tarbimisega. IMAP-i puhul salvestatakse kirjad serverisse ja sĂŒnkroonitakse perioodiliselt kohalike klientidega. Kui mingil pĂ”hjusel kasutaja seadme koopia "rikkub", tuleb kogu post uuesti sĂŒnkroniseerida. TĂ€napĂ€eva maailmas, kus serveriga vĂ”ivad olla ĂŒhendatud tuhanded mobiilseadmed, toob selline lĂ€henemine kaasa suurenenud liiklustarbimise ja arvutusressursside kulu.

Probleemid tekivad mitte ainult protokolliga, vaid ka postiklientidega, mis sellega töötavad. Alates IMAP-i loomise hetkest on see korduvalt erinevatele ĂŒlevaatusele allutatuna, – tĂ€napĂ€eval kehtiv versioon on IMAP4. Samuti on olemas palju valikuliselt laiendusi – veebis avaldatud on kokku ĂŒheksakĂŒmmend RFC-d lisadega. Üks vĂ€rskemaid on RFC8514, esitatud 2019. aastal.

Paljud ettevÔtted pakuvad samas enda patenteeritud lahendusi, mis peaksid hÔlbustama IMAP-i kasutamist vÔi isegi selle tÀielikku asendamist: Gmail, Outlook, Nylas. Tulemuseks on see, et olemasolevad postiklientid toetavad vaid mÔningaid kÔigist saadavalolevatest funktsioonidest. Selline mitmekesisus toob kaasa turu segmenteerimise.

"Veelgi enam, tĂ€napĂ€evane postiklient ei tohiks lihtsalt sĂ”numeid edastada, vaid olema vĂ”imeline töötama kontaktidega ja sĂŒnkroniseeruma kalendri, – ĂŒtleb Sergei Belkin, IaaS-teenuse pakkuja arenduse juht. 1cloud.ru– TĂ€napĂ€eval kasutatakse nende eesmĂ€rkide saavutamiseks kol mandate protokolle, nagu LDAP, CardDAV ja CalDAV. Selline lĂ€henemine raskendab tulekahjusĂŒttimise seadistamist ettevĂ”tte vĂ”rkudes ja avab uusi kĂŒberrĂŒnnakute suundi."

MĂ€rkeeritud probleemide lahendamiseks on loodud JMAP. Seda arendavad FastMaili spetsialistid Interneti insenerinĂ”ukogu (IETF) juhendamisel. Protokoll töötab HTTPS-i peal, kasutab JSON-i (seetĂ”ttu sobib see mitte ainult e-kirjade vahetamiseks, vaid ka mitmete ĂŒlesannete lahendamiseks pilves) ja lihtsustab e-posti halduse korraldamist mobiilsĂŒsteemides. Lisaks e-kirjade töötlemisele on JMAP-is olemas vĂ”imalus lisada laiendusi kontaktide ja kalendri-planeerija haldamiseks.

Uue protokolli omadused

JMAP on olekuta protokoll (stateless) ja ei vaja pidevat ĂŒhendust postiserveriga. See omadus lihtsustab tööd ebastabiilsetes mobiilsetes vĂ”rkudes ja sÀÀstab seadmete akku.

E-kiri JMAP-is esitatakse JSON-struktuuris. See sisaldab kogu teavet sÔnumi kohta RFC5322 (Internet Message Format), mis vÔib olla vajalik postirakendustele. Arendajate sÔnul peaks selline lÀhenemine lihtsustama klientide loomist, kuna potentsiaalsete keerukuste lahendamise eest (mis on seotud MIME, pealkirjade lugemise ja kodeerimisega) vastutab server.

Kliendi serveriga suhtlemiseks kasutatakse API-d. Selleks koostab ta autentitud POST-pĂ€ringu, milles omadused on kirjeldatud JMAP seansi objektis. PĂ€ring on formaadis application/json ja koosneb ĂŒhest JSON-i pĂ€ringu objektist. Server genereerib samuti ĂŒhe vastuse objekti.

Uues spetsiifikatsioon (punkt 3) autorid toovad jÀrgmise nÀite pÀringust:

{
  "using": [ "urn:ietf:params:jmap:core", "urn:ietf:params:jmap:mail" ],
  "methodCalls": [
    [ "method1", {
      "arg1": "arg1data",
      "arg2": "arg2data"
    }, "c1" ],
    [ "method2", {
      "arg1": "arg1data"
    }, "c2" ],
    [ "method3", {}, "c3" ]
  ]
}

Allpool on nÀide vastusest, mille server genereerib:

{
  "methodResponses": [
    [ "method1", {
      "arg1": 3,
      "arg2": "foo"
    }, "c1" ],
    [ "method2", {
      "isBlah": true
    }, "c2" ],
    [ "anotherResponseFromMethod2", {
      "data": 10,
      "yetmoredata": "Tere"
    }, "c2"],
    [ "error", {
      "type":"unknownMethod"
    }, "c3" ]
  ],
  "sessionState": "75128aab4b1b"
}

TĂ€pse JMAP spetsifikatsiooni koos rakendamise nĂ€idetega vĂ”ib leida ametlikul kodulehe projektist. Seal on autorid avalikustanud spetsifikatsioonide kirjeldused JMAP Contacts ja JMAP Calendars – need on suunatud kalendrite ja kontaktide nimekirjade haldamiseks. Autorite sĂ”nul on Contacts ja Calendars eraldi dokumentidesse vĂ€lja tĂ”stetud, et neid saaks tĂ€iendada ja standardiseerida sĂ”ltumata "tuumast". JMAP-i lĂ€htekoodid on saadaval sĂ”nadele autorid, Contacts ja Calendars on eraldi dokumentidena, et neid saaks tĂ€iendada ja standardiseerida sĂ”ltumatult "tuumast". JMAP-i lĂ€htekoodid on saadaval GitHubi hoidlast.

JMAP - avatud protokoll asendab IMAP'i e-kirjade vahetamisel
/ PxHere / PD

Prospects

Kuigi standardi arendamine ei ole ametlikult veel lĂ”petatud, kasutatakse seda juba tootmisringkeskkondades. NĂ€iteks on avatud postiserveri loojad Cyrus IMAP rakendanud selle JMAP versiooni. FastMail arendajad arendajad muusikateenusest Spotify. Muudetud Spotify Lite nĂ€eb vĂ€lja nagu tĂ€isversioon, kuid on ilma paljusid seadeid ja ei luba salvestada lugusid kuulamiseks ilma internetiĂŒhenduseta. esitasid uue protokolli serveriraamistiku Perlis ja JMAP autorid tutvustasid proksi-server.

On oodata, et tulevikus tekib ĂŒha rohkem JMAP-pĂ”hiseid projekte. NĂ€iteks on teatud tĂ”enĂ€osus, et avatud protokollile ĂŒleminevad Open-Xchange arendajad, kes loovad Linuxi sĂŒsteemide IMAP-serveri. Kommuuni liikmed paluvad neil hĂŒvasti jĂ€tta IMAP-st paluvad osalejad kogukonnas, mis on moodustunud ettevĂ”tte tööriistade ĂŒmber.

IETF ja FastMail arendajad ĂŒtlevad, et ĂŒha rohkem kasutajaid nĂ€evad vajadust uue avatud sĂ”numivahetuse standardi jĂ€rele. JMAP autorid loodavad, et tulevikus hakkavad rohkem ettevĂ”tteid seda protokolli juurutama.

Meie tÀiendavad ressursid ja allikad:

JMAP - avatud protokoll asendab IMAP'i e-kirjade vahetamisel Kuidas kontrollida kĂŒpsiseid GDPR-iga vastavusse viimiseks — aitab uus avatud tööriist.

JMAP - avatud protokoll asendab IMAP'i e-kirjade vahetamisel Kuidas sÀÀsta rakenduste programmeerimise liidese abil
JMAP - avatud protokoll asendab IMAP'i e-kirjade vahetamisel DevOps pilveteenuses nÀitel 1cloud.ru
JMAP - avatud protokoll asendab IMAP'i e-kirjade vahetamisel Pilve arhitektuuri evolutsioon 1cloud

JMAP - avatud protokoll asendab IMAP'i e-kirjade vahetamisel Potentsiaalsed rĂŒnnakud HTTPS-i vastu ja meetodid nende vastu kaitsmiseks
JMAP - avatud protokoll asendab IMAP'i e-kirjade vahetamisel Kuidas kaitsta serverit internetis: 1cloud.ru kogemus
JMAP - avatud protokoll asendab IMAP'i e-kirjade vahetamisel LĂŒhike Ă”pik: mis on pidev integreerimine

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster