Audit log ve policy enforcement
Audit log and policy enforcement
Bu derste neler öğreneceksin
- GHAS ile ilgili audit log olaylarını ve nasıl sorgulanacağını öğrenmek
- Enterprise ve organization düzeyinde security policy'leri kavramak
- Audit log streaming'i ve SIEM entegrasyonunu anlamak
- Policy ihlallerini tespit etme yöntemlerini bilmek
Audit log nedir?
Audit log, GitHub Enterprise’daki tüm güvenlikle ilgili eylemlerin kimin, ne zaman, nerede yaptığını kaydeden değiştirilemez kayıttır.
GHAS ile ilgili audit log olayları:
| Eylem | Audit log kaydı |
|---|---|
| Secret scanning etkinleştir/devre dışı | repository.enable_secret_scanning |
| Push protection bypass | push_protection_bypass.create |
| Alert dismiss | secret_scanning_alert.dismiss |
| Code scanning etkinleştir | repository.enable_code_scanning |
| GHAS etkinleştir | advanced_security.enable |
Audit log’a erişim
Organization audit log:
Org → Settings → Audit log
Enterprise audit log:
Enterprise → Settings → Audit log
Filtreleme:
- Olay tipi (örn.
push_protection_bypass) - Tarih aralığı
- Kullanıcı
- Repository
Audit log API
Programatik erişim için REST API:
# Organization audit log sorgula
gh api /orgs/{org}/audit-log \
--method GET \
-f phrase="action:push_protection_bypass" \
-f include=all \
-f per_page=100
Audit log streaming (SIEM entegrasyonu)
Büyük organizasyonlar için gerçek zamanlı log akışı:
Enterprise → Settings → Audit log → Log streaming
→ Hedef seç: Amazon S3, Azure Blob, Google Cloud Storage,
Splunk, Datadog, Azure Event Hub
Enterprise security policy’leri
Enterprise admin şu güvenlik politikalarını zorunlu kılabilir:
Enterprise → Policies → Code security
| Policy | Seçenekler |
|---|---|
| Secret scanning | Allow / Disable / Require |
| Push protection | Allow / Disable / Require |
| Code scanning | Allow / Disable / Require |
| Dependabot | Allow / Disable / Require |
Require seçildiğinde org owner’lar ilgili özelliği devre dışı bırakamaz.
Security manager rolü
Security manager, organization düzeyinde güvenlik yönetimi için özel bir roldür:
Org → Settings → Security managers → Team veya user ekle
Security manager’ın yetkileri:
- Tüm repo’lardaki alert’lara erişim (kod erişimi olmasa bile)
- Security overview’a tam erişim
- Security policy ayarlarını görme
Org owner değildir; sadece güvenlikle ilgili operasyonel yetkisi vardır.
Sınavda audit log soruları
“Kim push protection bypass etti, ne zaman?”
→ Audit log → push_protection_bypass filtresi.
“SIEM sistemimize GHAS olaylarını aktarmak istiyoruz.” → Enterprise audit log streaming → Splunk/Azure Event Hub.
“Org A’daki secret scanning’i kim kapattı?”
→ Enterprise audit log → repository.disable_secret_scanning filtresi.
Sırada ne var?
Security campaigns ve org-wide rollout — büyük organizasyonlarda güvenlik backlog’unu sistematik olarak temizlemek.