Debesyje veikianti paslauga
„SabeeApp" sukurta veikti debesyje, o tai suteikia daug privalumų. Viskas, ko Jums reikia – interneto ryšys, interneto naršyklė ir aktyvi „SabeeApp" paskyra.
„SabeeApp" sistemos nereikia diegti kompiuteryje, todėl tam tikros funkcijos ir paslaugos veikia kitaip nei senesnėse vietinėse programose. Programinė įranga veikia ne fiziniame serveryje, o AWS („Amazon Web Services") debesų infrastruktūroje – SaaS (programinės įrangos kaip paslaugos) platformoje, kuri detaliau aprašyta toliau.
Daugelio nuomininkų (angl. multi-tenant) infrastruktūra
„SabeeApp" naudoja bendrą duomenų ir kodo bazę – kitaip tariant, veikia pagal daugelio nuomininkų infrastruktūrą. Tai reiškia, kad prie vienos duomenų bazės jungiasi daugiau klientų, o visi mūsų klientai naudojasi ta pačia kodo baze ir diegimo tipu. Vienas pagrindinių privalumų – kiekvienas klientas visada naudojasi pačia naujausia programinės įrangos versija.
Ši struktūra jokiu būdu nemažina saugumo. „SabeeApp" sistemoje taip pat taikome atskiras naudotojo teises, o bendroje daugelio nuomininkų sistemoje kiekvienas klientas identifikuojamas kaip atskira naudotojo paskyra.
Infrastruktūra
„SabeeApp" veikia AWS („Amazon Web Services") debesų sistemoje, jų „Amazon" duomenų centre Airijoje. Visos AWS naudojamos paslaugos remiasi kelių zonų principu, todėl sutrikus vienos zonos veiklai, likusi sistemos dalis perima jos darbą.
Trečiųjų šalių paslaugų teikėjai
- Beanstalk (svn, git) – išeities kodo bendrinimas
- GitHub – išeities kodo bendrinimas
- Google Analytics – analitikos tikslais
- Twilio – SMS pranešimų teikėjas
- Mandrillapp, Mailchimp – el. laiškų siuntimo paslauga
Technologijų paketas
„SabeeApp" sistemoje naudojame šias programavimo kalbas ir karkasus: PHP, JavaScript ir Bootstrap. Kūrimo procesas vyksta trimis atskirais etapais:
- Kūrimas (angl. Development) – kūrimo etapas, neprieinamas iš išorės
- Testavimas (angl. Test) – testavimo etapas, išoriškai pasiekiamas tik „SabeeApp" vidaus reikmėms
- Gamyba (angl. Production) – veikianti sistema
Duomenų bazių ir duomenų saugumas, veiklos atkūrimas
Kadangi tai yra debesų sistema, duomenų praradimas galėtų įvykti sutrikus duomenų bazės veiklai arba bylų sistemai, kurioje saugomi PDF ir kiti dokumentai. Kad ši rizika būtų kuo mažesnė, taikome šiuos protokolus ir sprendimus.
- Realaus laiko duomenys saugomi keliose duomenų bazėse, nes duomenų bazė yra nuolat replikuojama.
- Kiekvieną naktį atliekama atsarginė kopija, kurią galima atkurti per kelias minutes; saugome paskutines 9 kopijas.
- Ryšys tarp RDS ir EC2 mašinų vyksta šifruotu kanalu.
- Prie duomenų bazės galima prisijungti tik iš vidinės sistemos arba per SSH sistemą prisijungus prie pagrindinio serverio.
- Jautrūs duomenys duomenų bazėje saugomi naudojant skirtingą šifravimą, pavyzdžiui, mokėjimo kortelės šifruojamos 2 raktų šifravimu, o slaptažodžiai – SHA-512 šifravimu su druska.
- Duomenų bazė yra padalinta į tris zonas: sutrikus vienos zonos veiklai, kita zona automatiškai perima jos funkcijas.
Incidentų valdymo tvarka
Kiekvienas incidentas „SabeeApp" sistemoje sprendžiamas pagal griežtą protokolą ir vėliau dokumentuojamas. Šis protokolas yra prieinamas visiems „SabeeApp" darbuotojams vidiniam naudojimui.
- Problemos nustatymas
- Informavimas apie problemą visai „SabeeApp" komandai
- Incidento koordinatoriaus paskyrimas, jei reikia
- Informacijos pateikimas klientui, jei incidentas susijęs su klientu
- Problemos pašalinimas
- Pakartotinių atvejų prevencija – protokolo tikrinimas ir keitimas, jei reikia
- Duomenų ir išeities kodo atkūrimas prireikus
- Scenarijų kūrimas ir vykdymas, jei reikia pakeisti ar koreguoti duomenis
- Techninių partnerių informavimas, jei reikia
- Klientų informavimas apie incidento išsprendimą
- Incidento dokumentavimas
Infrastruktūros saugumas
Kadangi naudojama AWS debesų sistema, už administravimą, atnaujinimus ir serverių saugumą atsako „Amazon" inžinieriai. Dėl jų didelės inžinierių ir saugumo komandos atakos paviršius sumažinamas iki minimumo.
Prisijungimo prie AWS duomenys kolegoms suteikiami tik esant pagrįstam poreikiui, o jais naudotis leidžiama tik taikant griežtas saugumo priemones – griežtą slaptažodžių politiką ir MFA.
- Padedant trečiosioms šalims, reguliariai atliekame „juodosios ir pilkosios dėžės" įsiskverbimo testus, kad nustatytume sistemos pažeidžiamumus.
- Nuolat analizuojame kodo saugumą ir kokybę naudodami SonarQube įrankį.
- Visas duomenų srautas šifruojamas mažiausiai TLS 1.2 protokolu, o kiekvienas mūsų saugomas duomenų vienetas yra šifruojamas.
- Visi „SabeeApp" saugomi slaptažodžiai yra maišomi (angl. hashed) – jokių slaptažodžių ar slaptų duomenų niekada nesaugome kaip paprasto teksto.
- Vidinio sistemos veikimo žurnalų vedimas yra daugiapakopis.
Darbuotojų saugumo valdymas
- Kiekvieno kolegos darbo sutartyje numatytos nuostatos dėl duomenų tvarkymo ir pasirašytas įsipareigojimas saugoti paslaptį. Į kiekvieno naujo kolegos mokymus įtraukti duomenų apsaugos ir saugumo mokymai.
- Prieiga prie AWS suteikiama tik esant pagrįstam poreikiui ir tik tada, kai tai būtina darbui.
- Mūsų inžinieriai turi tik skaitymo teises į mūsų veikiančią duomenų bazę.
- Vidinėms reikmėms ir visur, kur įmanoma, naudojame tik aukšto saugumo lygio slaptažodžius, valdomus su 1Password, bei MFA autentifikavimą, kur tai palaikoma.
- Mūsų kolegos reguliariai dalyvauja saugumo ir duomenų saugumo mokymuose.
Valdančiosios įmonės
„SabeeApp" grupės veiklą užtikrina šie juridiniai asmenys.
Sertifikatai
- PCI-DSS 1 lygio AOC
- NTAK sertifikatas
- VIZA sertifikatas
