GitHub Kurumsal Bulut depolarını Azure SRE Aracısı'na bağlama

Important

Azure SRE Aracısı'nın bu özelliği şu anda önizleme aşamasındadır. Beta veya önizleme aşamasında olan ya da başka bir şekilde henüz genel kullanıma sunulmamış olan Azure özelliklerinde geçerli olan yasal koşullar için bkz. Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları.

GitHub Enterprise Cloud (<TENANT>.ghe.com) veya github.com üzerinde barındırılan depoları byO (Kendi GitHub Uygulama Getir) kullanarak Azure SRE Aracınıza bağlayın. Aracı, Azure Key Vault'ta depolanan ve asla kopyalanmayan uygulamanızın özel anahtarını kullanarak kısa ömürlü kurulum belirteçleri oluşturur.

Uyarı

BYO GitHub Uygulaması hem github.com hem de *.ghe.com konakları için çalışır. OAuth veya PAT ile github.com için bkz. GitHub bağlayıcısını ayarlama.

BYO GitHub Uygulaması kimlik doğrulaması ne zaman kullanılmalı?

BYO App’i şu durumlarda kullanın:

  • Kuruluşunuz için uygulama tabanlı kimlik doğrulaması ve anahtar saklama denetimleri gerekir.
  • *.ghe.com depolarına bağlanıyorsunuz (bu gereklidir, çünkü OAuth ve PAT GHE ana bilgisayarlarında kullanılamaz).
  • Kullanıcı belirteçleri yerine yükleme belirteci tabanlı erişim istiyorsunuz.

Prerequisites

Requirement Ayrıntılar
Azure SRE Aracısı Yönetici veya Standart Kullanıcı rolüyle Çalışıyor durumundaki bir aracı
GitHub Uygulaması Hedef ana bilgisayarınızda oluşturulan bir GitHub Uygulaması (github.com veya <TENANT>.ghe.com)
GitHub yönetici erişimi GitHub App kapsamını oluşturmak, yüklemek veya doğrulamak için kuruluş veya depo yöneticisi erişimi
Azure Key Vault GitHub Uygulamasının özel anahtarını depolayabileceğiniz kasa
İdare edilen kimlik Aracının yönetilen kimliğine Key Vault Secrets User rolünü atama özelliği

GitHub uygulaması oluşturma

Doğru izinlere sahip bir GitHub Uygulamanız varsa >Azure Key Vault içinde özel anahtarı depolama bölümüne atlayın.

  1. GitHub konağınıza gidin:
    • github.com: Kuruluş >Settings>Geldirici ayarlarına gidin>GitHub Apps>Yeni GitHub Uygulaması
    • <TENANT>.ghe.com: GHE örneğinizde aynı yol
  2. Uygulama ayrıntılarını doldurun:
    • GitHub Uygulama adı: örneğin, sre-agent-reader
    • Giriş sayfası URL'si: https://sre.azure.com
    • Web Kancası: Etkin seçeneğinin işaretini kaldırın (aracı web kancalarını kullanmaz)
  3. İzinler'in altında şunları ayarlayın:
    • Depo izinleri > İçerik: Salt okunur (gerekli)
    • Depo izinleri > Meta veriler: Salt okunur (otomatik seçili)
    • İsteğe bağlı olarak Sorunlar ve Çekme istekleri için okuma erişimi ekleyin
  4. Bu GitHub Uygulaması nereye yüklenebilir? altında Bu hesapta'i seçin.
  5. GitHub Uygulaması Oluştur'u seçin.
  6. Uygulama ayarları sayfasında gösterilen İstemci Kimliği'ne dikkat edin.

GitHub uygulamasını yükleme

  1. GitHub Uygulama ayarları sayfasında, sol kenar çubuğundan Yükle Uygulamayı seçin.
  2. Kuruluşunuzu seçin.
  3. Tüm depolar'ı seçin veya belirli depoları seçin.
  4. Yükle'yi seçin.

GitHub uygulama özel anahtarı oluşturma

  1. GitHub uygulaması ayarları sayfasında, Özel anahtarlar bölümüne aşağı kaydırın.
  2. Özel anahtar oluştur'a tıklayın.
  3. .pem dosyası indirilir. Bu dosya, aracının kimlik doğrulaması için kullandığı RSA özel anahtarıdır.

Caution

PEM'i güvende tutun. Sonraki adımda Key Vault'ye yüklersiniz. Depoya kaydetmeyin ve paylaşmayın.

Özel anahtarı Azure Key Vault'ta depolayın

  1. Azure portalını açın ve Key Vault gidin.
  2. Gizli Anahtarlar>Oluştur/İçe Aktar bölümüne gidin.
  3. Ad'ı (örneğin, sre-agent-github-app-key) ayarlayın ve tam PEM içeriğini Değer alanına (-----BEGIN RSA PRIVATE KEY----- ve -----END RSA PRIVATE KEY----- başlıkları dahil) yapıştırın.
  4. Oluştur'i seçin.
  5. Gizli diziyi açın, geçerli sürümü seçin ve Gizli Dizi Tanımlayıcısı URI'sini kopyalayın:
https://myvault.vault.azure.net/secrets/my-github-app-key/<VERSION>

Tip

Sürümlü ve sürümsüz URI: Belirli bir anahtar sürümüne sabitlemek için sürümlü URI’yi (/<VERSION> son ekiyle) kullanabilir veya her zaman en son sürümü kullanmak için sürümü belirtmeyebilirsiniz. Anahtarı döndürdüğünüzde aracının URI'yi güncelleştirmeden yeni sürümü otomatik olarak alması için, tersine çevrilmemiş URI'yi kullanın.

Aracı kimliğine Key Vault erişimi verin

  1. Azure portalında Key Vault>Access denetimi (IAM) açın.
  2. Key Vault Secrets User rolünü aracının yönetilen kimliğine atayın.
  3. Rol atamanın etkili olmasını bekleyin.

Kod Erişimi'nde BYO uygulamasını yapılandırma

  1. Temsilcinizi portalda açın.
  2. Oluşturucu>Kod Erişimi'ne gidin.
  3. Depo ekle'yi seçin.
  4. GitHub seçin ve konağı girin:
    • github.com herkese açık GitHub için
    • <TENANT>.ghe.com Kurumsal Bulut için
  5. Kimlik Doğrulamasına Devam Edin.
  6. Kendi GitHub Uygulamanızı seçin.
  7. Girmek:
    • Müşteri Kimliği
    • Özel anahtar gizli dizisi URI’si (Key Vault)
    • İsteğe bağlı Key Vault identity (veya sistem tarafından atanmış kalsın)
  8. Bağlan seçeneğini seçin.

Sihirbaz kimlik bilgilerinizi doğrular. İşlem başarılı olduğunda, yeşil bir onay işaretiyle birlikte GitHub Uygulaması olarak bağlandı ifadesini görürsünüz.

Uyarı

Ana bilgisayar olarak bir *.ghe.com etki alanı girdiğinizde, sihirbaz otomatik olarak Bring your own GitHub App seçeneğini belirler. OAuth ve PAT, GHE ana bilgisayarları için kullanılamaz.

Depo ekleme ve bağlantıyı doğrulama

  1. Depoları seçin ve kaydedin.
  2. Kod Erişimi kartının bağlı ana bilgisayarı ve kimlik doğrulama türünü GitHubAppgösterdiğini onaylayın.
  3. Sohbette test yapın:
Get me recent issues from owner/repo.

Birden çok GitHub uygulaması için uygulama başına yönetilen kimlik

Varsayılan olarak, aracı Key Vault’taki özel anahtarı okumak için sistem tarafından atanan yönetilen kimliğini kullanır. Birden çok GitHub Uygulaması yönetiyorsanız (örneğin GHE örneği başına bir tane), her uygulamaya farklı bir kullanıcı tarafından atanan yönetilen kimlik atayabilirsiniz. Bu yaklaşım, her kimlik yalnızca Key Vault'taki kendi gizli anahtarına erişebildiği için güvenlik yalıtımı sağlar.

Yapılandırma adımı sırasında Key Vault identity açılan listesinden kimliği seçin.

GitHub bağlantılarında birden fazla ana bilgisayar desteği

Aynı aracıya birden çok GitHub ana bilgisayarı bağlayabilirsiniz. Her konak bağımsız kimlik doğrulamaya sahiptir:

  • github.com OAuth, PAT veya BYO Uygulamasını →
  • contoso.ghe.com → BYO Uygulaması
  • engineering.ghe.com → BYO Uygulaması (farklı bir GitHub Uygulaması ile)

Bir ana makinenin bağlantısını kesmek diğerlerini etkilemez.

Troubleshooting

Belirti Olası neden Düzelt
Kimlik doğrulaması başarısız oluyor Yanlış istemci kimliği veya yanlış ana bilgisayar Uygulamanın Kod Erişimi'ne girilen ana bilgisayarda oluşturulduğunu doğrulayın.
Gizli dizi okuma başarısız oluyor Key Vault RBAC veya erişim ilkesi eksik Aracı kimliğine Key Vault Gizli Dizi Kullanıcısı rolünü atayın.
Depo, Kod Erişiminde Başarısız Oldu ifadesini gösteriyor Eksik uygulama izinleri veya yükleme kapsamı Meta veriler: Okuma + İçerik: Okuma ve yükleme kapsamını doğrulayın.
Sohbet sorunları çalışıyor ancak Kod Erişimi başarısız oluyor Uç nokta/yol denetimleri farklı Bağlantı testlerini yeniden çalıştırın ve meta veri iznini doğrulayın.

Sonraki adım