Dismissal, resolved ve fixed durumları
Dismissal, resolved, and fixed states
Bu derste neler öğreneceksin
- Alert durumlarını (open, dismissed, fixed) doğru anlamak
- Dismiss sebeplerini ve hangi durumda hangisini kullanacağını bilmek
- Dismiss işleminin audit trail'e nasıl kaydedildiğini kavramak
- Yanlışlıkla kapatılan alertleri yeniden açma yöntemini öğrenmek
Alert durum modeli
GHAS alert’ları birkaç durumda bulunabilir:
| Durum | Anlamı | Kim değiştirir? |
|---|---|---|
open | Aktif, müdahale bekleniyor | Otomatik olarak açılır |
dismissed | Kasıtlı kapatıldı (risk kabul veya false positive) | Güvenlik ekibi |
fixed | Kod değişikliğiyle giderildi | Otomatik (kod değişince) |
auto-dismissed | Otomatik kural ile kapatıldı | GitHub (validity check) |
Dismiss sebepleri — tür bazlı
Code scanning dismiss sebepleri
| Sebep | Kullanım |
|---|---|
false_positive | Analiz hatalı, gerçek güvenlik açığı yok |
won_t_fix | Gerçek ama kabul edilmiş risk (belgelenmiş) |
used_in_tests | Test ortamında kasıtlı, üretimde etkilemiyor |
Secret scanning dismiss sebepleri
| Sebep | Kullanım |
|---|---|
false_positive | Pattern eşleşti ama gerçek secret değil |
used_in_tests | Test fixture’ında sabit değer |
won_t_fix | Kapatılamıyor (geriye dönük uyumluluk) |
revoked | Secret revoke edildi |
pattern_not_relevant | Custom pattern bu repo için geçerli değil |
Dependabot alert dismiss sebepleri
| Sebep | Kullanım |
|---|---|
tolerable_risk | Risk analizi yapıldı, kabul edildi |
no_bandwidth | Şu an düzeltilemez, takip edilecek |
inaccurate | CVE bu versiyon/konfigürasyonu etkilemiyor |
not_used | Güvenlik açıklı kod path’i kullanılmıyor |
Dismiss işlemi ve audit trail
Dismiss edildiğinde:
- Alert listesinde
dismissedolarak görünür - Audit log’a kaydedilir (kim, ne zaman, hangi sebep)
- Dismiss yorumu (comment) eklenebilir — önerilir
Alert → Dismiss → Sebep seç → (İsteğe bağlı) Yorum yaz → Onayla
Yanlış dismiss durumunda yeniden açma
Dismissed alerts görünümü → Alert → Reopen
veya API ile:
PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}
{ "state": "open" }
Fixed vs dismissed farkı
Fixed: Güvenlik açığı, kod değişikliği ile giderildi. GitHub otomatik
fixed olarak işaretler — geliştiricinin aksiyon almasına gerek yok.
Dismissed: Güvenlik açığı var ama aktif olarak çözülmeyecek. Gerekçesi belgelenmiş olmalı. Eğer gelecekte bu kod tekrar değişirse alert yeniden açılabilir.
Sınavda dismissal soruları
“Dismiss edilen alertleri kim takip edebilir?” → Security manager, audit log erişimi olan kullanıcılar.
“False positive olarak kapatılan bir alert gerçekten güvenlik açığı içeriyorsa ne olur?” → Audit trail’de kaydedildi, reopen edilebilir.
“Tüm ‘won’t fix’ dismissal’larını raporlamam gerekiyor.” → Security overview + API: dismissed_reason=won_t_fix filtresi.
Sırada ne var?
Copilot Autofix — 2026’da GA olan güvenlik açığı otomatik düzeltme özelliği.