Güvenlik
MyAIDepartments platformu, kurumsal düzeyde güvenlik önlemleri ile verilerinizi korur.
Veri Güvenliği
🔐 Şifreleme
Transit Şifreleme (Data in Transit)
Tüm veri aktarımları TLS 1.3 ile şifrelenir:
Client → TLS 1.3 → Load Balancer → TLS 1.3 → Application Servers
Desteklenen Cipher Suites:
TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
TLS_AES_128_GCM_SHA256
Rest Şifreleme (Data at Rest)
Tüm veriler AES-256 ile şifrelenir:
Database:
Encryption: AES-256-GCM
Key Rotation: 90 days
Backup Encryption: AES-256-CBC
File Storage:
Encryption: AES-256-GCM
Access: Pre-signed URLs only
Expiration: 1 hour
🗄️ Veri Saklama
Veri Lokasyonu
┌──────────────────────────────────────────┐
│ Bölge Bazlı Veri Saklama │
├──────────────────────────────────────────┤
│ 🇪🇺 Avrupa: Frankfurt, Germany │
│ 🇹🇷 Türkiye: İstanbul (yakında) │
│ 🇺🇸 ABD: Virginia, USA │
│ 🇸🇬 Asya: Singapore │
└──────────────────────────────────────────┘
Verileriniz seçtiğiniz bölgede saklanır ve bölge dışına çıkmaz.
Veri Saklama Süreleri
| Veri Tipi | Saklama Süresi | Yedekleme |
|---|---|---|
| Konuşmalar | 2 yıl | 90 gün |
| Aramalar | 1 yıl | 90 gün |
| Ses Kayıtları | 90 gün* | 30 gün |
| Loglar | 6 ay | 30 gün |
| Analitik | 3 yıl | 1 yıl |
*GDPR/KVKK uyarınca özelleştirilebilir
Kimlik Doğrulama
🔑 İki Faktörlü Kimlik Doğrulama (2FA)
Kurulum
- Ayarlar > Güvenlik > 2FA'yı Etkinleştir
- QR kodu Google Authenticator veya Authy ile tara
- 6 haneli doğrulama kodunu gir
- Yedek kodları kaydet
Desteklenen 2FA Yöntemleri
✓ TOTP (Time-based OTP) - Authenticator apps
✓ SMS (İsteğe bağlı)
✓ Email (Yedek yöntem)
✓ Hardware tokens (Enterprise)
🔐 SSO (Single Sign-On)
Enterprise planlar için SSO desteği:
Desteklenen Protokoller:
- SAML 2.0
- OAuth 2.0 / OpenID Connect
- LDAP / Active Directory
SSO Konfigürasyonu
<EntityDescriptor entityID="myaidepartments.com">
<SPSSODescriptor>
<AssertionConsumerService
Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
Location="https://app.myaidepartments.com/sso/acs"
index="1"/>
</SPSSODescriptor>
</EntityDescriptor>
Erişim Kontrolü
👥 Role-Based Access Control (RBAC)
Varsayılan Roller
const roles = {
admin: {
permissions: ["*"],
description: "Tüm yetkilere sahip",
},
manager: {
permissions: [
"conversations:read",
"conversations:write",
"team:read",
"team:write",
"analytics:read",
"settings:read",
],
description: "Departman yöneticisi",
},
agent: {
permissions: [
"conversations:read",
"conversations:write",
"analytics:read:own",
],
description: "Müşteri temsilcisi",
},
viewer: {
permissions: ["conversations:read", "analytics:read"],
description: "Sadece görüntüleme",
},
};
Custom Roles
{
"name": "senior_agent",
"displayName": "Senior Agent",
"permissions": [
"conversations:read",
"conversations:write",
"conversations:transfer",
"conversations:delete",
"tickets:escalate",
"analytics:read"
],
"restrictions": {
"departments": ["customer-service", "sales"],
"ipWhitelist": ["192.168.1.0/24"]
}
}
🌐 IP Whitelist/Blacklist
access_control:
mode: whitelist # veya blacklist
whitelist:
- 203.0.113.0/24 # Office network
- 198.51.100.5 # Home office
- 192.0.2.10 # VPN gateway
blacklist:
- 198.51.100.100 # Blocked IP
- 203.0.113.50 # Suspicious activity
API Güvenliği
🔒 API Key Security
Best Practices
# ✅ DOĞRU - Ortam değişkeni kullan
export MYAI_API_KEY="sk_live_xxxxx"
# ❌ YANLIŞ - Kodda sakla
const apiKey = "sk_live_xxxxx";
API Key Rotasyonu
# Eski anahtarlar 30 gün içinde expire olmalı
myai keys rotate --old-key sk_live_old --new-key sk_live_new
🚦 Rate Limiting
rate_limits:
by_api_key:
requests_per_minute: 100
requests_per_hour: 5000
requests_per_day: 100000
by_ip:
requests_per_minute: 10
requests_per_hour: 500
burst_limit: 150
🔍 Request Validation
interface SecurityValidation {
// Request signature
signature: string;
timestamp: number;
// Request validation
checks: {
validSignature: boolean;
notExpired: boolean;
validApiKey: boolean;
allowedIP: boolean;
withinRateLimit: boolean;
};
}
Uyumluluk
📋 Sertifikalar ve Standartlar
✅ SOC 2 Type II
✅ ISO 27001:2013
✅ ISO 27018
✅ GDPR Compliant
✅ KVKK Uyumlu
✅ PCI DSS Level 1 (ödeme işlemleri için)
🇪🇺 GDPR Uyumu
Veri Sahibi Hakları
1. Erişim Hakkı
→ Müşteri verilerini indirme
2. Düzeltme Hakkı
→ Veri güncelleme/düzeltme
3. Silme Hakkı (Right to be Forgotten)
→ Veri silme talebi
4. İşleme İtiraz Hakkı
→ İşlemeyi durdurma
5. Veri Taşınabilirliği
→ Verileri JSON/CSV formatında alma
Data Processing Agreement (DPA)
Enterprise müşteriler için standart DPA:
- Veri işleme süresi
- Veri işleme amacı
- Veri saklama süreleri
- Alt işleyici listesi
- Güvenlik önlemleri
- Veri ihlali bildirimi (72 saat)
🇹🇷 KVKK Uyumu
kvkk_compliance:
veri_sorumlusu: "MyAIDepartments Ltd."
veri_kayit_sistemi: "VERBİS Kayıtlı"
aydinlatma_metni:
url: "/kvkk/aydinlatma-metni"
language: "tr"
acik_riza:
required: true
documented: true
veri_saklama:
max_duration: "10 yıl"
deletion_policy: "Otomatik silme"
Güvenlik İzleme
📊 Audit Logs
Tüm güvenlik olayları loglanır:
interface AuditLog {
id: string;
timestamp: Date;
user: {
id: string;
email: string;
ip: string;
userAgent: string;
};
action: string;
resource: string;
result: "success" | "failure";
metadata: Record<string, any>;
}
Örnek Audit Log
{
"id": "log_abc123",
"timestamp": "2025-01-10T14:30:00Z",
"user": {
"id": "usr_123",
"email": "ahmet@example.com",
"ip": "203.0.113.45",
"userAgent": "Mozilla/5.0..."
},
"action": "api_key.deleted",
"resource": "key_xyz789",
"result": "success",
"metadata": {
"keyName": "Production API Key",
"lastUsed": "2025-01-10T10:00:00Z"
}
}
🚨 Security Alerts
Şüpheli aktiviteler için otomatik alarm:
alerts:
- type: failed_login_attempts
threshold: 5
period: 5 minutes
action: lock_account + notify_admin
- type: unusual_api_usage
threshold: 200% of average
period: 1 hour
action: notify_admin
- type: new_ip_login
condition: first_time_ip
action: send_email_verification
- type: api_key_leaked
source: github_scanner
action: auto_revoke + notify_urgent
Olay Müdahale
🚑 Incident Response
1. Tespit (Detection)
→ Otomatik monitoring sistemleri
2. Değerlendirme (Triage)
→ 15 dakika içinde impact assessment
3. Müdahale (Response)
→ Güvenlik ekibi devreye girer
4. İyileştirme (Recovery)
→ Sistemler normale döndürülür
5. Post-Mortem
→ Root cause analysis
→ Prevention measures
📞 İletişim
Güvenlik olayı bildirimi için:
🔒 Security Team: security@myaidepartments.com
📱 24/7 Hotline: +90 XXX XXX XX XX
🔐 PGP Key: Available on website
⚡ Response Time: < 1 hour
Güvenlik Best Practices
✅ Tavsiye Edilen Uygulamalar
- Güçlü Şifreler
✓ En az 12 karakter
✓ Büyük/küçük harf, rakam, özel karakter
✓ Şifre yöneticisi kullanın
✓ Her serviste farklı şifre
- 2FA Kullanımı
✓ Tüm admin hesaplarında zorunlu
✓ Agent hesaplarında önerilir
✓ Yedek kodları güvenli yerde saklayın
- API Anahtarı Güvenliği
✓ Ortam değişkenlerinde saklayın
✓ Git'e commit etmeyin
✓ 90 günde bir rotate edin
✓ Minimum yetki prensibi
- Network Security
✓ IP whitelist kullanın
✓ VPN üzerinden erişin
✓ Public Wi-Fi'dan kaçının
✓ Güvenlik duvarı aktif
Sık Sorulan Sorular
Verilerim güvende mi?
Evet. SOC 2 Type II, ISO 27001 sertifikalarımız var ve verileriniz AES-256 ile şifrelenir.
GDPR/KVKK uyumlu musunuz?
Evet, tam uyumluyuz. DPA imzalayabilir ve veri silme taleplerini 30 gün içinde yerine getiririz.
Veri ihlali olursa ne olur?
72 saat içinde size ve ilgili otoritelere bildirimde bulunuruz. Detaylı incident report sunulur.
Verilerim yedekleniyor mu?
Evet, günlük otomatik yedekleme yapılır. 90 günlük yedek geçmişi tutulur.
Sonraki Adımlar
- 5.1 Güvenlik Best Practices - Detaylı güvenlik önerileri
- 5.2 GDPR Compliance - GDPR rehberi
- 5.3 Penetration Testing - Güvenlik testleri