← Ištekliai

Dauguma SaaS apskaitos platformų veikia vienodai: viena programa, viena duomenų bazė, visi klientai joje. Tai efektyvu tiekėjui — ir reiškia, kad visi klientai turi bendrą likimą. Šiame straipsnyje paaiškinama, kaip veikia šis modelis, kaip jame atrodo incidentas ir kuo skiriasi FiscFort.

Kaip tipinė bendra SaaS platforma saugo jūsų duomenis

Daugianuomos (multi-tenant) platformoje daug klientų („nuomininkų“) aptarnauja ta pati programa ir labai dažnai ta pati duomenų bazė. Kiekviena eilutė turi nuomininko ID, o programa prie kiekvienos užklausos prideda „tik šis nuomininkas“. Atskyrimas tarp klientų yra programos logika: jis laikosi tol, kol kiekviena užklausa, ataskaita, eksportas ir integracija teisingai taiko filtrą.

OWASP gairės dėl daugianuomos saugumo šį kompromisą nurodo tiesiai: architektūra yra ekonomiška ir šiuolaikinio SaaS pagrindas, bet viena pažeidžiamybė gali atskleisti visų nuomininkų duomenis, o klaidinga konfigūracija gali nutekinti duomenis per nuomininkų ribas (OWASP). Saugumo testuotojai sako tą patį: bendros duomenų bazės platformoje viena SQL injekcija ar vienas neteisingai apribotas filtras gali vienu metu atskleisti kiekvieną nuomininką, nes izoliacija egzistuoja tik programos sluoksnyje, o pati duomenų bazė jos nevykdo (AppSecure).

Ką reiškia „pažeista“ kiekviename modelyje

SituacijaBendra daugianuomos SaaSFiscFort atskiros aplinkos
Kur yra klientų duomenysVisų klientų bendrose lentelėse, atskirtuose nuomininko IDAtskiroje kiekvieno kliento duomenų bazėje, jo paties Odoo aplinkoje
Kas užtikrina atskyrimąProgramos kodas, kuris turi būti teisingas kiekvienoje užklausojePati duomenų bazė, konteineriai, tinklai ir prisijungimo duomenys
Klaida nuomininko filtreGali atskleisti daug ar visus klientusApsiriboja to kliento aplinka; joje nėra kitų klientų duomenų
Nutekėję duomenų bazės ar administratoriaus prisijungimo duomenysAtveria bendrą duomenų bazę: visus klientusAtveria tik vieno kliento duomenų bazę; kiti klientai naudoja skirtingus prisijungimo duomenis
Perimama vieno kliento paskyraUžpuolikas pradeda bendros platformos vidujeUžpuolikas apribotas to kliento aplinka
TalpinimasBendra debesų platformaAtskira, ES talpinama infrastruktūra

Kaip sukurtas FiscFort

  • Vienas Odoo, viena PostgreSQL duomenų bazė ir sava saugykla kiekvienam klientui. Atskyrimas yra duomenų bazės savybė, o ne filtras, kuris turi būti teisingas amžinai. Paties Odoo daugiabendrovių režimas visas bendroves laiko vienoje duomenų bazėje ir priklauso nuo to, ar įrašų taisyklės teisingos kiekviename modelyje; mes jo nenaudojame kaip tik dėl šios priežasties.
  • Savas tinklas ir ugniasienės taisyklės. Kiekvieno kliento konteineriai veikia savo fiksuotame tinkle, o kiekvieno kliento prievadai turi savas aiškias ugniasienės taisykles.
  • Savi prisijungimo duomenys. Kiekvienas klientas gauna savo duomenų bazės slaptažodį ir savus API raktus, sugeneruotus būtent jam ir niekada nenukopijuotus iš kito.
  • Savi adresai ir prisijungimai. Buhalteris prie kiekvieno kliento Odoo jungiasi jo paties URL su jo paties prisijungimu; klientas prie savo portalo jungiasi savo prisijungimu. Duomenų bazių sąrašas niekada neatskleidžiamas — Odoo klientui skirtą duomenų bazę parenka pagal serverio vardą, o nieko išvardyti neįmanoma.
Izoliacija vykdoma infrastruktūros lygiu: atskiri konteineriai, duomenų bazės, tinklai ir prisijungimo duomenys. Iki 10 klientų dalijasi vienu atskiru serveriu, priklausančiu buhalterio paketui; Enterprise plane klientas serverį turi vienas.

Kas prie ko gali prieiti

  • Klientas prisijungia prie savo portalo ir mato tik savo aplinką.
  • Buhalteris prie kiekvieno kliento Odoo jungiasi atskirai — vienas URL ir vienas prisijungimas kiekvienam klientui — todėl prieiga prie vieno kliento niekada nereiškia prieigos prie kito.
  • FiscFort operacijos turi administratoriaus prieigą kiekvienoje aplinkoje, nes to reikia atnaujinimams ir reguliaciniams pakeitimams. Šią prieigą naudoja automatiniai agentai ir darbo eigos per specialią paslaugų paskyrą, o ne prisijungiantys žmonės; jos prisijungimo duomenys kiekviename serveryje skirtingi ir saugomi užšifruoti.
  • Visi kiti neturi nieko: pačių serverių viešo adreso nėra.

Odoo viduje kiekvienas įrašas rodo, kas jį sukūrė ar paskutinis pakeitė, o užregistruotus apskaitos įrašus galima tik sugrąžinti (atšaukti), bet ne redaguoti. Odoo neregistruoja, kas tik peržiūrėjo įrašą; registruojami pakeitimai.

Perimetras aplink tai

Srautas pasiekia klientą tik per „Cloudflare“ (apsauga nuo DDoS ir žiniatinklio programų ugniasienė) ir mūsų atvirkštinio tarpinio serverio sluoksnį per HTTPS. Serveriai neturi viešo IP adreso, išorėje pasiekiami tik portalas ir Odoo, o valdymo prieiga iš interneto nepasiekiama. Kiti mūsų produktų puslapiuose aprašyti sluoksniai — įmonių ugniasienė, dvigubas saugyklos šifravimas, atsarginės ES jungtys, realaus laiko antivirusinis skenavimas ir URL stebėjimas — veikia ant viršaus. Serveriai stebimi visą parą, o operacinė sistema, „Docker“ ir tiekėjų programinė įranga atnaujinami kas savaitę, su momentine kopija ir galimybe grįžti.

Visada aktualu, nejudinant jūsų duomenų

Tas pats variklis aptarnauja Lietuvą ir Belgiją. Apibrėžtas procesas ir keli dirbtinio intelekto agentai tikrina abiejų šalių oficialius šaltinius ir kiekvieną ankstyvą rytą, 3 val., atnaujina kiekvieno kliento Odoo galiojančiomis taisyklėmis. Atnaujinimas keičia taisykles, o ne duomenis, ir taikomas kiekvieno kliento paties aplinkos viduje — vieno kliento duomenys niekada nekeliauja pas kitą.

Izoliacija turi būti infrastruktūros savybė, o ne kode duotas pažadas.

Klausimai, kuriuos verta užduoti kiekvienam SaaS tiekėjui

  • Ar mano duomenys yra duomenų bazėje, kurią dalijuosi su kitais klientais?
  • Kas sustabdo klaidą nuomininko filtre, kad ji neatskleistų visų?
  • Kiek klientų atveria vieni nutekėję prisijungimo duomenys?
  • Kas tiekėjo įmonėje gali skaityti mano duomenis, kaip ta prieiga suteikiama ir kur ji registruojama?
  • Kur talpinama platforma ir kas ją valdo?

Susiję

Duomenų buvimo ES vieta kliento apskaitos duomenims: paaiškinimas

Šaltiniai

Bendrų SaaS platformų aprašymas yra įprastas modelis; atskiri tiekėjai skiriasi.

Susipažinkite su FiscFort Bundle Užsisakyti demonstraciją