← Güvenlik genel bakışı

Güvenlik Uygulamaları

ZelixAI'de platform verilerini ve müşteri iş yüklerini koruyan teknik ve kuruluşsal kontroller.

🔐
Bölüm 1

Beklemede şifreleme

Platform veritabanında saklanan hassas alanlar, diske yazılmadan önce AES-256-GCM ile şifrelenir.

Ne Nasıl
Hesap API anahtarları (yapay zeka sağlayıcıları, SMTP) AES-256-GCM, MASTER_ENCRYPTION_KEY
Kullanıcı şifresi hash'leri bcrypt (cost 12)
IMAP / e-posta kanal kimlik bilgileri AES-256-GCM, MASTER_ENCRYPTION_KEY
Diskteki veritabanı dosyaları Hassas alanlar depolanmadan önce uygulama katmanında şifrelenir (AES-256-GCM, hesaba özel AAD, anahtarlar HashiCorp Vault'ta).
🟢

MASTER_ENCRYPTION_KEY, başlatma sırasında sunucu ortamı üzerinden enjekte edilir ve hiçbir zaman kod tabanına veya veritabanına yazılmaz. Hassas veriler, hesaba özel ek kimlik doğrulamalı verilerle AES-256-GCM kullanılarak şifrelenir; anahtar rotasyonu yeniden şifreleme gerektirir.

🔓
Bölüm 2

Aktarım sırasında şifreleme

  • Tüm genel uç noktaları yalnızca HTTPS üzerinden sunulur; HTTP, HTTPS'ye yönlendirilir (Apache HSTS başlığı).
  • Desteklenen TLS sürümleri: TLS 1.2 ve 1.3 (TLS 1.0 / 1.1 devre dışı).
  • Widget widget.js, Access-Control-Allow-Origin: * ile sunulur, ancak chat API uç noktaları widget_key + origin allowlist'i doğrular.
  • İç hizmet çağrıları (Redis, localhost'taki MySQL) loopback arayüzü üzerinden iletişim kurar. Hiçbir veri, host'tan şifrelenmemiş olarak çıkmaz.
💾
Bölüm 3

Yedeklemeler

Aşağıdaki yedekleme programı platform veritabanı ve müşteri veritabanları için geçerlidir:

Öğe Sıklık Saklama Konum
Platform VT (einstein_saas_platform) Her gün, gece (UTC, otomatik) Yerel olarak 7 gün; Fransa'daki şifreli kopya en fazla 3 hafta Yerel birim + şifreli dış konum kopyası
Müşteri VT'leri (einstein_saas_tenant_*) Her gün, gece (UTC, otomatik) Yerel olarak 7 gün; Fransa'daki şifreli kopya en fazla 3 hafta Yerel birim + şifreli dış konum kopyası
Yüklenen dosyalar / belge depolama Her gün, gece (UTC, otomatik) Fransa'da şifreli kopya, yaklaşık bir ay Yerel birim + şifreli dış konum kopyası

Yedekler her veritabanı için mysqldump --single-transaction ile çalışır, sıkıştırılmış ve age ile şifrelenmiş olarak saklanır, her gün yeniden şifrelenerek sunucularımızdan farklı bir yerdeki Fransa'daki bir veri merkezine kopyalanır ve her çalıştırma boş olmayan bir döküm için kontrol edilir ve başarı/başarısızlık durumuyla günlüğe kaydedilir.

Yedek arşivleri beklemede age (X25519 / ChaCha20-Poly1305) ile şifrelenir; şifre çözme anahtarı arşivlerden ayrı tutulur. Sütun düzeyinde şifrelemeyle (AES-256-GCM) korunan alanlar her arşivde şifreli kalır. Kurtarılabilirlik, otomatik aylık geri yükleme testiyle doğrulanır.

👥
Bölüm 4

Erişim kontrolü

4.1 Rol tabanlı erişim kontrolü (RBAC)

Her portal kullanıcısına bir rol atanır. Roller alan bazında ayrı izinler içerir. Platform izinleri sunucu tarafında kontrol eder.

4.2 İki faktörlü kimlik doğrulama

  • Bir kimlik doğrulama uygulamasıyla (TOTP, RFC 6238 — örneğin Google Authenticator veya Authy) ya da e-postayla gelen bir kodla 2FA. Her kullanıcı bunu hesap ayarlarından kendisi açar.
  • 2FA açıkken platform her girişte ikinci adımı ister.
  • Kurtarma kodları yoktur. E-postayla gelen kodu seçen kullanıcıların ayrı bir uygulamaya ihtiyacı yoktur.

4.3 Hesap izolasyonu

Kimlik doğrulama, hesap bağlamı gerektirir (slug tabanlı giriş). Oturum token'ları tek bir hesap ile sınırlıdır. Hesaplar arası kaynak erişimi, veritabanı sorgularındaki zorunlu tenant_id filtreleri aracılığıyla uygulama katmanında önlenir.

📋
Bölüm 5

Denetim günlüğü

Platform kaynaklarındaki önemli eylemler audit_log tablosuna (platform veritabanı) kaydedilir. Her giriş şunları içerir:

  • Aktör: kullanıcı kimliği, rol ve hesap kimliği.
  • Eylem: fiil (oluştur, güncelle, sil, giriş yap, dışa aktar, …).
  • Kaynak: varlık türü ve kimliği.
  • Meta veri: değiştirilen alan adları ve eski/yeni değerler (hassas alanlar düzenlendi).
  • Zaman damgası: UTC'de saklanır (ISO 8601).
  • IP adresi: isteğin kaynak IP'si.

Denetim günlüğü kayıtları iki yıl saklanır ve ardından otomatik olarak silinir; hesap daha önce sona ermiş olsa bile. Bir silme talebinin yerine getirildiğine dair kanıt 12 ay sonra otomatik olarak silinir. Günlük, uygulama düzeyinde yalnızca eklemeye açıktır (append-only).

Denetim kayıtları uygulamanın normal veritabanı kullanıcısı tarafından yazılır. Ayrı bir salt ekleme veritabanı kullanıcısı yalnızca bayi API'sinin denetim günlüğü için kurulmuştur.

🛡
Bölüm 6

Güvenlik açığı yönetimi

6.1 CVE izleme

Composer bağımlılıklarını composer audit ile kontrol ederiz. Çalışma zamanı bağımlılıklarındaki kritik güvenlik açıklarını öncelikli olarak ele alırız.

6.2 Yama döngüsü

  • İşletim sistemi güvenlik güncellemeleri: her gün otomatik olarak yüklenir (unattended-upgrades).
  • PHP çalışma zamanı: PHP 8.5, güvenlik güncellemeleriyle güncel tutulur.
  • Web sunucusu: Apache 2.4.x — dağıtım güvenlik güncellemeleriyle güncel tutulur.

6.3 Sorumlu ifşa

Dış güvenlik araştırmacıları, koordineli ifşa politikamız kapsamında güvenlik açıklarını bildirmeye davet edilir. Sorumlu ifşa politikasını okuyun →

🏢
Bölüm 7

Hosting ve altyapı

Bileşen Ayrıntı
Barındırma bölgesi AB — Hollanda (veritabanı), Fransa (dosyalar ve yedekler)
Web sunucusu Apache 2.4 (mod_rewrite, mod_ssl)
Runtime PHP 8.5
Veritabanı MySQL / MariaDB (platform + per-tenant)
Önbellek / oturumlar Redis (loopback, password-protected)
Sınır ötesi veri transferleri EU-only açık değilse (Plus'tan itibaren) AI işleme AB dışında, örneğin Amerika Birleşik Devletleri'nde gerçekleşebilir. Hangi AI sağlayıcılarını kullandığımızı talep üzerine bildiririz.

Tamamlanmış bir güvenlik anketi mi gerekli?

Bir güvenlik anketiniz mi var? Güvenlik ekibimize gönderin.

Güvenlik ekibiyle iletişime geçin →