Depo koruması
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020
Kaynak kodu, işlem hattının YAML dosyası ve gerekli betikler ve araçlar bir sürüm denetimi deposunda depolanır. Kodda ve işlem hattında yapılan değişikliklerin güvenli olduğundan emin olmak için izinler ve dal ilkeleri kullanılmalıdır. Depolara işlem hattı izinleri ve denetimleri de ekleyebilirsiniz.
Ayrıca, depolar için varsayılan erişim denetimini gözden geçirmeniz gerekir.
Git'in tasarımı nedeniyle, dal düzeyinde koruma sizi yalnızca şu ana kadar taşıyacaktır. Depoya anında iletme erişimi olan kullanıcılar genellikle yeni dallar oluşturabilir. GitHub açık kaynak projelerini kullanıyorsanız GitHub hesabı olan herkes deponuzun çatalını oluşturabilir ve katkıları geri önerebilir. İşlem hatları belirli dallarla değil bir depoyla ilişkilendirildiğinden, kod ve YAML dosyalarının güvenilmediğini varsaymalısınız.
Çatallar
GitHub'dan genel depolar oluşturuyorsanız çatal derlemelerine ilişkin tutumunuzu göz önünde bulundurmanız gerekir. Çatallar özellikle kuruluşunuzun dışından geldikleri için tehlikelidir. Ürünlerinizi katkıda bulunan koddan korumak için aşağıdaki önerileri göz önünde bulundurun.
Dekont
Aşağıdaki öneriler öncelikle GitHub'dan genel depolar oluşturmak için geçerlidir.
Çatal derlemelerine gizli dizi sağlama
Varsayılan olarak, işlem hatlarınız çatal oluşturacak şekilde yapılandırılır, ancak gizli diziler ve korumalı kaynaklar bu işlem hatlarındaki işler için varsayılan olarak kullanılamaz. Bu ikinci korumayı kapatmayın.
Dekont
Gizli dizilere erişmek için çatal derlemelerini etkinleştirdiğinizde, Azure Pipelines varsayılan olarak çatal derlemeleri için kullanılan erişim belirtecini kısıtlar. Açık kaynaklara normal erişim belirtecinden daha sınırlı erişimi vardır. Çatal derlemelerine normal derlemelerle aynı izinleri vermek için, Çatal derlemelerinin normal derlemelerle aynı izinlere sahip olmasını sağlayın ayarını etkinleştirin.
Dekont
Gizli dizilere erişmek için çatal derlemelerini etkinleştirseniz bile Azure Pipelines, çatal derlemeleri için kullanılan erişim belirtecini kısıtlar. Açık kaynaklara normal erişim belirtecinden daha sınırlı erişimi vardır. Bu korumayı devre dışı bırakamazsınız.
Çatal derlemelerini el ile tetikleme göz önünde bulundurun
Otomatik çatal derlemelerini kapatabilir ve bunun yerine bu katkıları el ile oluşturmanın bir yolu olarak çekme isteği açıklamalarını kullanabilirsiniz. Bu ayar, derlemeyi tetiklemeden önce kodu gözden geçirme fırsatı verir.
Çatal derlemeleri için Microsoft tarafından barındırılan aracıları kullanma
Şirket içinde barındırılan aracılarda çatallardan derlemeler çalıştırmayın. Bunu yaparak, şirket ağınızdaki makinelerde dış kuruluşların dışarıdan kod çalıştırması için etkili bir yol sağlamış olursunuz. Mümkün olduğunda Microsoft tarafından barındırılan aracıları kullanın. Şirket içinde barındırılan aracınız için bir tür ağ yalıtımı kullanın ve aracıların durumları arasında kalıcı olmadığından emin olun.
Kod değişikliklerini gözden geçirme
çatallı bir çekme isteğinde işlem hattınızı çalıştırmadan önce önerilen değişiklikleri dikkatle gözden geçirin ve rahatça çalıştırdığınızdan emin olun.
Çalıştırabileceğiniz YAML işlem hattının sürümü, çekme isteğinden alınan sürümdür. Bu nedenle, komut satırı betikleri veya birim testleri gibi işlem hattı çalıştırıldığında YAML kodunda ve kodda yapılan değişikliklere özellikle dikkat edin.
GitHub belirteç kapsamı sınırlaması
GitHub çatallı çekme isteği oluşturduğunuzda Azure Pipelines, işlem hattının GitHub depo içeriğini değiştiremesini sağlar. Bu kısıtlama yalnızca Azure Pipelines GitHub uygulamasını GitHub ile tümleştirmek için kullandığınızda geçerlidir. OAuth uygulaması gibi diğer GitHub tümleştirme biçimlerini kullanıyorsanız kısıtlama uygulanmaz.
Kullanıcı dalları
Kuruluşunuzdaki doğru izinlere sahip kullanıcılar yeni veya güncelleştirilmiş kod içeren yeni dallar oluşturabilir. Bu kod korumalı dallarınızla aynı işlem hattı üzerinden çalıştırılabilir. Ayrıca, yeni daldaki YAML dosyası değiştirilirse, işlem hattını çalıştırmak için güncelleştirilmiş YAML kullanılır. Bu tasarım büyük esneklik ve self servis sağlarken, tüm değişiklikler güvenli değildir (kötü amaçlı olarak yapılıp yapılmadığı).
İşlem hattınız kaynak kodu kullanıyorsa veya Azure Repos'ta tanımlanmışsa Azure Repos izinleri modelini tam olarak anlamanız gerekir. Özellikle, depo düzeyinde Dal Oluşturma iznine sahip bir kullanıcı, katkıda bulunma izni olmasa bile depoya kod ekleyebilir.
Sonraki adımlar
Ardından, korumalı kaynaklar üzerinde denetimler tarafından sunulan daha fazla koruma hakkında bilgi edinin.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin