Natív felhőalapú szolgáltatás
A SabeeApp egy felhőalapú rendszer, aminek számos előnye van. Csak internetkapcsolatra, egy webböngészőre és egy aktív SabeeApp fiókra van szükséged.
A SabeeApp nem telepíthető számítógépre, így bizonyos funkciók és szolgáltatások másképp működnek, mint a régi, helyben telepített szoftvereknél. A szoftver nem fizikai szerveren fut, hanem az AWS (Amazon Web Services) felhőinfrastruktúráján, egy SaaS (Software as a Service) platformon, amelyet alább részletezünk.
Multi-tenant infrastruktúra
A SabeeApp úgynevezett megosztott adatbázist és kódbázist használ – más szóval multi-tenant infrastruktúrát biztosít. Ez azt jelenti, hogy több ügyfél csatlakozik egy adatbázishoz, és minden ügyfelünk ugyanazt a kódbázist és telepítési típust használja. Ennek egyik legfőbb előnye, hogy minden ügyfél a szoftver legfrissebb verzióját használja.
Ez a struktúra semmilyen módon nem veszélyezteti a biztonságot. A SabeeApp-ban különböző felhasználói jogosultságokat is használunk, és egy megosztott multi-tenant rendszerben az ügyfelek külön felhasználói fiókként azonosíthatók.
Infrastruktúra
A SabeeApp-ot az AWS (Amazon Web Services) felhőrendszere biztosítja az írországi Amazon adatközpontban. Az AWS által használt összes szolgáltatás több zónára épül, így ha az egyik zóna meghibásodik, a rendszer többi része át tudja venni az irányítást.
Harmadik féltől származó szolgáltatók
- Beanstalk (svn, git) — forráskód megosztás
- GitHub — forráskód megosztás
- Google Analytics — elemzési célokra
- Twilio — SMS szolgáltató
- Mandrillapp, Mailchimp — e-mail szolgáltatás
Technológiai háttér
A SabeeApp-nál a következő programozási nyelveket és keretrendszereket használjuk: PHP, JavaScript és Bootstrap. A fejlesztés három különálló szakaszon megy keresztül:
- Development — fejlesztési szakasz, kívülről nem elérhető
- Test — tesztelési szakasz, kívülről csak a SabeeApp belső használatára érhető el
- Production — éles szakasz
Adatbázis-biztonság, adatbiztonság, katasztrófa-helyreállítás
Mivel ez egy felhőalapú rendszer, adatvesztés léphet fel, ha hiba vagy probléma merül fel az adatbázissal vagy a fájlrendszerrel kapcsolatban, ahol a PDF-eket és egyéb dokumentumokat tároljuk. A következő protokollokat és megoldásokat alkalmazzuk ennek a kockázatnak a minimalizálására.
- A valós adatokat több adatbázisban tároljuk a folyamatosan replikált adatbázisnak köszönhetően.
- Minden éjjel biztonsági másolat készül, amely percek alatt visszaállítható, és ebből az utolsó 9 másolatot tároljuk.
- Az RDS és az EC2 gépek közötti kommunikáció titkosított csatornán keresztül történik.
- Az adatbázis csak a belső rendszerből érhető el, vagy az SSH rendszeren keresztül a fő szerverhez csatlakozva.
- Az adatbázisban lévő érzékeny adatokat különböző titkosítással tároljuk, például a bankkártyákat kétkulcsos titkosítással, a jelszavakat pedig sózott SHA-512 titkosítással.
- Az adatbázis három zónára van osztva, és ha az egyik zóna meghibásodik, egy másik zóna automatikusan átveszi a helyét.
Incidenskezelési eljárás
A SabeeApp-nál minden incidenst egy szigorú protokoll követésével oldunk meg, majd dokumentáljuk. Ez a protokoll minden SabeeApp alkalmazott számára elérhető belső használatra.
- A probléma azonosítása
- A probléma kommunikálása a teljes SabeeApp csapat felé
- Az incidenskoordinátor kijelölése, ha szükséges
- A probléma kommunikálása az ügyfél felé, ha az incidens egy ügyfelet érint
- A probléma elhárítása
- Az ismétlődés elkerülése – a protokoll ellenőrzése és módosítása, ha szükséges
- Adatok és forráskód helyreállítása, ha szükséges
- Szkriptek készítése és futtatása, ha az adatok cseréjére vagy módosítására van szükség
- Technikai partnerek tájékoztatása, ha szükséges
- Ügyfelek tájékoztatása az incidens megoldásáról
- Az incidens dokumentálása
Infrastruktúra biztonsága
Az AWS felhőrendszernek köszönhetően az adminisztráció, a frissítés és a szerverbiztonság az Amazon mérnökeinek felelőssége. A támadási felület a lehető legkisebbre van csökkentve a nagy mérnöki és biztonsági csapatuknak köszönhetően.
Az AWS bejelentkezési adatokat csak alapos indokkal adjuk ki a kollégáknak, és csak szigorú biztonsági intézkedések mellett használhatják azokat – szigorú jelszóházirend és MFA (többfaktoros hitelesítés) mellett.
- Egy harmadik fél bevonásával rendszeresen futtatunk fekete és szürke dobozos behatolásvizsgálatokat a rendszer sebezhetőségeinek azonosítására.
- Rendszeresen elemezzük a kód biztonságát és minőségét a SonarQube eszközzel.
- Minden adatforgalom legalább TLS 1.2 titkosítással van ellátva, és minden általunk tárolt adat titkosított.
- A SabeeApp által tárolt összes jelszó hashelt – soha nem tárolunk jelszót vagy titkos adatot egyszerű szövegként.
- A belső rendszer teljesítményének naplózása többszintű.
Személyzeti biztonság kezelése
- Minden kolléga munkaszerződése tartalmaz információkat az adatkezelésről és egy titoktartási megállapodást. Minden új kolléga képzése magában foglalja az adatvédelmi és biztonsági oktatást.
- Az AWS-hez való hozzáférést csak alapos indokkal biztosítjuk, és csak ott, ahol a munkához szükséges.
- Mérnökeink csak olvasási joggal rendelkeznek az éles adatbázisunkhoz.
- Belső használatra és ahol csak lehetséges, kizárólag az 1Password által kezelt, nagy biztonságú jelszavakat használunk, lehetőség szerint MFA azonosítással.
- Kollégáink rendszeresen részt vesznek biztonsági és adatbiztonsági képzéseken.
Üzemeltető cégek
A SabeeApp csoportot a következő jogi személyek üzemeltetik.
Tanúsítványok
- PCI DSS Level 1 AOC
- NTAK tanúsítvány
- VIZA tanúsítvány
