Gizli Değer Yönetimi
Kural
Hiçbir gizli değer kaynak koda, dokümantasyona, log çıktısına veya betiklere yazılmaz. Tümü ortam değişkeninden okunur.
.env dosyaları
| Dosya | Durum |
|---|---|
backend/.env.example |
Depoda bulunur, yalnızca anahtar adlarını içerir |
backend/.env |
Depoda yoktur, commit edilmez |
dashboard/.env.example |
Depoda bulunur |
dashboard/.env |
Depoda yoktur |
Kurulum betikleri kurulum sonunda şu notu yazar: "Gizli değerler backend.env içindedir; loglanmaz/commit edilmez."
Gizli değer taşıyan değişken adları
Aşağıdaki değişkenlerin değerleri hiçbir yerde belgelenmez:
JWT_SECRET, MONGODB_PASSWORD, MONGODB_USERNAME, SMTP_PASSWORD,
SMTP_USER, MINIO_ACCESS_KEY, MINIO_SECRET_KEY, SENTRY_DSN,
GEMINI_API_KEY.
Tam liste ve açıklamalar: Yapılandırma / Değişkenler.
Sızıntı önleyici davranışlar
- MongoDB bağlantısında yalnızca veritabanı adı loglanır; URI ve parola asla.
- Sağlık ucu hata dalında yakalanan hata nesnesi kullanılmaz (host/port/ kimlik bilgisi içerebilir); istemciye sabit ve güvenli bir mesaj döner.
- Merkezî hata middleware'i beklenmeyen hataları jenerik 500 ile yanıtlar.
- CORS reddi izin verilen origin listesini sızdırmaz.
- Denetim kaydı allowlist ile yazılır.
- Sentry
sendDefaultPii: falseile başlatılır.