Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Important
Fitur Azure SRE Agent ini saat ini berada dalam pratinjau. Lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure untuk mengetahui ketentuan hukum yang berlaku untuk fitur Azure yang dalam tahap beta, pratinjau, atau belum dirilis ke ketersediaan umum.
Sambungkan repositori yang dihosting di GitHub Enterprise Cloud (<TENANT>.ghe.com) atau github.com ke Agen SRE Azure Anda dengan menggunakan Aplikasi GitHub BYO (Bring Your Own). Agen ini menerbitkan token instalasi yang berlaku singkat menggunakan kunci privat aplikasi Anda, yang disimpan di Azure Key Vault dan tidak pernah disalin.
Note
BYO GitHub App berfungsi untuk host github.com dan *.ghe.com. Untuk github.com dengan OAuth atau PAT, lihat Siapkan konektor GitHub.
Kapan menggunakan autentikasi GitHub App BYO
Gunakan Aplikasi BYO saat:
- Organisasi Anda memerlukan autentikasi berbasis aplikasi dan kontrol penahanan kunci.
- Anda menghubungkan
*.ghe.comrepositori (diperlukan karena OAuth dan PAT tidak tersedia untuk host GHE). - Anda menginginkan akses berbasis token penginstalan daripada token pengguna.
Prerequisites
| Persyaratan | Rincian |
|---|---|
| Agen SRE Azure | Agen dalam status Berjalan dengan peran Administrator atau Pengguna Standar |
| Aplikasi GitHub | Aplikasi GitHub yang dibuat pada host target Anda (github.com atau <TENANT>.ghe.com) |
| akses admin GitHub | Akses admin org atau repositori untuk membuat, menginstal, atau memverifikasi lingkup Aplikasi GitHub |
| Azure Key Vault | Vault tempat Anda dapat menyimpan kunci privat aplikasi GitHub |
| Identitas yang dikelola | Kemampuan untuk menetapkan peran Key Vault Secrets User ke identitas terkelola agen |
Membuat aplikasi GitHub
Jika Anda sudah memiliki Aplikasi GitHub dengan izin yang tepat, lewati ke Store kunci privat di Azure Key Vault.
- Buka host GitHub Anda:
-
github.com: Buka >Pengaturan>Pengaturan pengembang>GitHub Apps>Aplikasi GitHub baru -
<TENANT>.ghe.com: Jalur akses yang sama di instans GHE Anda
-
- Isi detail aplikasi:
-
GitHub Nama aplikasi: misalnya,
sre-agent-reader -
URL beranda:
https://sre.azure.com - Webhook: Hapus centang Aktif (agen tidak menggunakan webhook)
-
GitHub Nama aplikasi: misalnya,
- Di bawah Izin, atur:
- Izin repositori > Isi: Baca-saja (diperlukan)
- Izin repositori > Metadata: Baca-saja (dipilih otomatis)
- Secara opsional tambahkan akses baca untuk Issue dan Pull request
- Di bagian Di mana Aplikasi GitHub ini dapat diinstal?, pilih Hanya di akun ini.
- Pilih Buat Aplikasi GitHub.
- Perhatikan ID Klien yang ditampilkan di halaman pengaturan aplikasi.
Menginstal aplikasi GitHub
- Pada halaman pengaturan aplikasi GitHub, pilih Install App di bilah sisi kiri.
- Pilih organisasi Anda.
- Pilih Semua repositori atau pilih repositori tertentu.
- Pilih Instal.
Membuat kunci privat aplikasi GitHub
- Pada halaman pengaturan Aplikasi GitHub, gulir ke kunci Private.
- Pilih Buat kunci privat.
- Sebuah file
.pemdiunduh. File ini adalah kunci privat RSA yang digunakan agen untuk mengautentikasi.
Caution
Jaga keamanan PEM. Anda mengunggahnya ke Key Vault di langkah berikutnya. Jangan commit ke repositori, dan jangan membagikannya.
Menyimpan kunci privat di Azure Key Vault
- Buka portal Azure dan buka Key Vault Anda.
- Buka Rahasia>Hasilkan/Impor.
- Atur Nama (misalnya,
sre-agent-github-app-key) dan tempelkan konten PEM lengkap sebagai Nilai (termasuk-----BEGIN RSA PRIVATE KEY-----dan-----END RSA PRIVATE KEY-----header). - Pilih Buat.
- Buka rahasia, pilih versi saat ini, dan salin URI Pengidentifikasi Rahasia :
https://myvault.vault.azure.net/secrets/my-github-app-key/<VERSION>
Tip
URI berversi vs. URI tanpa versi: Anda dapat menggunakan URI berversi (dengan akhiran /<VERSION>) untuk mengunci ke versi kunci tertentu, atau tidak menyertakan versinya agar selalu menggunakan versi terbaru. Gunakan URI tanpa versi sehingga saat Anda merotasi kunci, agen secara otomatis menggunakan versi baru tanpa memperbarui URI.
Memberikan akses Key Vault ke identitas agen
- Di portal Azure, buka Key Vault>Kontrol akses (IAM).
- Tetapkan Key Vault Secrets User ke identitas terkelola agen.
- Tunggu hingga penetapan peran berlaku.
Konfigurasikan aplikasi BYO di akses kode
- Buka agen Anda di portal.
- Buka Builder>Akses Kode.
- Pilih Tambahkan repositori.
- Pilih GitHub dan masukkan host:
-
github.comuntuk GitHub publik -
<TENANT>.ghe.comuntuk Enterprise Cloud
-
- Lanjutkan ke Autentikasi.
- Pilih Bring Aplikasi GitHub Anda sendiri.
- Masuk:
- ID Pelanggan
- URI rahasia kunci privat (Key Vault)
- Identitas Key Vault opsional (atau gunakan yang ditetapkan sistem)
- Pilih Sambungkan.
Panduan memvalidasi kredensial Anda. Jika berhasil, Anda akan melihat Connected as GitHub App dengan tanda centang hijau.
Note
Saat Anda memasukkan domain *.ghe.com sebagai host, panduan secara otomatis memilih Gunakan GitHub App Anda sendiri. OAuth dan PAT tidak tersedia untuk host GHE.
Menambahkan repositori dan memverifikasi koneksi
- Pilih repositori dan simpan.
- Pastikan kartu Code Access menampilkan host yang terhubung dan jenis autentikasi
GitHubApp. - Uji di chat:
Get me recent issues from owner/repo.
Identitas terkelola per aplikasi untuk beberapa aplikasi GitHub
Secara bawaan, agen menggunakan identitas terkelola yang ditetapkan sistem untuk membaca kunci privat dari Key Vault. Jika Anda mengelola beberapa Aplikasi GitHub (misalnya, satu per instans GHE), Anda dapat menetapkan identitas terkelola yang ditetapkan pengguna yang berbeda ke setiap aplikasi. Pendekatan ini memberikan isolasi keamanan karena setiap identitas hanya memiliki akses ke rahasia Key Vault sendiri.
Pilih identitas di menu drop-down Identitas Key Vault pada langkah konfigurasi.
Dukungan multi-host untuk koneksi GitHub
Anda dapat menyambungkan beberapa host GitHub ke agen yang sama. Setiap host memiliki autentikasi independen:
-
github.com→ Aplikasi OAuth, PAT, atau BYO -
contoso.ghe.comAplikasi byo → - aplikasi BYO
engineering.ghe.com→ (dengan Aplikasi GitHub yang berbeda)
Memutuskan sambungan satu host tidak memengaruhi yang lain.
Troubleshooting
| Gejala | Kemungkinan penyebabnya | Perbaiki |
|---|---|---|
| Validasi autentikasi gagal | ID Klien yang salah atau host yang salah | Pastikan aplikasi dibuat di host yang sama seperti yang dimasukkan di Code Access. |
| Pembacaan rahasia gagal | RBAC atau kebijakan akses Key Vault tidak tersedia | Berikan peran Key Vault Secrets User kepada identitas agen. |
| Repo menampilkan Gagal di Akses Kode | Izin aplikasi yang hilang atau cakupan penginstalan | Verifikasi Metadata: Baca + Konten: Baca dan cakupan penginstalan. |
| Masalah obrolan berfungsi tetapi Akses Kode gagal | Pemeriksaan titik akhir/jalur berbeda | Jalankan kembali pengujian koneksi dan verifikasi izin metadata. |