Modül 5 · Modül 5 — Domain 5: Secure Development & Compliance · ⏱ 10-15 dakika

Dependabot Alerts ve Updates

Dependabot Alerts & Updates

Bu derste neler öğreneceksin

  • Dependabot alert ve Dependabot security/version updates arasındaki farkı açıklamak
  • dependabot.yml yapılandırmasını bilmek
  • Dependabot PR'larını güvenli bir şekilde yönetmeyi anlamak

Dependabot, GitHub’ın bağımlılık güvenlik açığı yönetim aracıdır. Üç bileşenden oluşur: alerts, security updates ve version updates.

Dependabot Alerts

Dependabot alert’leri, projedeki bağımlılıkların bilinen güvenlik açığı içerip içermediğini GitHub Advisory Database (GHSA + NVD) karşılaştırarak bildirir.

  • Tetikleyici: Yeni CVE yayımlandığında veya bağımlılık güncellendiğinde
  • Görüntüleme: Repository → Security → Dependabot alerts
  • Önem seviyeleri: Critical, High, Medium, Low

Dependabot Security Updates

Alert tespit edildiğinde Dependabot otomatik olarak güvenli versiyona yükselten bir Pull Request açar.

# .github/dependabot.yml
version: 2
updates:
  - package-ecosystem: "npm"
    directory: "/"
    schedule:
      interval: "weekly"
    open-pull-requests-limit: 10

Dependabot Version Updates

Security açığı olmasa bile bağımlılıkları güncel tutmak için kullanılır. dependabot.yml yapılandırması gerektirir.

Security UpdatesVersion Updates
AmaçGüvenlik açığını kapatBağımlılığı güncel tut
TetiklenirCVE veya güvenlik danışmanlığıylaYeni versiyon çıktığında
Config gerekliHayır (otomatik açılabilir)Evet (dependabot.yml)

Dependabot PR’larını Güvenli Yönetme

Dependabot PR’larını merge etmeden önce dikkat edilecekler:

  1. Test suite geçiyor mu? (CI yeşil mi?)
  2. Breaking change var mı? (CHANGELOG’a bak)
  3. Minor/patch update mi, major update mı? (major daha dikkatli incelenmeli)

Dependabot Auto-merge özelliği:

# .github/dependabot.yml
auto-merge:
  allow:
    - dependency-type: "production"
      update-type: "semver:patch"

Sınav sorusu: “Dependabot PR’ları otomatik merge edilebilir ancak yalnızca patch güncellemeleri için. Nasıl yapılandırılır?” — Yanıt: dependabot.yml içinde auto-merge + update-type: "semver:patch" yapılandırması.