Bursa’da 1.200 çalışanlı bir otomotiv yan sanayi üreticisi, KVKK denetiminden sonra “merkezi log toplama + 7/24 izleme” zorunluluğu ile karşılaştı. 4 ay süren Microsoft Sentinel kurulumu sonunda günlük 18 GB log, 47 detection rule, 12 SOAR playbook ve canlı SOC dashboard ile production. Bu yazı pazarlama broşürü değil, gerçek implementasyon notları.
Workspace Tasarımı: Tek mi, Birden Fazla mı?
Microsoft Sentinel, Log Analytics Workspace üzerinde çalışıyor. İki ana model:
- Tek workspace: Tüm tenant log’ları tek yerde. Cross-correlation kolay, KQL sorguları her tabloya erişiyor. Tek fatura.
- Çok workspace: Bölge bazlı, departman bazlı, regülasyon bazlı ayrım. Cross-workspace KQL mümkün ama karmaşık.
Üretici müşterimizde tek workspace tercih edildi. 5 lokasyon (Bursa fabrika, Sakarya fabrika, İstanbul ofis, İzmir bayilik merkezi, Mersin lojistik) hepsi aynı yere log gönderiyor.
Log Source Onboarding: Önce Hangileri?
Bütün log’ları aynı anda Sentinel’e bağlayanlar batar. Sıralı onboarding:
| Hafta | Source | Volume (GB/gün) |
|---|---|---|
| 1-2 | Microsoft Entra ID (Azure AD) sign-in + audit | 0.4 |
| 3-4 | Office 365 audit (Exchange, SharePoint, Teams) | 1.2 |
| 5-6 | Defender for Endpoint (XDR) | 3.8 |
| 7-8 | Defender for Cloud Apps (CASB) | 0.7 |
| 9-10 | Firewall (Fortinet) syslog | 5.4 |
| 11-12 | Windows Server (Sysmon + Security event log) | 4.2 |
| 13-14 | Linux server (auditd + syslog) | 1.8 |
| 15-16 | SAP B1 audit log | 0.5 |
Toplam 18 GB/gün. Ay sonu 540 GB. Sentinel fiyatı: $2.46/GB (Pay-As-You-Go), 100 GB/gün commitment’ta $1.96/GB. Müşteri 200 GB/gün commitment aldı, $135/GB indirim.
Aylık Sentinel + Log Analytics retention 90 gün (default 30 + ek 60 gün): ~~$1.150.
Built-in Connector vs Custom
120+ built-in data connector var. Tipik kurulum sırası:
- Microsoft connectors (Azure AD, M365, Defender) — bir kaç tıkla.
- Common 3rd party (Palo Alto, Fortinet, Cisco) — built-in.
- SAP — Sentinel for SAP solution (özel paket, ek lisans).
- Custom uygulama log’u — Logstash → Log Analytics agent → custom log table.
Detection Rule Yazma: KQL ile MITRE ATT&CK Eşleme
Built-in 600+ rule template var. Kendi kurumumuzu özelleyen örnekler:
// T1110.003 - Password Spray (10 dk içinde 5 farklı user'a aynı IP'den failed login)
SigninLogs
| where TimeGenerated > ago(10m)
| where ResultType in ("50053", "50126") // bad password
| summarize
DistinctUsers = dcount(UserPrincipalName),
UserList = make_set(UserPrincipalName, 20),
FailedAttempts = count()
by IPAddress, bin(TimeGenerated, 10m)
| where DistinctUsers >= 5
| extend Severity = "High", Tactic = "CredentialAccess", Technique = "T1110.003"
// T1078 - Mesai dışı admin login
SigninLogs
| where TimeGenerated > ago(1h)
| where ResultType == "0" // başarılı
| where UserPrincipalName has_any (
"admin@", "domain.admin@", "soc.admin@"
)
| extend Hour = datetime_part("Hour", TimeGenerated)
| where Hour 21
| project TimeGenerated, UserPrincipalName, IPAddress, Location, AppDisplayName, Hour
// SAP'de mali sorumlu kullanıcılarının kasım/aralık'ta normal dışı log-out sonrası login
SAPAuditLog_CL
| where TimeGenerated between (datetime(2026-04-01) .. datetime(2026-04-30))
| where MessageType == "AU1" // login
| where User_s in ("CFO", "MALI_MUSAVIR_1", "MUH_MUDUR")
| extend Hour = datetime_part("Hour", TimeGenerated)
| where Hour 22 or dayofweek(TimeGenerated) in (0d, 6d)
Logic Apps SOAR Playbook
Detection oluştuğunda otomatik aksiyon: Logic Apps playbook tetiklenir, hesabı disable + bilgilendirme + ticket aç.
{
"trigger": "When Sentinel incident is created",
"actions": [
{
"name": "Get user info",
"type": "Azure AD - Get user"
},
{
"name": "Disable user account",
"type": "Azure AD - Update user",
"input": {"accountEnabled": false}
},
{
"name": "Revoke all sessions",
"type": "Azure AD - Revoke user sign-in sessions"
},
{
"name": "Send Teams notification to SOC channel",
"type": "Teams - Post message"
},
{
"name": "Create ServiceNow ticket",
"type": "ServiceNow - Create incident"
},
{
"name": "Add comment to Sentinel incident",
"type": "Sentinel - Add comment"
}
]
}
Üretici müşterimizde 12 playbook aktif: password spray, brute force, suspicious sign-in location, malware detection, data exfiltration alert, vb.
Workbook ve Hunting
SOC ekibi için 4 ana workbook:
- Identity Insights: Failed login trend, anomalous sign-in, MFA bypass attempt
- Network Traffic: Top destinations, blocked connections, geo distribution
- Endpoint Health: Defender alert summary, vulnerability stats
- SAP Activity: Privileged user actions, after-hours access
Hunting query’ler ile proaktif tehdit avı (rule yok, manual KQL ile arıyorsun): “Son 30 günde hangi user yeni bir country’den login oldu”, “Hangi service principal aniden çok sayıda Graph API call yaptı”, “ProcessCreate eventlerinde powershell + base64 encoded command”.
İlk 6 Ayın Bulguları
| Olay tipi | Sayı | Aksiyon alındı |
|---|---|---|
| Password spray attempts | 147 | IP block + user notify |
| Suspicious sign-in (impossible travel) | 23 | Hesap disable + revoke |
| Mesai dışı admin login (whitelist dışı) | 8 | Onaylı 3, soruşturma 5 |
| Defender malware detection | 12 | Endpoint izolasyon + temizlik |
| SAP after-hours privileged action | 4 | Onaylı 3, 1 audit’e gitti |
| Toplam confirmed incident | 14 | Tümü çözüldü |
Maliyet Kontrolü Püf Noktaları
- Verbose log’ları (Defender for Endpoint network connection event) commitment’a göre sample.
- Basic Logs tier (yeni özellik): retention’da değişiklik yapılmaz, KQL search 8x ucuz, ama analytics için uygun değil.
- Archive (long-term retention) 7 yıla kadar, $0.026/GB (active’in 1/100’ü).
- Yararsız tablo’ları audit et — örnek: Heartbeat tablosu çok yüksek volume yaratıyor, retention 30 güne düşürülebilir.
Sahada Düşülen Üç Tuzak
- Tüm log’ları başta toplama: Maliyet patlar, alarm gürültüsü olur. Önce Identity, sonra Endpoint, sonra Network.
- Detection rule’ları test etmemek: Production’da false positive bombardımanı. Önce 1-2 hafta test mode (sadece log).
- Playbook’ları geri-dönülemez tasarlamak: Auto-disable user mali müşaviri yanlışlıkla disable etti, mali ay-sonu kapanışı durdu. “Approve before action” eşiği ekle.
CloudSpark olarak Microsoft Sentinel implementasyon, KQL detection rule yazımı, SOAR playbook tasarımı ve SOC operasyon kurulumları için danışmanlık veriyoruz.



