DevOps ve DevSecOps Nedir? CI/CD, Docker, Kubernetes ve Güvenli Yazılım Geliştirme Rehberi
DevOps ve DevSecOps nedir? CI/CD, Docker, Kubernetes, GitOps, SAST, DAST, SCA, SBOM, container güvenliği ve güvenli yazılım geliştirmeyi keşfedin.

DevOps ve DevSecOps Nedir?
DevOps, yazılım geliştirme (Development) ve BT operasyonları (Operations) arasındaki iş birliğini, otomasyonu ve sürekli iyileştirmeyi destekleyen bir çalışma yaklaşımıdır.
DevSecOps ise güvenlik (Security) faaliyetlerinin yazılım geliştirme ve operasyon süreçlerinin tamamına entegre edilmesini hedefleyen yaklaşımdır.
Geleneksel yazılım geliştirme süreçlerinde yazılım ekipleri uygulamayı geliştirirken operasyon ekipleri uygulamanın çalıştırılmasından sorumlu olabilir.
Güvenlik değerlendirmeleri ise bazen yazılım tamamlandıktan sonra gerçekleştirilebilir.
Bu durum geç tespit edilen güvenlik sorunlarına, yeniden geliştirme ihtiyacına ve teslimat gecikmelerine neden olabilir.
DevOps yaklaşımı geliştirme ve operasyon süreçlerinin daha uyumlu çalışmasını destekler.
DevSecOps ise bu yapıya güvenlik gereksinimlerini, otomatik kontrolleri, güvenlik testlerini ve risk yönetimini bütünleşik olarak dahil eder.
Örneğin bir CRM uygulamasında geliştirici yeni bir API oluşturduğunda kod değişikliği otomatik testlerden geçirilebilir.
Aynı süreçte kaynak kod analizi, bağımlılık taraması ve gizli bilgi kontrolü gerçekleştirilebilir.
Uygun kontroller tamamlandıktan sonra yazılım test veya canlı ortama dağıtılabilir.
Kısa cevap: DevOps, yazılım geliştirme ve operasyon süreçlerini iş birliği ve otomasyonla bütünleştiren yaklaşımdır. DevSecOps ise güvenliği bu süreçlerin ayrılmaz bir parçası haline getirmeyi hedefler. CI/CD, Docker, Kubernetes, SAST, DAST ve SCA gibi teknolojiler bu yaklaşımların uygulanmasını destekleyebilir.
1. DevOps Ne İşe Yarar?
DevOps, yazılımın geliştirilmesi, test edilmesi, dağıtılması ve işletilmesi süreçlerinde koordinasyonu artırmayı hedefler.
Temel amaçları
- Geliştirme ve operasyon ekipleri arasında iş birliği oluşturmak
- Tekrarlanan işlemleri otomatikleştirmek
- Yazılım teslim süreçlerini iyileştirmek
- Test ve dağıtım faaliyetlerini standartlaştırmak
- Sistemlerin izlenebilirliğini artırmak
- Geri bildirim döngülerini hızlandırmak
- Hizmet sürekliliğini desteklemek
Örnek
Bir işletmenin web uygulamasında yapılan değişiklikler daha önce manuel olarak sunucuya aktarılıyorsa, otomatik dağıtım süreçleriyle bu işlemler standartlaştırılabilir.
2. DevSecOps Ne İşe Yarar?
DevSecOps, yazılım geliştirme yaşam döngüsünde güvenliğin sistematik biçimde ele alınmasını sağlar.
Temel amaçları
Güvenlik gereksinimlerini erken belirlemek.
Kod güvenliği kontrollerini otomatikleştirmek.
Üçüncü taraf bileşen risklerini değerlendirmek.
CI/CD süreçlerini korumak.
Dağıtım ortamlarının güvenliğini artırmak.
Güvenlik bulgularını yönetmek.
Örnek
Bir yazılım geliştiricisi uygulamaya yeni bir açık kaynak kütüphane eklediğinde SCA aracı ilgili bileşenin bilinen güvenlik açıklarını değerlendirebilir.
3. DevOps ile DevSecOps Arasındaki Fark
| Kriter | DevOps | DevSecOps |
|---|---|---|
| Temel odak | Geliştirme ve operasyon iş birliği | Güvenliğin tüm sürece entegrasyonu |
| Otomasyon | Derleme, test, dağıtım | Bunlara ek güvenlik kontrolleri |
| Kod güvenliği | Uygulanabilir | Temel faaliyetlerden biridir |
| Güvenlik sorumluluğu | Organizasyona bağlı | Paylaşılan sorumluluk vurgulanır |
| Risk yönetimi | Operasyonel riskler | Yazılım ve tedarik zinciri riskleri de dahil |
Önemli nokta
DevSecOps, DevOps'un yerine geçen ayrı bir teknoloji değildir. Güvenlik odaklı uygulamaların DevOps süreçleriyle bütünleştirilmesidir.
4. DevOps Bir Yazılım mı, Metodoloji mi?
DevOps tek bir yazılım ürünü değildir.
Kültür, süreç, otomasyon ve teknik uygulamaları kapsayan bir yaklaşımdır.
DevOps kapsamında kullanılabilecek araçlar
Git.
GitLab.
GitHub Actions.
Jenkins.
Azure DevOps.
Docker.
Kubernetes.
Terraform.
Ansible.
Prometheus.
Önemli nokta
Bu araçların kurulmuş olması tek başına başarılı DevOps uygulaması anlamına gelmez.
5. DevSecOps Bir Güvenlik Ürünü müdür?
DevSecOps tek başına satın alınan bir güvenlik ürünü değildir.
Farklı güvenlik teknolojileri ve süreçleriyle uygulanır.
Örnek bileşenler
SAST.
DAST.
SCA.
Secret scanning.
Container scanning.
IaC scanning.
SBOM.
Güvenlik politikaları.
Önemli nokta
DevSecOps uygulamasında araçlardan elde edilen bulguların değerlendirilmesi, önceliklendirilmesi ve giderilmesi gerekir.
6. SDLC ile DevSecOps İlişkisi
SDLC (Software Development Life Cycle), yazılım geliştirme yaşam döngüsüdür.
DevSecOps, güvenlik faaliyetlerinin SDLC boyunca uygulanmasını destekler.
Örnek aşamalar
Planlama.
Analiz.
Tasarım.
Geliştirme.
Test.
Dağıtım.
İşletim.
Güvenlik faaliyetleri
Gereksinim analizi.
Tehdit modelleme.
Güvenli kodlama.
Kod analizi.
Güvenlik testleri.
İzleme.
7. Secure SDLC Nedir?
Secure SDLC, güvenlik gereksinimlerinin yazılım yaşam döngüsüne entegre edildiği geliştirme yaklaşımıdır.
Temel faaliyetler
Güvenlik gereksinimleri.
Tehdit modelleme.
Güvenli tasarım.
Kod inceleme.
Güvenlik testleri.
Güvenli dağıtım.
Örnek
Bir CRM uygulamasında kullanıcıların yalnızca yetkili oldukları müşteri kayıtlarını görüntüleyebilmesi tasarım aşamasında ele alınmalıdır.
8. Shift Left Security Nedir?
Shift Left Security, güvenlik kontrollerinin yazılım geliştirme sürecinin erken aşamalarına taşınmasını ifade eder.
Örnek uygulamalar
Güvenlik gereksinimleri.
Tehdit modelleme.
Kod analizi.
Bağımlılık taraması.
Geliştirici güvenlik eğitimleri.
Avantajı
Güvenlik sorunlarının daha erken belirlenmesini destekler.
Önemli nokta
Erken güvenlik kontrolleri, canlı ortam güvenliğinin izlenmesi ihtiyacını ortadan kaldırmaz.
9. Shift Right Security Nedir?
Shift Right Security, yazılım dağıtıldıktan sonra güvenlik ve operasyonel davranışların izlenmesine odaklanır.
Örnek uygulamalar
Çalışma zamanı izleme.
Güvenlik logları.
Anomali tespiti.
Olay müdahalesi.
Güvenlik telemetrisi.
Önemli nokta
Shift Left ve Shift Right birbirini tamamlayan yaklaşımlardır.
10. CI Nedir?
CI (Continuous Integration), geliştiricilerin kod değişikliklerini düzenli biçimde ortak kod tabanına entegre etmesi ve bu değişikliklerin otomatik kontrollerle doğrulanması yaklaşımıdır.
CI faaliyetleri
Kod birleştirme.
Derleme.
Birim testleri.
Kod kalitesi.
Güvenlik taramaları.
Örnek
Geliştirici yeni kod gönderdiğinde otomatik testler başlatılabilir.
11. CD Nedir?
CD kısaltması iki farklı kavram için kullanılabilir.
Continuous Delivery
Yazılımın üretim ortamına dağıtılmaya hazır durumda tutulmasını hedefler.
Continuous Deployment
Uygun kontrollerden geçen değişikliklerin üretim ortamına otomatik dağıtılmasını ifade eder.
Önemli nokta
Continuous Delivery ile Continuous Deployment aynı kavram değildir.
12. CI/CD Pipeline Nedir?
CI/CD Pipeline, kod değişikliklerinin derleme, test, güvenlik kontrolü ve dağıtım aşamalarından geçirilmesini sağlayan otomasyon akışıdır.
Örnek akış
Kod değişikliği.
Derleme.
Birim testi.
SAST.
SCA.
Paketleme.
Container taraması.
Test ortamına dağıtım.
DAST.
Onay.
Canlıya geçiş.
Önemli nokta
Her projede bütün aşamaların aynı sırada uygulanması zorunlu değildir.
13. CI/CD Pipeline Güvenliği
CI/CD sistemleri kaynak kod, erişim bilgileri ve dağıtım yetkileriyle ilişkili olabilir.
Temel riskler
Yetkisiz kod değişikliği.
Gizli bilgi sızıntısı.
Güvensiz bağımlılıklar.
Pipeline yapılandırma hataları.
Dağıtım yetkilerinin kötüye kullanılması.
Güvenlik kontrolleri
En az ayrıcalık.
Kod inceleme.
Gizli bilgi yönetimi.
İmzalama.
Denetim kayıtları.
14. Git Nedir?
Git, dağıtık versiyon kontrol sistemidir.
Kullanım alanları
Kod değişikliklerinin izlenmesi.
Dal yönetimi.
Kod birleştirme.
Geçmişe dönük inceleme.
Önemli nokta
Git, kaynak kodun versiyonlanmasını sağlar; tek başına güvenli yedekleme stratejisi değildir.
15. GitHub, GitLab ve Azure DevOps Nedir?
Bu platformlar yazılım geliştirme süreçlerine yönelik farklı hizmetler sunar.
GitHub
Kaynak kod barındırma, iş takibi ve otomasyon.
GitLab
Kaynak kod yönetimi ve DevSecOps yaşam döngüsü özellikleri.
Azure DevOps
İş takibi, kaynak kod, pipeline ve test yönetimi.
Önemli nokta
Platformların özellikleri lisans, sürüm ve dağıtım modeline göre değişebilir.
16. Jenkins Nedir?
Jenkins, otomasyon sunucusu olarak kullanılan açık kaynak yazılımdır.
Kullanım alanları
Derleme.
Test.
CI/CD.
Dağıtım otomasyonu.
Önemli nokta
Jenkins sunucularının eklentileri, erişim yetkileri ve güncellemeleri güvenlik açısından yönetilmelidir.
17. Docker Nedir?
Docker, uygulamaların container olarak paketlenmesini ve çalıştırılmasını sağlayan teknolojiler sunan platformdur.
Container'lar uygulamanın çalışması için gerekli bileşenlerin tutarlı biçimde paketlenmesini destekler.
Avantajları
Taşınabilirlik.
Tekrarlanabilir dağıtım.
Ortam tutarlılığı.
Kaynak kullanımında esneklik.
Örnek
Bir CRM uygulamasının backend bileşeni container olarak paketlenebilir.
18. Container Nedir?
Container, uygulamanın çalışması için gerekli bileşenleri izole edilmiş bir çalışma ortamında bir araya getiren teknolojik yaklaşımdır.
Container bileşenleri
Uygulama.
Bağımlılıklar.
Çalışma zamanı.
Yapılandırma.
Önemli nokta
Container'lar genellikle ana sistemin çekirdeğini paylaşır. Bu nedenle sanal makinelerle aynı izolasyon modeline sahip değildir.
19. Docker ile Sanal Makine Arasındaki Fark
| Kriter | Container | Sanal Makine |
|---|---|---|
| İşletim sistemi | Genellikle ana sistem çekirdeğini paylaşır | Kendi konuk işletim sistemi bulunur |
| Başlatma | Genellikle hızlı | Daha fazla başlangıç yükü olabilir |
| Kaynak kullanımı | Daha hafif olabilir | Daha fazla kaynak gerektirebilir |
| İzolasyon | Container mekanizmaları | Hipervizör tabanlı |
| Kullanım | Uygulama paketleme ve dağıtım | Sistem sanallaştırma |
Önemli nokta
İzolasyon ve güvenlik düzeyi yapılandırmaya ve kullanılan teknolojiye bağlıdır.
20. Docker Image Nedir?
Docker image, container oluşturmak için kullanılan paketlenmiş dosya sistemi ve yapılandırma içeriğidir.
İçeriği
Uygulama dosyaları.
Bağımlılıklar.
Çalışma zamanı.
Başlatma talimatları.
Önemli nokta
Image içerisinde parola, API anahtarı veya başka gizli bilgilerin bulunmamasına dikkat edilmelidir.
21. Dockerfile Nedir?
Dockerfile, container image oluşturma talimatlarını içeren dosyadır.
Örnek talimatlar
FROM.
WORKDIR.
COPY.
RUN.
USER.
CMD.
Güvenlik önerileri
Güvenilir temel image kullanımı.
Gereksiz paketlerden kaçınma.
Root olmayan kullanıcı.
Güncel bağımlılıklar.
Gizli bilgilerin image içerisine eklenmemesi.
22. Container Registry Nedir?
Container Registry, container image dosyalarının saklandığı ve dağıtıldığı sistemdir.
Örnekler
Docker Hub.
GitHub Container Registry.
GitLab Container Registry.
Amazon ECR.
Azure Container Registry.
Güvenlik kontrolleri
Erişim yetkileri.
Image taraması.
İmzalama.
Versiyon yönetimi.
23. Container Güvenliği Nedir?
Container güvenliği, container image, çalışma zamanı, ağ ve orkestrasyon katmanlarındaki risklerin yönetilmesini kapsar.
Temel riskler
Güvensiz image.
Bilinen zafiyetler.
Aşırı yetkiler.
Gizli bilgi sızıntısı.
Güvensiz ağ yapılandırması.
Önemli nokta
Container kullanılması uygulamayı otomatik olarak güvenli hale getirmez.
24. Kubernetes Nedir?
Kubernetes, container tabanlı uygulamaların dağıtımını, ölçeklendirilmesini ve yönetimini otomatikleştirmeyi destekleyen açık kaynak orkestrasyon platformudur.
Temel özellikleri
Container orkestrasyonu.
Servis keşfi.
Ölçeklendirme.
İş yükü yönetimi.
Dağıtım yönetimi.
Örnek
Bir web uygulamasının birden fazla container örneği Kubernetes üzerinde yönetilebilir.
25. Kubernetes Cluster Nedir?
Kubernetes Cluster, Kubernetes tarafından yönetilen node'lardan ve kontrol bileşenlerinden oluşur.
Temel bileşenler
Control Plane.
Worker Nodes.
Pods.
Services.
Önemli nokta
Kubernetes mimarisi ve güvenliği dağıtım modeline göre değişebilir.
26. Kubernetes Pod Nedir?
Pod, Kubernetes'teki en küçük dağıtılabilir işlem birimidir.
Bir Pod içerisinde bir veya daha fazla container bulunabilir.
Örnek
Bir uygulama container'ı belirli yardımcı container'larla aynı Pod içerisinde çalışabilir.
27. Kubernetes Deployment Nedir?
Deployment, uygulama Pod'larının istenen durumunu yönetmek için kullanılan Kubernetes kaynağıdır.
Kullanım alanları
Replica yönetimi.
Rolling update.
Rollback.
Önemli nokta
Deployment her iş yükü için uygun değildir; durum bilgisi taşıyan uygulamalarda farklı kaynaklar kullanılabilir.
28. Kubernetes Service Nedir?
Service, Kubernetes içerisindeki belirli Pod gruplarına ağ üzerinden erişim sağlamak için kullanılan soyutlama katmanıdır.
Örnek
Bir backend uygulamasının Pod'ları Service üzerinden erişilebilir hale getirilebilir.
29. Kubernetes Ingress Nedir?
Ingress, Kubernetes ortamında HTTP ve HTTPS trafiğinin servislerle ilişkilendirilmesini sağlayan API kaynağıdır.
Önemli nokta
Ingress kaynaklarının çalışması için uygun bir Ingress Controller gerekir.
Kubernetes ekosisteminde Gateway API gibi alternatif ve gelişen trafik yönetimi yaklaşımları da bulunmaktadır.
30. Kubernetes Güvenliği
Kubernetes ortamları birden fazla güvenlik katmanı içerir.
Temel kontroller
RBAC.
Network Policies.
Pod Security Standards.
Secret yönetimi.
Image güvenliği.
Audit logging.
Güncelleme.
Önemli nokta
Kubernetes güvenliği yalnızca container taramasıyla sağlanamaz.
31. Kubernetes RBAC Nedir?
RBAC (Role-Based Access Control), rol tabanlı erişim kontrolüdür.
Kubernetes üzerinde kullanıcı ve servis hesaplarının belirli kaynaklara erişimini sınırlandırmak için kullanılabilir.
Örnek
Bir geliştiricinin yalnızca test namespace'i üzerinde belirli işlemleri gerçekleştirmesine izin verilebilir.
32. Kubernetes Network Policy Nedir?
Network Policy, destekleyen ağ altyapısı üzerinde Pod'lar arasındaki ağ trafiğinin kontrol edilmesini sağlar.
Örnek
Veritabanına yalnızca yetkili backend uygulamasından erişim sağlanması hedeflenebilir.
Önemli nokta
Network Policy kurallarının uygulanabilmesi için kullanılan ağ eklentisinin ilgili özellikleri desteklemesi gerekir.
33. Infrastructure as Code Nedir?
Infrastructure as Code (IaC), altyapı kaynaklarının kod veya bildirime dayalı yapılandırmalarla yönetilmesidir.
Kullanım alanları
Sunucu oluşturma.
Ağ yapılandırması.
Bulut kaynakları.
Container altyapısı.
Avantajları
Tekrarlanabilirlik.
Versiyon kontrolü.
Otomasyon.
İnceleme.
34. Terraform Nedir?
Terraform, altyapı kaynaklarının kodla tanımlanmasını ve yönetilmesini sağlayan araçtır.
Kullanım alanları
Bulut altyapısı.
Sanal makineler.
Ağ kaynakları.
Depolama.
Önemli nokta
Terraform state dosyaları hassas bilgiler içerebilir; erişim ve saklama güvenliği sağlanmalıdır.
35. Ansible Nedir?
Ansible, sistem yapılandırması ve otomasyon faaliyetlerinde kullanılan araçtır.
Kullanım alanları
Sunucu yapılandırma.
Paket yönetimi.
Uygulama dağıtımı.
Tekrarlanan işlemler.
Önemli nokta
Otomasyon hesaplarının yetkileri ve gizli bilgileri güvenli biçimde yönetilmelidir.
36. GitOps Nedir?
GitOps, sistemlerin istenen durumunun Git üzerinden yönetilmesine dayanan operasyon yaklaşımıdır.
Temel ilkeler
Bildirime dayalı yapılandırma.
Versiyon kontrolü.
Otomatik uzlaştırma.
Değişiklik izlenebilirliği.
Örnek
Kubernetes uygulama yapılandırmaları Git deposunda yönetilebilir.
37. Argo CD Nedir?
Argo CD, Kubernetes için kullanılan GitOps tabanlı sürekli teslim aracıdır.
Kullanım alanları
Uygulama dağıtımı.
Git ile durum karşılaştırması.
Yapılandırma senkronizasyonu.
Önemli nokta
Argo CD erişim yetkileri ve yönetim arayüzü güvenlik açısından korunmalıdır.
38. DevSecOps Güvenlik Araçları Nelerdir?
DevSecOps süreçlerinde farklı araç kategorileri kullanılabilir.
Temel kategoriler
SAST.
DAST.
SCA.
Secret scanning.
IaC scanning.
Container scanning.
SBOM.
Runtime security.
Önemli nokta
Araç seçimi yazılım teknolojileri, riskler, lisanslama ve mevcut geliştirme süreçlerine göre yapılmalıdır.
39. SAST Nedir?
SAST (Static Application Security Testing), uygulama kaynak kodunun veya ilgili yazılım bileşenlerinin statik yöntemlerle güvenlik açısından analiz edilmesidir.
Tespit edilebilecek risk örnekleri
Güvensiz veri işleme.
Enjeksiyon riskleri.
Güvensiz fonksiyon kullanımı.
Sabit kodlanmış gizli bilgiler.
Önemli nokta
SAST sonuçları yanlış pozitif bulgular içerebilir ve uzman değerlendirmesi gerektirebilir.
40. DAST Nedir?
DAST (Dynamic Application Security Testing), çalışan uygulamanın dinamik yöntemlerle güvenlik açısından değerlendirilmesidir.
Test alanları
Web uygulamaları.
API'ler.
Oturum yönetimi.
Girdi doğrulama.
Güvenlik yapılandırmaları.
Önemli nokta
DAST kaynak kodun tamamını analiz etmez ve her güvenlik sorununu tespit edemez.
41. SAST ile DAST Arasındaki Fark
| Kriter | SAST | DAST |
|---|---|---|
| Analiz yaklaşımı | Statik | Dinamik |
| Kaynak kod erişimi | Çoğu yaklaşımda kullanılır | Genellikle gerekmez |
| Çalışan uygulama | Her zaman gerekmez | Gerekir |
| Kullanım zamanı | Geliştirme süreci | Test ve çalışma ortamları |
| Kapsam | Kod kaynaklı riskler | Çalışan uygulamanın davranışı |
Önemli nokta
SAST ve DAST birbirini tamamlar.
42. SCA Nedir?
SCA (Software Composition Analysis), yazılımlarda kullanılan üçüncü taraf ve açık kaynak bileşenlerin analiz edilmesidir.
Değerlendirme alanları
Bağımlılıklar.
Bilinen zafiyetler.
Lisanslar.
Bileşen sürümleri.
Örnek
Bir uygulamada kullanılan açık kaynak kütüphanenin bilinen güvenlik açığı bulunabilir.
43. SBOM Nedir?
SBOM (Software Bill of Materials), yazılımı oluşturan bileşenlere ilişkin yapılandırılmış envanterdir.
İçerebileceği bilgiler
Bileşen adı.
Sürüm.
Tedarikçi.
Bağımlılık ilişkileri.
Lisans bilgileri.
Yaygın formatlar
SPDX.
CycloneDX.
Önemli nokta
SBOM oluşturulması tek başına güvenlik açıklarının giderildiği anlamına gelmez.
44. Yazılım Tedarik Zinciri Güvenliği
Yazılım tedarik zinciri güvenliği, yazılım geliştirme ve dağıtım süreçlerinde kullanılan bileşenlerin ve altyapıların güvenliğini kapsar.
Risk alanları
Üçüncü taraf bağımlılıklar.
Paket depoları.
Build sistemleri.
CI/CD hesapları.
Container image'ları.
Dağıtım artefaktları.
Önemli nokta
Yalnızca uygulama kaynak kodunun güvenli olması yeterli değildir.
45. SLSA Nedir?
SLSA (Supply-chain Levels for Software Artifacts), yazılım artefaktlarının üretim ve tedarik zinciri bütünlüğünü güçlendirmeye yönelik çerçevedir.
Odak alanları
Build bütünlüğü.
Kaynak güvenilirliği.
Provenance.
Tedarik zinciri kontrolleri.
Önemli nokta
SLSA, yazılım güvenliğinin bütün boyutlarını tek başına kapsamaz.
46. Secret Scanning Nedir?
Secret scanning, kaynak kod ve ilgili ortamlarda yanlışlıkla paylaşılmış gizli bilgilerin tespit edilmesini amaçlar.
Örnek gizli bilgiler
API anahtarları.
Erişim token'ları.
Parolalar.
Özel anahtarlar.
Önemli nokta
Bir gizli bilgi sızdırıldıysa yalnızca koddan silinmesi yeterli olmayabilir; ilgili kimlik bilgisinin iptal edilmesi veya yenilenmesi gerekebilir.
47. Secrets Management Nedir?
Secrets management, uygulama ve altyapı tarafından kullanılan gizli bilgilerin güvenli biçimde saklanmasını ve yönetilmesini kapsar.
Temel kontroller
Erişim yetkileri.
Şifreleme.
Rotasyon.
Denetim kayıtları.
Merkezi yönetim.
Örnek
Veritabanı parolasının kaynak kod içerisinde tutulması yerine uygun gizli bilgi yönetim sistemi kullanılabilir.
48. IaC Security Scanning Nedir?
IaC scanning, altyapı yapılandırmalarındaki güvenlik risklerinin değerlendirilmesini sağlar.
Örnek riskler
Herkese açık depolama.
Aşırı ağ erişimi.
Güvensiz kimlik yetkileri.
Şifreleme eksikliği.
Önemli nokta
Statik yapılandırma analizi, canlı ortam kontrolleriyle desteklenmelidir.
49. Container Image Scanning Nedir?
Container image scanning, image içerisinde bulunan bileşenlerin ve ilgili güvenlik risklerinin analiz edilmesidir.
İncelenebilecek alanlar
İşletim sistemi paketleri.
Uygulama bağımlılıkları.
Bilinen zafiyetler.
Güvenlik yapılandırmaları.
Önemli nokta
Image taraması çalışma zamanı saldırılarını tek başına engellemez.
50. Runtime Security Nedir?
Runtime security, çalışan uygulama ve iş yüklerinin güvenlik açısından izlenmesi ve korunması yaklaşımıdır.
Kullanım alanları
Şüpheli süreçler.
Beklenmeyen ağ bağlantıları.
Yetkisiz dosya erişimi.
Anormal container davranışları.
Önemli nokta
Çalışma zamanı güvenliği, önleyici geliştirme kontrollerini tamamlar.
51. API Security ve DevSecOps
API'ler kurumsal uygulamalar arasında veri alışverişini sağlar.
Temel riskler
Yetkisiz erişim.
Nesne düzeyinde yetkilendirme hataları.
Kimlik doğrulama sorunları.
Kaynak tüketimi.
Güvensiz yapılandırmalar.
Güvenlik kontrolleri
API testleri.
Kimlik doğrulama.
Yetkilendirme.
Rate limiting.
Loglama.
Önemli nokta
API güvenliği yalnızca API Gateway kullanılmasıyla sağlanamaz.
52. OWASP Top 10 ve DevSecOps
OWASP Top 10, web uygulamalarındaki önemli güvenlik riski kategorilerine yönelik farkındalık kaynağıdır.
Kullanım amacı
Güvenlik gereksinimleri oluşturmak.
Geliştirici eğitimlerini desteklemek.
Test kapsamını değerlendirmek.
Önemli nokta
OWASP Top 10 kapsamı, tam güvenlik doğrulama standardının yerine geçmez.
53. OWASP ASVS Nedir?
OWASP Application Security Verification Standard (ASVS), web uygulamalarının güvenlik kontrollerini doğrulamak için gereksinimler sunan standartlaştırılmış çerçevedir.
Kullanım alanları
Güvenlik gereksinimleri.
Uygulama tasarımı.
Güvenlik testleri.
Tedarikçi değerlendirmesi.
54. NIST SSDF Nedir?
NIST Secure Software Development Framework (SSDF), güvenli yazılım geliştirme uygulamalarını tanımlayan çerçevedir.
Temel uygulama grupları
Prepare the Organization.
Protect the Software.
Produce Well-Secured Software.
Respond to Vulnerabilities.
Önemli nokta
NIST SSDF, belirli bir CI/CD aracı veya yazılım geliştirme metodolojisini zorunlu kılmaz.
55. OWASP SAMM Nedir?
OWASP Software Assurance Maturity Model (SAMM), kuruluşların yazılım güvenliği uygulamalarını değerlendirmesine ve iyileştirmesine yardımcı olan olgunluk modelidir.
Kullanım alanları
Mevcut durum değerlendirmesi.
Güvenlik olgunluğu.
İyileştirme planı.
Süreç ölçümü.
56. DevSecOps Security Gate Nedir?
Security Gate, belirlenen güvenlik koşullarına göre yazılımın sonraki aşamaya geçişinin kontrol edilmesidir.
Örnek koşullar
Kritik güvenlik bulguları.
Bağımlılık riskleri.
Gizli bilgi sızıntıları.
Container güvenliği.
Politika ihlalleri.
Önemli nokta
Güvenlik kapıları risk seviyesine ve kurumsal politikaya göre yapılandırılmalıdır.
57. Vulnerability Management Nedir?
Vulnerability Management, güvenlik açıklarının belirlenmesi, değerlendirilmesi, önceliklendirilmesi ve giderilmesi sürecidir.
Temel faaliyetler
Tespit.
Doğrulama.
Risk değerlendirmesi.
Önceliklendirme.
Düzeltme.
Yeniden test.
Önemli nokta
Her güvenlik açığı yalnızca CVSS puanına göre önceliklendirilmemelidir.
58. CVSS, EPSS ve KEV Nedir?
CVSS
Güvenlik açığının teknik ciddiyetini değerlendirmek için kullanılan puanlama sistemidir.
EPSS
Belirli bir güvenlik açığının yakın dönemde istismar edilme olasılığına yönelik tahmin sunar.
KEV
CISA tarafından tutulan, istismar edildiği bilinen güvenlik açıkları kataloğudur.
Önemli nokta
Bu kaynaklar birlikte kullanılarak daha kapsamlı risk önceliklendirmesi yapılabilir.
59. DevSecOps ve SOC Entegrasyonu
DevSecOps geliştirme ve dağıtım süreçlerine odaklanırken SOC güvenlik olaylarının izlenmesi ve müdahalesinde rol oynar.
Entegrasyon örnekleri
Güvenlik loglarının merkezi izlenmesi.
Uygulama güvenlik olaylarının değerlendirilmesi.
Olay bulgularının geliştirme ekibine aktarılması.
Güvenlik iyileştirme taleplerinin oluşturulması.
Önemli nokta
SOC ve DevSecOps süreçleri arasında görev ve sorumluluklar açıkça belirlenmelidir.
60. Observability Nedir?
Observability, sistemin iç durumunun dışarıdan elde edilen verilerle anlaşılabilmesini destekleyen yaklaşımdır.
Temel veri türleri
Metrics.
Logs.
Traces.
Kullanım alanları
Performans analizi.
Hata tespiti.
Servis ilişkileri.
Olay inceleme.
61. Prometheus Nedir?
Prometheus, metrik toplama ve izleme amacıyla kullanılan açık kaynak sistemdir.
Kullanım alanları
Sistem metrikleri.
Uygulama metrikleri.
Alarm kuralları.
Önemli nokta
Prometheus tek başına bütün log ve dağıtık izleme ihtiyaçlarını karşılayan platform değildir.
62. Grafana Nedir?
Grafana, metrik ve diğer gözlemlenebilirlik verilerinin görselleştirilmesi için kullanılan platformdur.
Kullanım alanları
Dashboard.
Alarm.
Metrik görselleştirme.
Operasyonel raporlama.
63. OpenTelemetry Nedir?
OpenTelemetry, telemetri verilerinin üretilmesi, toplanması ve aktarılması için araçlar ve standartlar sunan açık kaynak gözlemlenebilirlik ekosistemidir.
Temel veri türleri
Traces.
Metrics.
Logs.
Önemli nokta
OpenTelemetry tek başına bütün verilerin saklandığı bir izleme platformu değildir.
64. DORA Metrikleri ve DevOps Performansı
DORA, yazılım teslim ve operasyon performansının değerlendirilmesine yönelik araştırma ve ölçüm yaklaşımları sunar.
Yaygın ölçümler
Dağıtım sıklığı.
Değişiklik teslim süresi.
Dağıtım kaynaklı başarısızlık.
Hizmet toparlanma süresi.
Önemli nokta
DORA ölçüm modeli zaman içerisinde gelişmektedir. Kuruluşlar kullandıkları metrik tanımlarını ve sürümünü açıkça belirtmelidir.
65. DevSecOps Olgunluk Seviyesi Nasıl Ölçülür?
Değerlendirme alanları
Güvenlik politikaları.
Kod güvenliği.
Otomasyon.
Bağımlılık yönetimi.
CI/CD güvenliği.
Container güvenliği.
Güvenlik olayları.
Sürekli iyileştirme.
Önemli nokta
Olgunluk değerlendirmesi yalnızca kullanılan güvenlik aracı sayısına göre yapılmamalıdır.
66. Kurumsal DevSecOps Mimarisi Nasıl Oluşturulur?
Aşama 1: Mevcut durum analizi
Geliştirme ve dağıtım süreçleri incelenir.
Aşama 2: Risk değerlendirmesi
Uygulama ve tedarik zinciri riskleri belirlenir.
Aşama 3: Güvenlik gereksinimleri
Geliştirme standartları oluşturulur.
Aşama 4: Araç entegrasyonu
SAST, SCA, secret scanning ve diğer kontroller planlanır.
Aşama 5: CI/CD güvenliği
Pipeline erişimleri ve dağıtım kontrolleri yapılandırılır.
Aşama 6: İzleme
Güvenlik ve operasyonel telemetri değerlendirilir.
Aşama 7: İyileştirme
Bulgular ve performans ölçümleriyle süreçler geliştirilir.
67. DevSecOps Projesinde Örnek İş Akışı
Bir kurumun web tabanlı CRM uygulaması geliştirdiğini düşünelim.
Adım 1
Geliştirici kod değişikliğini Git deposuna gönderir.
Adım 2
Kod inceleme süreci başlatılır.
Adım 3
CI pipeline otomatik testleri çalıştırır.
Adım 4
SAST ve SCA kontrolleri gerçekleştirilir.
Adım 5
Gizli bilgi taraması yapılır.
Adım 6
Container image oluşturulur ve taranır.
Adım 7
Uygulama test ortamına dağıtılır.
Adım 8
DAST ve ilgili entegrasyon testleri gerçekleştirilir.
Adım 9
Belirlenen güvenlik ve kalite koşulları değerlendirilir.
Adım 10
Uygun onay süreci sonrasında canlıya geçiş yapılır.
Adım 11
Uygulama logları ve güvenlik olayları izlenir.
Önemli nokta
Bu örnek genel bir iş akışıdır. Her kuruluşun teknolojileri ve riskleri farklı olabilir.
68. DevSecOps Uygulamalarında Sık Yapılan Hatalar
Yalnızca araç satın almak
Süreç ve sorumluluk eksikliği devam edebilir.
Güvenlik taramalarını yorumlamamak
Yanlış pozitif veya önemsiz bulgular iş yükünü artırabilir.
Pipeline yetkilerini sınırlandırmamak
Dağıtım altyapısı risk oluşturabilir.
Gizli bilgileri kodda tutmak
Kimlik bilgisi sızıntısına neden olabilir.
Güvenlik testlerini yalnızca sona bırakmak
Düzeltme maliyetini artırabilir.
Canlı ortamı izlememek
Çalışma zamanı tehditleri geç fark edilebilir.
69. DevSecOps Danışmanlığı Neleri Kapsar?
DevSecOps danışmanlığı kuruluşun ihtiyaçlarına göre farklı faaliyetler içerebilir.
Örnek hizmetler
Mevcut durum analizi.
Olgunluk değerlendirmesi.
Güvenlik mimarisi.
CI/CD güvenliği.
SAST entegrasyonu.
DAST entegrasyonu.
SCA entegrasyonu.
Container güvenliği.
Kubernetes güvenliği.
Eğitim.
Önemli nokta
Hizmet kapsamı mevcut altyapı, uygulama sayısı, teknoloji ve hedeflere göre belirlenmelidir.
70. SECURESYS DevOps ve DevSecOps Hizmetleri
SECURESYS, kuruluşların yazılım geliştirme ve operasyon süreçlerinde güvenlik kontrollerinin bütünleştirilmesine yönelik teknik hizmetler ve danışmanlık sunar.
DevSecOps Mevcut Durum Analizi
Geliştirme, test, dağıtım ve güvenlik süreçleri değerlendirilir.
Güvenli Yazılım Geliştirme Danışmanlığı
Güvenlik gereksinimleri ve geliştirme standartları oluşturulması desteklenir.
Kaynak Kod Analizi
Yazılım kaynak kodundaki güvenlik riskleri değerlendirilir.
Web ve API Güvenlik Testleri
Uygulamaların güvenlik testleri gerçekleştirilir.
CI/CD Güvenlik Entegrasyonu
Otomatik güvenlik kontrollerinin pipeline süreçlerine entegre edilmesi desteklenir.
Açık Kaynak ve Bağımlılık Güvenliği
Üçüncü taraf yazılım bileşenleriyle ilişkili riskler değerlendirilir.
Container ve Kubernetes Güvenliği
Container ve orkestrasyon ortamlarının güvenlik yapılandırmaları incelenebilir.
Güvenlik İzleme ve SOC Entegrasyonu
Uygulama güvenlik olaylarının izlenmesi ve ilgili süreçlerle ilişkilendirilmesi desteklenebilir.
DevSecOps Eğitimleri
Yazılım ekiplerinin güvenli geliştirme ve güvenlik otomasyonu konularındaki yetkinlikleri desteklenebilir.
SECURESYS yaklaşımında DevSecOps; güvenliği yazılım geliştirme sürecinin sonundaki ayrı bir kontrol olmaktan çıkararak tasarım, geliştirme, test, dağıtım ve işletim aşamalarına entegre etmeyi hedefler.
Sık Sorulan Sorular (SSS)
1. DevOps nedir?
Yazılım geliştirme ve operasyon süreçlerinde iş birliği, otomasyon ve sürekli iyileştirmeyi destekleyen yaklaşımdır.
2. DevSecOps nedir?
Güvenliğin yazılım geliştirme ve operasyon süreçlerine entegre edilmesini hedefleyen yaklaşımdır.
3. DevOps ile DevSecOps arasındaki fark nedir?
DevSecOps, DevOps süreçlerinde güvenlik kontrollerinin sistematik olarak uygulanmasını vurgular.
4. CI/CD nedir?
Kod entegrasyonu, test ve yazılım teslim/dağıtım süreçlerinin otomasyonuna yönelik uygulamalardır.
5. Docker nedir?
Uygulamaların container olarak paketlenmesini ve çalıştırılmasını sağlayan teknolojiler sunan platformdur.
6. Kubernetes nedir?
Container tabanlı uygulamaların orkestrasyonunu sağlayan açık kaynak platformdur.
7. GitOps nedir?
Sistemlerin istenen durumunun Git üzerinden yönetilmesine dayanan yaklaşımdır.
8. Infrastructure as Code nedir?
Altyapı kaynaklarının kod veya bildirime dayalı yapılandırmalarla yönetilmesidir.
9. SAST nedir?
Kaynak kod veya ilgili yazılım bileşenlerinin statik güvenlik analizidir.
10. DAST nedir?
Çalışan uygulamanın dinamik güvenlik analizidir.
11. SCA nedir?
Üçüncü taraf ve açık kaynak yazılım bileşenlerinin analizidir.
12. SBOM nedir?
Yazılımı oluşturan bileşenlerin yapılandırılmış envanteridir.
13. Secret scanning nedir?
Kaynak kod ve ilgili ortamlardaki gizli bilgilerin tespit edilmesini amaçlayan kontroldür.
14. Container security nedir?
Container image, çalışma zamanı ve ilgili altyapının güvenliğini kapsayan yaklaşımdır.
15. Kubernetes security nedir?
Kubernetes erişim, ağ, iş yükü ve yapılandırma güvenliğinin yönetilmesidir.
16. Shift Left Security nedir?
Güvenlik kontrollerinin geliştirme sürecinin erken aşamalarına taşınmasıdır.
17. Shift Right Security nedir?
Canlı ortamda güvenlik ve operasyonel davranışların izlenmesine odaklanan yaklaşımdır.
18. NIST SSDF nedir?
Güvenli yazılım geliştirme uygulamalarını tanımlayan NIST çerçevesidir.
19. DevSecOps için hangi araçlar kullanılır?
SAST, DAST, SCA, secret scanning, container scanning ve CI/CD araçları kullanılabilir.
20. DevSecOps danışmanlığı neden önemlidir?
Kuruluşun güvenli yazılım geliştirme süreçlerini değerlendirmesine, otomatikleştirmesine ve iyileştirmesine yardımcı olabilir.
Sonuç: DevOps ve DevSecOps Kurumlar İçin Neden Önemlidir?
DevOps, yazılım geliştirme ve operasyon ekipleri arasında iş birliğini ve otomasyonu destekler.
DevSecOps ise güvenlik faaliyetlerini yazılım geliştirme yaşam döngüsüne entegre etmeyi hedefler.
CI/CD süreçleri kod entegrasyonu, test ve dağıtım faaliyetlerinin otomasyonunu sağlar.
Docker ve Kubernetes, container tabanlı uygulamaların paketlenmesini ve yönetilmesini destekler.
Infrastructure as Code ve GitOps, altyapı yönetiminde otomasyon ve izlenebilirlik sağlar.
SAST, DAST ve SCA gibi güvenlik kontrolleri farklı risklerin belirlenmesine yardımcı olur.
SBOM ve yazılım tedarik zinciri güvenliği, kullanılan bileşenlerin ve geliştirme süreçlerinin görünürlüğünü artırır.
NIST SSDF ve OWASP SAMM gibi çerçeveler güvenli geliştirme uygulamalarının değerlendirilmesini destekler.
Başarılı bir DevSecOps yaklaşımının temel amacı yalnızca yazılımı daha hızlı dağıtmak değil; güvenliği, kaliteyi, izlenebilirliği ve sürdürülebilirliği yazılım geliştirme ve işletim süreçlerinin ayrılmaz parçası haline getirmektir.
Kaynaklar ve Referanslar
NIST Secure Software Development Framework: https://csrc.nist.gov/projects/ssdf
OWASP Software Assurance Maturity Model: https://owaspsamm.org
OWASP Application Security Verification Standard: https://owasp.org/www-project-application-security-verification-standard/
OWASP Top 10: https://owasp.org/www-project-top-ten/
OWASP API Security: https://owasp.org/www-project-api-security/
Docker Documentation: https://docs.docker.com
Kubernetes Documentation: https://kubernetes.io/docs/
OpenGitOps: https://opengitops.dev
Terraform Documentation: https://developer.hashicorp.com/terraform/docs
Ansible Documentation: https://docs.ansible.com
OpenTelemetry: https://opentelemetry.io
DORA: https://dora.dev
SLSA: https://slsa.dev
SPDX: https://spdx.dev
CycloneDX: https://cyclonedx.org
CISA Known Exploited Vulnerabilities: https://www.cisa.gov/known-exploited-vulnerabilities-catalog
İlgili Makaleler
Yazılım Geliştirme, Kurumsal Uygulamalar ve DevSecOps

Yazılım Nedir? Yazılım Türleri, Kullanım Alanları ve Dünyada En Yaygın Yazılımlar
Yazılım nedir, türleri nelerdir? CRM, ERP, depo takip, stok yönetimi, web ve mobil uygulamalar ile özel yazılım geliştirme hakkında kapsamlı rehber.

Yazılım Dilleri Nelerdir? Hangi Dil Ne İşe Yarar?
Yazılım dilleri nelerdir? Python, Java, C#, PHP, JavaScript ve diğer programlama dillerinin kullanım alanlarını, CRM, ERP ve stok yazılımı örnekleriyle öğrenin.

Web Uygulaması Nedir? Web Tabanlı Yazılım, Frontend ve Backend Geliştirme Rehberi
Web uygulaması nedir? Frontend, backend, API, veritabanı, bulut mimarisi, CRM, ERP, depo ve stok takip yazılımı geliştirme süreçlerini keşfedin.

Mobil Uygulama Nedir? Android, iOS ve Cross-Platform Mobil Yazılım Geliştirme Rehberi
Mobil uygulama nedir, nasıl geliştirilir? Android, iOS, Flutter, React Native, mobil CRM, depo takip ve stok yönetim yazılımlarını keşfedin.

API Nedir? REST API, GraphQL, Mikroservisler ve Kurumsal Yazılım Entegrasyonları
API nedir, nasıl çalışır? REST API, SOAP, GraphQL, Webhook, mikroservisler, CRM–ERP entegrasyonu, stok yönetimi ve API güvenliği hakkında rehber.

CRM Yazılımı Nedir? Müşteri Takip, Satış Yönetimi, Teklif ve Proje Takip Sistemleri Rehberi
CRM yazılımı nedir? Müşteri takip, satış, teklif, sipariş, sözleşme, proje yönetimi, ERP entegrasyonu ve özel CRM geliştirme süreçlerini keşfedin.
Bu konuda profesyonel destek mi arıyorsunuz?
Uzman ekibimiz ücretsiz danışmanlık için sizi en kısa sürede arasın.