harden production headers and probe contract

This commit is contained in:
2026-09-06 19:53:30 +03:00
parent e3f0192070
commit d3e8c9d6ed
4 changed files with 83 additions and 15 deletions
+6
View File
@@ -2308,3 +2308,9 @@ Doğrulama: Beş IKN'de URL üretildi; kanıt [`qa-official-five-tenders.json`](
Salt okunur `npm run qa:live -- https://ihaleist.com` probe'u yeniden çalıştırıldı. Ana sayfa ve `/api/health` 200 ve `ok:true` döndü; `/api/ready` hâlâ 404 ve üç zorunlu güvenlik başlığı canlıda yok. Bu sonuç yerel düzeltmelerin production'a alınmadığını doğruluyor; ödeme, kimlik doğrulama veya veri yazma çağrısı yapılmadı.
Kanıt [`qa-live-runtime.json`](evidence/qa-live-runtime.json) içinde güncellendi. Production deploy, reverse proxy başlıkları ve readiness yapılandırması tamamlanmadan canlı kabul kapatılamaz.
### 2026-09-06 · Üretim imajı ve güvenlik başlıkları kabulü
Üretim Docker imajı yerelde build edilip nginx yapılandırması `nginx -t` ile doğrulandı. Container içinde `/api/ready` ve `/api/health` 200 döndü; ana sayfa ve API yanıtlarında `X-Content-Type-Options`, `Referrer-Policy`, `Permissions-Policy`, `X-Frame-Options`, CSP ve HSTS başlıkları görüldü. Node ve nginx aynı başlığı iki kez göndermesin diye proxy yanıtlarında üç ortak başlık gizleniyor. Live probe artık readiness için doğru `{ok:true}` sözleşmesini denetliyor ve kanıt dosyası yolu ortam değişkeniyle ayrılabiliyor.
Doğrulama: yerel container probe `pass:true`; kanıt [`qa-container-runtime.json`](evidence/qa-container-runtime.json) içinde. Bu yalnız yerel imaj kabulüdür; `https://ihaleist.com` üzerinde deploy edilene kadar production sonucu değişmez.