DevOps araçları için rol tabanlı erişim denetimi

Altyapı dağıtımlarınız için bulut tabanlı çözümler dağıttığınızda, güvenlik her zaman en önemli endişeniz olmalıdır. Microsoft, temel alınan bulut altyapısını güvenli tutar. Azure DevOps veya GitHub'da güvenliği yapılandırabilirsiniz.

Ön koşullar

Hangi Azure Giriş Bölgesi şablonlarını dağıtabileceğinize karar verdikten sonra bunları kendi deponuza kopyalayın. CI/CD işlem hatlarını ayarlayın. Hem GitHub hem de Azure DevOps için, kişisel erişim belirteçleri (PAT) ve microsoft Entra ID gibi bir kimlik sağlayıcısıyla tümleştirme gibi çeşitli kimlik doğrulama yöntemleri mevcuttur. Daha fazla bilgi için bkz . Kişisel erişim belirteçlerini kullanma.

Tüm özelliklerini kullanmak için Microsoft Entra ID ile tümleştirmenizi öneririz. Tümleştirme, rol atama sürecinizi ve kimlik yaşam döngüsü yönetiminizi kolaylaştırmaya yardımcı olur. Daha fazla bilgi için bkz. Kuruluşunuzu Microsoft Entra Id'ye Bağlan. GitHub kullanıyorsanız GitHub Enterprise'ı Microsoft Entra ID ile tümleştirmeyi göz önünde bulundurun.

Genel Tasarım Konuları

Microsoft Entra Id ve DevOps aracınız genelinde yöneticiler ve hizmet hesabı grupları üzerinde sıkı denetime sahip olmanız önerilir. Tüm rol atamalarınızda en az ayrıcalık ilkesini uygulamayı göz önünde bulundurun.

Örneğin, kuruluşunuzun Azure Giriş Bölgeleriniz için Azure Resource Manager şablonlarını koruyan bir Platform veya Cloud Excellence ekibi olabilir. Bu ekipteki kullanıcıları, kimlik sağlayıcınız olarak kullandığınızı varsayarak Microsoft Entra Id'deki bir Güvenlik Grubuna atayın. DevOps aracınızda söz konusu güvenlik grubuna roller atayın; böylece bu kullanıcılar işlerini yapabilir.

Active Directory'deki herhangi bir yönetici veya yüksek ayrıcalıklı hesap için, kimlik bilgilerinin Microsoft Entra Kimliği ile eşitlenmediğinden (tam tersi) öneririz. Bu yaklaşım yanal hareket tehdidini azaltır. Microsoft Entra Id'deki bir yöneticinin güvenliği aşılırsa, saldırgan Azure DevOps gibi herhangi bir bulut varlığına kolayca erişemez. Bu hesap CI/CD işlem hatlarına kötü amaçlı görevler ekleme potansiyeline sahip değildir. Bu adım, DevOps ortamınızda yükseltilmiş izinler atanmış olan tüm kullanıcılar (Derleme veya Proje/Koleksiyon Yönetici istrator'lar gibi) için özellikle önemlidir. Daha fazla bilgi için bkz . Microsoft Entra Id'de en iyi güvenlik yöntemleri.

Azure DevOps rol tabanlı erişimle ilgili dikkat edilmesi gerekenler

Kuruluş/koleksiyon, proje veya nesne düzeyindeki güvenlik grupları, ilkeler ve ayarlarla Azure DevOps'ta güvenliği yönetin. Microsoft Entra ID gibi bir kimlik sağlayıcısıyla tümleştirmek için, tüm kullanıcılar için çok faktörlü kimlik doğrulamasını zorunlu kılmak üzere koşullu erişim ilkeleri oluşturmayı göz önünde bulundurun. İlkeler, Azure DevOps kuruluşunuza erişime ve IP adresi, erişim için kullanılan cihaz türü ve cihaz uyumluluğu ile ilgili daha ayrıntılı kısıtlamalara olanak sağlar.

Platform ekibinizde Azure Giriş Bölgelerinizi yöneten ekip üyelerinin çoğu için Temel erişim düzeyi ve Katkıda Bulunan varsayılan güvenlik grubu yeterli erişim sağlamalıdır. Katkıda Bulunan güvenlik grubu, deponuzdaki Azure Giriş Bölgesi şablonlarını ve bunları doğrulayan ve dağıtan CI/CD işlem hatlarını düzenlemelerine olanak tanır.

Platform ekibinizi Azure DevOps proje düzeyinde Katkıda Bulunan güvenlik grubuna atamanızı öneririz. Bu yaklaşım en az ayrıcalık ilkesini izler. Bu atamalar aşağıda gösterilen Proje Ayarlar sayfasından yapılabilir.

Screenshot showing the project settings page where assignments can be made.

Azure DevOps Projeleriniz ve kuruluşlarınız için bir diğer en iyi yöntem de devralmayı mümkün olduğunca devre dışı bırakmaktır. Kullanıcılar, güvenlik grubu atamaları tarafından izin verilen izinleri devralır. Varsayılan olarak devralmaya izin ver özelliği nedeniyle, beklenmeyen kullanıcılar erişim veya izin alabilir.

Örneğin, Platform ekibi Katkıda Bulunan güvenlik grubu üyeliğinizi atarsanız Azure Giriş Bölgeleri deposundaki izinlerini doğrulayın. Güvenlik grubunun çekme istekleri sırasında bu ilkeleri atlamasına izin verilmediğini doğrulamak için dal ilkeleriniz olmalıdır. Project Ayarlar> Repositories altında bu ayarı doğrulayın.

Kullanıcılara izin atadıktan sonra, yöneticiler ve diğer kullanıcıların beklenmeyen kullanım düzenlerini izlemek ve bunlara tepki vermek için denetim olaylarını düzenli aralıklarla gözden geçirin. Log Analytics çalışma alanına denetim akışı oluşturarak başlayın. Çalışma alanınız Microsoft Sentinel kullanıyorsa, izinlerin yanlış kullanılması gibi önemli olaylar hakkında sizi uyarmak için analiz kuralları oluşturun.

Daha fazla bilgi edinmek için aşağıdaki kaynaklara bakın:

GitHub Rol Tabanlı ErişimLe İlgili Dikkat Edilmesi Gerekenler

Birincil DevOps aracınız GitHub ise, kullanıcılara depo düzeyinde, ekip düzeyinde veya kuruluş düzeyinde roller vererek kaynaklara erişim atayabilirsiniz. Azure Giriş Bölgeleri deposunu çatalladıktan ve Microsoft Entra ID gibi bir kimlik sağlayıcısıyla tümleştirdikten sonra GitHub'da bir ekip oluşturmayı göz önünde bulundurun. Bu ekip yazma erişimini yeni Azure Giriş Bölgesi deponuza atayın. Giriş Bölgelerini değiştiren ve dağıtan Platform ekibi üyelerinizin çoğu için yazma erişimi yeterli olmalıdır. Ekipte yer alan proje yöneticileri veya Scrum yöneticileri için bu depoya bakım rolünü atamanız gerekebilir.

Tüm bu rol atamalarını tümleşik kimlik sağlayıcısı aracılığıyla yönetmenizi öneririz. Örneğin GitHub'da oluşturduğunuz Azure Giriş Bölgesi deposu için Platform ekibini Microsoft Entra Id'deki ilgili Platform ekibi Güvenlik Grubu ile eşitleyebilirsiniz. Ardından, Microsoft Entra Güvenlik Grubuna üye eklediğinizde veya kaldırdığınızda, bu değişiklikler GitHub Enterprise Cloud rol atamalarınıza yansıtılır.

Dekont

Belirli bir GitHub ekibini tümleşik bir kimlik sağlayıcısına bağladıktan sonra, ekip üyeliğini bu sağlayıcı aracılığıyla yönetmeniz kısıtlanır.

Sonraki adımlar

GitHub'da rolleri ve ekipleri yönetme hakkında daha fazla bilgi için şu kaynaklara bakın: