GitHub ve Azure DevOps'ta çekme isteği ek açıklamalarını etkinleştirme
DevOps güvenliği, çekme isteklerinde (PR) ek açıklama olarak güvenlik bulgularını kullanıma sunar. Güvenlik işleçleri Bulut için Microsoft Defender çekme isteği ek açıklamalarını etkinleştirebilir. Kullanıma sunulan tüm sorunlar geliştiriciler tarafından düzeltilebilir. Bu işlem, olası güvenlik açıklarını ve yanlış yapılandırmaları üretim aşamasına girmeden önce önleyebilir ve düzeltebilir. DevOps güvenliği, dosyanın tamamında algılanan tüm güvenlik açıkları yerine çekme isteği sırasında ortaya çıkarılan farklar içindeki güvenlik açıklarına açıklama ekler. Geliştiriciler kaynak kodu yönetim sistemlerinde ek açıklamaları görebilir ve Güvenlik işleçleri Bulut için Microsoft Defender çözümlenmemiş bulguları görebilir.
Bulut için Microsoft Defender ile Azure DevOps'ta çekme isteği ek açıklamalarını yapılandırabilirsiniz. GitHub Gelişmiş Güvenlik müşterisiyseniz GitHub'da çekme isteği ek açıklamaları alabilirsiniz.
Çekme isteği ek açıklamaları nedir?
Çekme isteği ek açıklamaları, GitHub veya Azure DevOps'ta bir çekme isteğine eklenen açıklamalardır. Bu ek açıklamalar, yapılan kod değişiklikleri ve çekme isteğinde tanımlanan güvenlik sorunları hakkında geri bildirim sağlar ve gözden geçirenlerin yapılan değişiklikleri anlamasına yardımcı olur.
Ek açıklamalar, depoya erişimi olan bir kullanıcı tarafından eklenebilir ve değişiklik önermek, soru sormak veya kodla ilgili geri bildirim sağlamak için kullanılabilir. Ek açıklamalar, kod ana dal ile birleştirilmeden önce düzeltilmesi gereken sorunları ve hataları izlemek için de kullanılabilir. Bulut için Defender'daki DevOps güvenliği, güvenlik bulgularını ortaya çıkarabilmek için ek açıklamaları kullanır.
Önkoşullar
GitHub için:
- Azure hesabı. Henüz bir Azure hesabınız yoksa azure ücretsiz hesabınızı bugün oluşturabilirsiniz.
- GitHub Advanced Security müşterisi olun.
- GitHub depolarınızı Bulut için Microsoft Defender bağlayın.
- Microsoft Security DevOps GitHub eylemini yapılandırın.
Azure DevOps için:
- Azure hesabı. Henüz bir Azure hesabınız yoksa azure ücretsiz hesabınızı bugün oluşturabilirsiniz.
- Azure aboneliğine yazma erişimine (sahip/katkıda bulunan) sahip olun.
- Azure DevOps depolarınızı Bulut için Microsoft Defender bağlayın.
- Microsoft Güvenlik DevOps Azure DevOps uzantısını yapılandırın.
GitHub'da çekme isteği ek açıklamalarını etkinleştirme
Geliştiricileriniz GitHub'da çekme isteği ek açıklamalarını etkinleştirerek doğrudan ana dala çekme isteği oluşturduklarında güvenlik sorunlarını görme olanağına sahip olur.
GitHub'da çekme isteği ek açıklamalarını etkinleştirmek için:
Bulut için Defender eklediğiniz bir depo seçin.
.github/iş akışları'na
Your repository's home page
>gidin.Düzenle'yi seçin.
Tetikleyici bölümünü bulun ve şunları içerecek şekilde güncelleştirin:
# Triggers the workflow on push or pull request events but only for the main branch pull_request: branches: ["main"]
Örnek bir depo da görüntüleyebilirsiniz.
(İsteğe bağlı) Tetikleyici bölümünün altına dalları girerek hangi dallarda çalıştırmak istediğinizi seçebilirsiniz. Tüm dalları eklemek istiyorsanız, dal listesiyle satırları kaldırın.
Start commit (İşlemeye başla) öğesini seçin.
Değişiklikleri işle'yi seçin.
Tarayıcı tarafından bulunan tüm sorunlar, çekme isteğinizin Dosyalar değiştirildi bölümünde görüntülenebilir.
- Testlerde kullanılır - Uyarı üretim kodunda değil.
Azure DevOps'ta çekme isteği ek açıklamalarını etkinleştirme
Azure DevOps'ta çekme isteği ek açıklamalarını etkinleştiren geliştiricileriniz, doğrudan ana dala PR'ler oluştururken güvenlik sorunlarını görme olanağı elde eder.
CI Derlemesi için Derleme Doğrulama ilkesini etkinleştirme
Çekme isteği ek açıklamalarını etkinleştirebilmeniz için önce ana dalınızın CI Derlemesi için Derleme Doğrulama ilkesini etkinleştirmiş olması gerekir.
CI Derlemesi için Derleme Doğrulama ilkesini etkinleştirmek için:
Azure DevOps projenizde oturum açın.
Proje ayarları>Depoları'na gidin.
Çekme isteklerini etkinleştirmek için depoyu seçin.
İlkeler'i seçin.
Dal İlkeleri>Ana dalı'na gidin.
Derleme Doğrulama bölümünü bulun.
Deponuz için derleme doğrulamasının Açık olarak ayarlandığından emin olun.
Kaydet'i seçin.
Bu adımları tamamladıktan sonra, daha önce oluşturduğunuz derleme işlem hattını seçebilir ve ayarlarını gereksinimlerinize uyacak şekilde özelleştirebilirsiniz.
Çekme isteği ek açıklamalarını etkinleştirme
Azure DevOps'ta çekme isteği ek açıklamalarını etkinleştirmek için:
Azure Portal’ında oturum açın.
Bulut için Defender> DevOps güvenliğine gidin.
Çekme isteği ek açıklamalarını etkinleştirmek için tüm ilgili depoları seçin.
Kaynakları yönet'i seçin.
Çekme isteği ek açıklamalarını Açık olarak değiştirin.
(İsteğe bağlı) Açılan menüden bir kategori seçin.
Not
Şu anda yalnızca Kod Olarak Altyapı yanlış yapılandırmaları (ARM, Bicep, Terraform, CloudFormation, Dockerfiles, Helm Grafikleri ve daha fazlası) desteklenmektedir.
(İsteğe bağlı) Açılan menüden bir önem düzeyi seçin.
Kaydet'i seçin.
Çekme isteklerinizdeki tüm ek açıklamalar, yapılandırmalarınıza göre bundan sonra görüntülenecektir.
Azure DevOps'ta Projelerim ve Kuruluşlarım için çekme isteği ek açıklamalarını etkinleştirmek için:
Bunu, Microsoft'un kullanıma sunduğu Azure DevOps Kaynak API'sini Güncelleştir'i çağırarak program aracılığıyla yapabilirsiniz. Güvenlik Kaynağı Sağlayıcısı.
API Bilgileri:
Http Yöntemi: PATCH URL'leri:
- Azure DevOps Proje Güncelleştirmesi:
https://management.azure.com/subscriptions/<subId>/resourcegroups/<resourceGroupName>/providers/Microsoft.Security/securityConnectors/<connectorName>/devops/default/azureDevOpsOrgs/<adoOrgName>/projects/<adoProjectName>?api-version=2023-09-01-preview
- Azure DevOps Kuruluş Güncelleştirmesi]:
https://management.azure.com/subscriptions/<subId>/resourcegroups/<resourceGroupName>/providers/Microsoft.Security/securityConnectors/<connectorName>/devops/default/azureDevOpsOrgs/<adoOrgName>?api-version=2023-09-01-preview
İstek Gövdesi:
{
"properties": {
"actionableRemediation": {
"state": <ActionableRemediationState>,
"categoryConfigurations":[
{"category": <Category>,"minimumSeverityLevel": <Severity>}
]
}
}
}
Parametreler / Kullanılabilir Seçenekler
<ActionableRemediationState>
Açıklama: Çekme İsteği Ek Açıklama Yapılandırma Seçeneklerinin Durumu: Etkin | Sakat
<Category>
Açıklama: Çekme isteklerinde ek açıklama eklenecek Bulgular kategorisi.
Seçenekler: IaC | Kod | Yapıtlar | Bağımlılıklar | Kapsayıcılar Not: Şu anda yalnızca IaC desteklenmektedir
<Severity>
Açıklama: Çekme isteği ek açıklamaları oluşturulurken dikkate alınması gereken bir bulmanın en düşük önem derecesi.
Seçenekler: Yüksek | Orta | Alçak
Az cli aracını kullanarak Azure DevOps Org'un IaC kategorisi için en düşük önem derecesi Orta olan ÇEKME ek açıklamalarını etkinleştirme örneği.
Kuruluş güncelleştirme:
az --method patch --uri https://management.azure.com/subscriptions/4383331f-878a-426f-822d-530fb00e440e/resourcegroups/myrg/providers/Microsoft.Security/securityConnectors/myconnector/devops/default/azureDevOpsOrgs/testOrg?api-version=2023-09-01-preview --body "{'properties':{'actionableRemediation':{'state':'Enabled','categoryConfigurations':[{'category':'IaC','minimumSeverityLevel':'Medium'}]}}}
Az cli aracını kullanarak Azure DevOps Projesi'nin IaC kategorisi için en düşük önem derecesi Yüksek olan ÇEKME ek açıklamalarını etkinleştirme örneği.
Projeyi Güncelleştir:
az --method patch --uri https://management.azure.com/subscriptions/4383331f-878a-426f-822d-530fb00e440e/resourcegroups/myrg/providers/Microsoft.Security/securityConnectors/myconnector/devops/default/azureDevOpsOrgs/testOrg/projects/testProject?api-version=2023-09-01-preview --body "{'properties':{'actionableRemediation':{'state':'Enabled','categoryConfigurations':[{'category':'IaC','minimumSeverityLevel':'High'}]}}}"
Daha fazla bilgi edinin
- DevOps güvenliği hakkında daha fazla bilgi edinin.
- Kod Olarak Altyapı'da DevOps güvenliği hakkında daha fazla bilgi edinin.
Sonraki adımlar
Şimdi DevOps güvenliği hakkında daha fazla bilgi edinin.