Doğuştan bulut tabanlı hizmet
SabeeApp tamamen bulut tabanlı olarak geliştirilmiştir ve bu yapının sunduğu pek çok avantaj bulunur. İhtiyacınız olan tek şey bir internet bağlantısı, bir web tarayıcısı ve aktif bir SabeeApp hesabıdır.
SabeeApp bir bilgisayara yerel olarak kurulamaz; bu nedenle belirli fonksiyonlar ve hizmetler, eski tip yerinde kurulu yazılımlardan farklı çalışır. Yazılım fiziksel bir sunucuda değil, aşağıda ayrıntıları verilen bir SaaS (Hizmet Olarak Yazılım) platformu olan AWS (Amazon Web Services) bulut altyapısında çalışır.
Çok kiracılı (multi-tenant) altyapı
SabeeApp, paylaşımlı veritabanı ve kod tabanı mimarisini kullanır; diğer bir deyişle çok kiracılı (multi-tenant) bir altyapı üzerinde çalışır. Bu yapı sayesinde birden fazla müşteri tek bir veritabanına bağlanır ve tüm müşterilerimiz aynı kod tabanından ve kurulum modelinden yararlanır. En büyük avantajlardan biri, her müşterinin yazılımın her zaman en güncel sürümünü kullanmasıdır.
Bu mimari güvenliği hiçbir şekilde riske atmaz. SabeeApp içinde gelişmiş kullanıcı izinleri uygulanır; paylaşımlı çok kiracılı sistemde her müşteri tamamen bağımsız ve ayrıştırılmış bir kullanıcı hesabı olarak tanımlanır.
Altyapı
SabeeApp, AWS'nin (Amazon Web Services) İrlanda'daki Amazon veri merkezinde yer alan bulut altyapısı üzerinden hizmet verir. AWS tarafından sağlanan tüm hizmetler çoklu bölge (multi-zone) mimarisine dayanır; böylece bölgelerden birinde kesinti yaşansa bile sistemin geri kalanı kesintisiz şekilde çalışmayı devralır.
Üçüncü taraf hizmet sağlayıcıları
- Beanstalk (svn, git) — kaynak kodu paylaşımı
- GitHub — kaynak kodu paylaşımı
- Google Analytics — analiz amaçlı kullanım
- Twilio — SMS sağlayıcısı
- Mandrillapp, Mailchimp — e-posta gönderim hizmeti
Teknoloji yığını
SabeeApp bünyesinde şu programlama dilleri ve altyapılar kullanılmaktadır: PHP, JavaScript ve Bootstrap. Yazılım geliştirme süreci üç bağımsız aşamadan geçer:
- Development — geliştirme ortamı, dış erişime kapalıdır
- Test — test ortamı, yalnızca SabeeApp dahili kullanımı için dış erişime açıktır
- Production — canlı çalışma ortamı
Veritabanı güvenliği, veri güvenliği ve felaket kurtarma
Bulut tabanlı bir sistemde, veritabanından veya PDF'lerin ve diğer belgelerin barındırıldığı dosya sisteminden kaynaklanan bir problem yaşanması durumunda veri kaybı riski oluşabilir. Bu riski en aza indirmek için aşağıdaki protokoller ve çözümler uygulanmaktadır.
- Sürekli replike edilen veritabanı yapısı sayesinde canlı veriler birden fazla veritabanında eşzamanlı depolanır.
- Her gece dakikalar içinde geri yüklenebilen bir güvenlik yedeği alınır ve sistemde her zaman son 9 kopya saklanır.
- RDS ile EC2 sanal sunucuları arasındaki iletişim uçtan uca şifrelenmiş bir kanal üzerinden gerçekleşir.
- Veritabanına yalnızca dahili ağ üzerinden veya ana sunucuya SSH bağlantısı kurularak erişilebilir.
- Veritabanındaki hassas veriler farklı şifreleme yöntemleriyle korunur; örneğin kredi kartı bilgileri 2 anahtarlı şifreleme ile, parolalar ise tuzlanmış (salted) SHA-512 şifreleme ile saklanır.
- Veritabanı üç ayrı bölgeye yayılmıştır; bölgelerden birinde sorun oluştuğunda diğer bölge operasyonu otomatik olarak devralır.
Olay yönetimi prosedürü
SabeeApp'ta her teknik olay katı bir protokole bağlı kalınarak çözüme kavuşturulur ve ardından eksiksiz biçimde belgelenir. Bu prosedür protokolü, şirket içi kullanım için tüm SabeeApp çalışanlarının erişimine açıktır.
- Sorunun tespiti
- Sorunun tüm SabeeApp ekibine bildirilmesi
- Gerektiğinde olay koordinatörünün belirlenmesi
- Olay bir müşteriyi etkiliyorsa durumun müşteriye iletilmesi
- Sorunun giderilmesi
- Tekrarın önlenmesi — protokolün incelenmesi ve gerekirse güncellenmesi
- İhtiyaç halinde veri ve kaynak kodunun geri yüklenmesi
- Verilerin yenilenmesi veya düzenlenmesi gerekiyorsa betiklerin hazırlanıp çalıştırılması
- Gerektiğinde teknik iş ortaklarının bilgilendirilmesi
- Müşterilere olayın çözümü hakkında bilgi verilmesi
- Olayın ayrıntılı olarak raporlanıp belgelenmesi
Altyapı güvenliği
AWS bulut altyapısı sayesinde sistem yönetimi, güncellemeler ve sunucu güvenliği Amazon mühendislerinin sorumluluğundadır. Geniş mühendislik ve güvenlik ekipleri sayesinde olası saldırı yüzeyi minimum düzeyde tutulur.
AWS yönetim yetkileri ekip üyelerine yalnızca gerekçeli ihtiyaç doğrultusunda tanımlanır ve erişimler katı parola politikası ile çok faktörlü kimlik doğrulama (MFA) gibi sıkı güvenlik önlemleri altında gerçekleşir.
- Sistem açıklarını erkenden belirlemek amacıyla üçüncü taraf uzmanlar desteğiyle düzenli olarak kara kutu ve gri kutu sızma testleri gerçekleştirilir.
- Kod güvenliği ve kalitesi SonarQube aracıyla periyodik olarak analiz edilir.
- Tüm veri trafiği en az TLS 1.2 protokolüyle şifrelenir ve barındırılan tüm veriler şifreli olarak depolanır.
- SabeeApp tarafından saklanan tüm parolalar özetlenir (hash) — hiçbir parola veya gizli bilgi asla düz metin halinde tutulmaz.
- Dahili sistem performans günlükleri (log) çok katmanlı yapıda tutulur.
Personel güvenliği yönetimi
- Tüm çalışanların iş sözleşmelerinde veri işleme yükümlülükleri ve gizlilik taahhütleri yer alır. Her yeni çalışanın oryantasyon süreci veri koruma ve güvenlik eğitimlerini kapsar.
- AWS ortamına bağlantı yetkisi yalnızca somut bir iş gereksinimi olduğunda tanımlanır.
- Geliştiricilerimiz canlı veritabanında yalnızca okuma yetkisine sahiptir.
- Dahili kullanımda ve uygulanabilir her alanda yalnızca 1Password üzerinden yönetilen yüksek güvenlikli parolalar ve mümkün olan durumlarda MFA doğrulaması kullanılır.
- Ekip üyelerimiz düzenli aralıklarla güvenlik ve veri güvenliği eğitimlerine katılır.
Operasyon şirketleri
SabeeApp grubu faaliyetlerini aşağıdaki tüzel kişilikler aracılığıyla yürütmektedir.
Sertifikalar
- PCI-DSS Level 1 AOC
- NTAK sertifikası
- VIZA sertifikası
