Veri Saklama & Silme Politikası — NOVA
Sürüm: v2 · Yürürlük tarihi: 2026-06-22
1. Saklama Süreleri
| Veri | Süre | Sebep |
|---|---|---|
| Hesap (veli) | Hesap aktif + 2 yıl | Yasal yükümlülük (ETK) |
| Öğrenci profili + öğrenme verisi | Hesap aktif olduğu sürece | Hizmetin ifası |
| KVKK rıza kayıtları (Consent) | 10 yıl | Mevzuat denetimi |
| Audit log (AuditEntry) | 10 yıl | Mevzuat denetimi |
| Faturalandırma | 10 yıl | VUK |
| İstek/güvenlik logları | 90 gün | Güvenlik teşhisi |
| Refresh token (DB hash) | 30 gün veya revoke | Oturum yönetimi |
Veli hesabı silindiğinde aşağıdakiler derhal silinir:
- Öğrenci profilleri (cascade ile mastery, error-box, mekanik oturumları).
- Aktif refresh token'lar.
Saklanır (yasal süre kadar):
- Faturalandırma (VUK).
- KVKK audit log (rıza tarihi, silme tarihi).
2. Silme Akışı (KVKK m. 7)
2.1 Veli, çocuğunun hesabını siler
/profil→ "Verilerimi sil" → onay modal'ı (geri alınamaz uyarısı).DELETE /api/students/{id}çağrısı.- Sunucu cascade ile siler:
MechanicSession,UserConceptMastery,UserErrorBox,Student, (varsa) bağlıUser. - Refresh token'lar revoke edilir.
- Audit kaydı:
kvkk.deleteaction, kim/ne zaman. - Veliye onay bildirimi.
2.2 Veli, kendi hesabını siler
- Henüz uygulanmadı. Roadmap:
DELETE /api/meendpoint'i.
3. Dışa Aktarma (KVKK m. 11/d)
/profil→ "Verilerimi indir" →GET /api/me/export.- JSON formatında: veli + çocuk profilleri + öğrenme verisi + KVKK rıza kayıtları.
- Faturalandırma
/api/me/billing-export(ayrı, henüz yok).
4. Otomatik Temizlik
Periyodik job'lar:
- 30 gün dolan/expire olan refresh token'lar → revoke.
- 90 gün dolan istek logları → silinir.
- Tamamlanmamış kayıt akışları (consent vermeden 7 gün) → temizlenir.
(Şu an manuel. CD pipeline'ında cron olarak eklenecek.)
5. Yedekleme
- DB günlük tam yedek (7 gün retention) + saatlik WAL (24 saat).
- Yedek üzerinden silme: kullanıcı silme talebi sonrası 7 gün içinde tüm yedeklerden veri de düşer (yedek rotation süresinde).
Detay: docs/runbook/db-backup-restore.md.
6. İlgili Endpoint'ler
| Endpoint | İşlev | Audit |
|---|---|---|
DELETE /api/students/{id} |
Öğrenci cascade silme | ✅ |
GET /api/me/export |
Kişisel veri dışa aktarma | ✅ |
POST /api/auth/logout |
Aktif refresh token iptal | ✅ |
POST /api/me/change-password |
Tüm refresh'leri revoke | ✅ |