Azure DevOps Güvenlik Taraması: Tek Tıkla Başlıyor
Bakın şimdi, güvenlik taraması deyince çoğu kişinin aklına hemen “süreç, ayar, pipeline düzenleme” geliyor. Haklılar, çünkü işin içinde gerçekten bunlar var. Ben yıllardır kurumsal müşterilerde Azure DevOps altyapısı kuruyorum ve en çok uğraştıran işlerden biri, yüzlerce repo’ya tek tek CodeQL pipeline’ı eklemekti. Ciddi ciddi saatlerce YAML yazıp task kurup sonra da bunları güncel tutmaya çalışıyorduk. Artık o dönem biraz geride kalıyor gibi.
Vallahi, Microsoft, Azure DevOps Advanced Security’ye iki tane dikkat çekici özellik getirdi: CodeQL default setup ile tek tıkla güvenlik taraması başlatma (evet, doğru duydunuz). birleşik alert deneyimi ile organizasyon genelindeki neredeyse tüm güvenlik uyarılarını tek ekrandan yönetme. İkisi bir araya gelince işler baya değişiyor, açık konuşayım.
CodeQL Default Setup: Gerçekten Tek Tıkla mı?
Evet. Gerçekten tek tıkla. Daha doğrusu, dur bir saniye, biraz açayım bunu; şu ana kadar CodeQL’i Azure DevOps üzerinde çalıştırmak için her repo’ya özel pipeline tanımlamanız gerekiyordu. YAML yazacaksınız, CodeQL task’ını kuracaksınız, build adımlarını ayarlayacaksınız, sonra da bu pipeline’ı bakımda tutacaksınız. Yüzlerce repo’su olan bir organizasyonda bu iş tam bir baş ağrısıydı.
Bir şey dikkatimi çekti: Geçen yıl bir finans kuruluşunda birebir bunu yaşadık (evet, doğru duydunuz). 340 civarı repo vardı ve her birine CodeQL eklemek gerekiyordu. Ekip de üç kişilik bir DevOps takımıydı. Hesabı sız yapın; repo başına ortalama 20-30 dakika yapılandırma, üstüne test, üstüne de “neden çalışmıyor” debug süreci… Haftalarca sürdü işte.
Şimdi CodeQL default setup ile o sürtünme azalıyor (yanlış duymadınız). Repo, proje veya organizasyon seviyesinde tek bir tıklamayla taramayı açıyorsunuz. Azure Pipelines arka planda otomatik çalışıyor. YAML düzenleme yok. Task kurulumu yok. Kısacası uğraş azaldı.
Nasıl Etkinleştiriyorsunuz?
Doğrusu, Adımlar şaşırtıcı derecede basit. Hani bazen Microsoft bir şeyi “kolay” diye anlatır ama iş 15 adıma döner ya — bu sefer gerçekten kısa:
- Repository, proje veya organizasyon ayarlarına gidin — ciddi fark yaratıyor
- Code Security planını etkinleştirin — bunu es geçmeyin
- CodeQL default setup’ı açın
- Taramalar belirlenen zamanlama ile otomatik çalışmaya başlasın — ciddi fark yaratıyor
Zamanlamayı organizasyon seviyesinden değiştirebiliyorsunuz. Agent pool’u da (söylemesi ayıp) kendiniz seçebiliyorsunuz; yanı taramaların nerede çalışacağını kontrol ediyorsunuz. Bu detay önemli çünkü bazı müşterilerimde self-hosted agent kullanımı zorunlu oluyor (özellikle bankacılık ve kamu tarafında), verinin dış ortama çıkmaması gereken senaryolar var ya hani, tam orası. Agent pool yapılandırmau bu noktada fena değil, hatta baya iş görüyor.
Birleşik Alert Deneyimi: Sonunda Tek Ekran
Vallahi, Güvenlik yöneticilerinin en büyük derdi neydi biliyor musunuz? “Repo repo dolaşıp güvenlik durumumu anlamak zorundayım.” Bu cümleyi kaç kere duydum sayamam bile. Bir telekom müşterimizde güvenlik ekibi her pazartesi sabahı 2 saat harcayıp tüm repo’ları tek tek kontrol ediyordu. 2 saat! Her hafta! İnsan şaşırıyor açıkçası.
Yeni birleşik alert görünümü, Security Overview içindeki alerts sekmesinde organizasyonunuzdaki bütün repository’lerin default branch’inden gelen uyarıları tek ekranda topluyor. Arama yapabiliyorsunuz, sıralayabiliyorsunuz, filtreleyebiliyorsunuz; hepsi aynı yerde dürüyor.
Açık konuşayım: bu özellik GitHub Advanced Security’de zaten vardı. Azure DevOps tarafının bunu bu kadar geç getirmesi biraz can sıkıcı öldü bende. Ama geç olsun güç olmasın demek lazım.
Security Campaign’ler: İşin Koordinasyon Tarafı
Yanı, Ha bu arada sadece görmekle kalmıyorsunuz; Security Campaign denen bir yapı da var ki bence asıl farkı o yaratıyor (ki bu çoğu kişinin gözünden kaçıyor). Filtrelediğiniz alert’lerden bir kampanya oluşturuyorsunuz ve bunu ekibinizle paylaşıyorsunuz. Mesela: Bu konuyla ilgili VS Debugger Agent: Bug Avı Artık Ajan İşi yazımıza da göz atmanızı tavsiye ederim. Bu konuyla ilgili GitHub CLI ile Agent Skill Yönetimi: Tam Rehber yazımıza da göz atmanızı tavsiye ederim.
- Belli bir CVE’nın organizasyon genelinde takibi — bunu es geçmeyin
- Sadece “critical” seviyesindeki SQL injection açıklarına odaklanma
- Belli bir takımın sorumlu olduğu repo’lardaki dependency alert’leri
- Sprint bazlı güvenlik remediation koordinasyonu
Filtreler canlı çalışıyor. Kampanyayı oluşturduktan sonra kriterlerinize uyan yeni bir zafiyet çıkarsa otomatik olarak kampanyada görünüyor. Bu çok kritik bir detay aslında. Statik liste değil bu, dinamik görünüm. Daha fazla bilgi için Foundry Fine-Tuning Nisan Güncellemesi: RFT Artık Ucuz yazımıza bakabilirsiniz.
Peki neden?
Security Campaign’ler sayesinde güvenlik ekipleri artık “bu hafta şu açıkları kapatıyoruz” diyebiliyor ve ilerlemeyi gerçek zamanlı takip edebiliyor. Bu yaklaşım özellikle düzenleyici denetimlere tabi sektörlerde ciddi fark yaratıyor.
Türkiye’deki Kurumsal Yapılar İçin Ne Anlama Geliyor?
Şimdi gelelim benim asıl konuşmak istediğim yere. Türkiye’deki şirketler açısından bu gelişmeleri ayrı değerlendirmek lazım. Benimseme süreci her yerde aynı gitmiyor.
Logosoft’ta danışmanlık verdiğim müşterilerin büyük çoğunluğu Azure DevOps kullanıyor ama Advanced Security lisansını henüz aktif etmemiş durumda. Neden? Maliyet yüzünden tabii ki… Advanced Security committer başına aylık faturalandırılıyor ve TL bazında düşününce — özellikle 50-100 developer’lık ekiplerde — bütçede hissedilir hâle geliyor. Aylık developer başına yaklaşık 49 USD civarında maliyet var. Bu da 100 kişilik ekipte yıllık yaklaşık 60.000 USD ediyor. Daha fazla bilgi için Azure Local ve Armada: Edge’de Egemen AI Dönemi yazımıza bakabilirsiniz. Daha fazla bilgi için VS Live! Las Vegas 2026: İzlenmesi Gereken 20 Oturum yazımıza bakabilirsiniz.
Küçük ekipseniz, yanı 10-15 kişilik bir startup’sanız, Advanced Security’yi açmak mantıklı olabilir bence. Hele bir de tek tıkla CodeQL kurulumu artık o “pipeline kurmak çok zor” bahanesini baya zayıflatıyor. Ama 200+ developer olan enterprise yapılarda bütçe onayı hâlâ en büyük engel olarak dürüyor.
Bir de şu var — bunu çok az kişi konuşuyor — Türkiye’deki birçok kurum hâlâ on-premises Azure DevOps Server kullanıyor. Bu özellikler şu an Azure DevOps Services (bulut) için geçerli. On-prem’e ne zaman gelir? Belli değil. Bu da benimseme hızını aşağı çeken önemli faktörlerden biri (ciddiyim)
Kısa bir not düşeyim buraya.
Pratik Karşılaştırma: Eski vs Yeni Yaklaşım
Daha somut olsun diye tablo hazırladım. Eski yöntemle yeni default setup’ı yan yana koyunca fark daha net çıkıyor:
| Kriter | Eski Yöntem (Manuel Pipeline) | Yeni Yöntem (Default Setup) |
|---|---|---|
| Kurulum süresi (repo başı) | 20-30 dakika | ~1 dakika (tek tıklama) |
| YAML bilgisi gerekli mi? | Evet | Hayır |
| Toplu etkinleştirme | Script yazmanız lazım | Org/proje seviyesinde native |
| Pipeline bakımı | Sürekli güncelleme gerekli |
Mantığı bozmadan söyleyeyim; burada asıl mesele Microsoft’un yönetmesiyle sizin yönetmeniz arasındaki fark.
`
Sıkça Sorulan Sorular
CodeQL default setup ücretsiz mi?
Dürüst olmak gerekirse, Hayır, ücretsiz değil. CodeQL default setup, aslında Azure DevOps Advanced Security lisansının bir parçası ve bu lisans committer başına ücretlendiriliyor. Ama bence kurulum ve ayar derdini düşününce, operasyonel olarak ciddi bir tasarruf sağlıyor.
Default setup ile custom CodeQL sorguları çalıştırabilir mıyım?
Şu anki public preview’da bu biraz kısıtlı, açıkçası. Yanı özel sorgulara ihtiyacınız varsa, geleneksel pipeline tabanlı CodeQL kurulumuna yönelmeniz gerekebilir. Microsoft’un ilerleyen sürümlerde bunu geliştirmesi bekleniyor, bekleyelim görelim.
Security Campaign’leri kimler oluşturabilir?
Peki, bir şey dikkatimi çekti: Security Overview’a erişimi olan güvenlik yöneticileri oluşturabiliyor. Organizasyon seviyesinde uygun izinlere sahip olmanız gerekiyor. Şimdi, kampanyayı oluşturduktan sonra ekip üyeleriyle paylaşıp koordineli çalışabilirsiniz, hani herkes kendi payına düşeni halleder gibi.
On-premises Azure DevOps Server’da bu özellikler var mı?
Şu an için yok. CodeQL default setup ve birleşik alert deneyimi yalnızca Azure DevOps Services, yanı bulut tarafında çalışıyor. On-prem sürüme ne zaman geleceğine dair resmî bir tarih de verilmedi maalesef.
Mevcut CodeQL pipeline’larım varsa, default setup’a geçmeli mıyım?
Bakın, bir şey dikkatimi çekti: Tecrübeme göre, eğer pipeline’larınızda özelleştirilmiş sorgular veya karmaşık build adımları varsa, hemen atlamamanızı öneririm (en azından benim deneyimim böyle). Önce bir test repo’sunda default setup’ı deneyin, sonuçları karşılaştırın, ondan sonra karar verin. Basit konfigürasyonlar için işe default setup kesinlikle çok daha pratik.
Kaynaklar ve İleri Okuma
CodeQL Default Setup Resmî Dokümantasyonu
Azure DevOps Blog: One-click Security Scanning Duyurusu
Azure DevOps Advanced Security Yapılandırma Rehberi — Microsoft Learn (evet, doğru duydunuz)
İçeriği paylaş:
Bu içerik işinize yaradı mı?
Benzer içerikleri kaçırmamak için beni sosyal medyada takip edin.







Yorum gönder