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.
GitHub Advanced Security for Azure DevOps menambahkan rangkaian fitur keamanan GitHub Advanced Security ke Azure Repos dan menyertakan fitur-fitur berikut:
- Perlindungan Pengiriman Rahasia: periksa apakah pengiriman kode menyertakan komit yang mengekspos rahasia seperti kredensial
- Pemindaian repositori Pemindaian Rahasia: pindai repositori Anda dan cari rahasia yang terekspos yang dilakukan secara tidak sengaja
- Pemindaian Dependensi – cari kerentanan yang diketahui dalam dependensi sumber terbuka (langsung dan transitif)
- Pemindaian Kode – gunakan mesin analisis statis CodeQL untuk mengidentifikasi kerentanan aplikasi tingkat kode seperti injeksi SQL dan bypass autentikasi
Anda dapat membawa perlindungan Keamanan Tingkat Lanjut ke perusahaan Anda dengan fleksibilitas untuk mengaktifkan tingkat perlindungan yang tepat untuk repositori Anda. GitHub Keamanan Tingkat Lanjut untuk Azure DevOps tersedia sebagai Perlindungan Rahasia GitHub untuk Azure DevOps dan Keamanan Kode GitHub untuk Azure DevOps.
Perlindungan Rahasia mencakup fitur-fitur berikut:
- Mendorong perlindungan, untuk mencegah kebocoran rahasia sebelum terjadi
- Pemberitahuan pemindaian rahasia untuk mengidentifikasi paparan yang ada sebelum menimbulkan masalah
- Gambaran umum keamanan, yang memberikan wawasan tentang tingkat risiko dan perlindungan keamanan organisasi Anda
Keamanan Kode mencakup fitur-fitur berikut:
- Pemberitahuan dependensi, untuk menemukan kerentanan dalam dependensi sumber terbuka
- Pemindaian CodeQL, untuk mendeteksi kerentanan langsung dalam kode Anda
- Temuan keamanan untuk alat pihak ketiga
- Gambaran umum keamanan, yang memberikan wawasan tentang tingkat risiko dan perlindungan keamanan organisasi Anda
GitHub Advanced Security for Azure DevOps hanya tersedia untuk Layanan Azure DevOps dan khusus untuk repositori Git kode.
GitHub Advanced Security untuk Azure DevOps berfungsi dengan Azure Repos. Untuk menggunakan GitHub Advanced Security dengan repositori GitHub, lihat GitHub Advanced Security.
Prasyarat
| Kategori | Persyaratan |
|---|---|
| Izin | - Untuk melihat ringkasan semua peringatan untuk repositori: izin Kontributor untuk repositori. - Untuk mengabaikan peringatan di Advanced Security: izin Project administrator. - Untuk mengelola izin di Keamanan Tingkat Lanjut: Anggota Administrator Koleksi Proyek atau Keamanan Tingkat Lanjut: mengelola pengaturan izin diatur ke Izinkan. |
Untuk informasi selengkapnya tentang izin Keamanan Tingkat Lanjut, lihat Mengelola izin Keamanan Tingkat Lanjut.
Prasyarat tambahan untuk agen yang dihost sendiri
Jika organisasi Anda menggunakan agen yang dihost sendiri, tambahkan URL berikut ke daftar izin Anda sehingga tugas pemindaian dependensi dapat mengambil data saran kerentanan. Untuk informasi selengkapnya, lihat Alamat IP dan URL domain yang diizinkan.
| Domain URL | Deskripsi |
|---|---|
https://governance.dev.azure.com |
Untuk organisasi yang menggunakan domain dev.azure.com untuk mengakses instans DevOps mereka |
https://dev.azure.com |
Untuk organisasi yang menggunakan domain dev.azure.com untuk mengakses instans DevOps mereka |
https://advsec.dev.azure.com |
Untuk organisasi yang menggunakan domain dev.azure.com untuk mengakses instans DevOps mereka |
https://{organization_name}.governance.visualstudio.com |
Untuk organisasi yang menggunakan domain {organization_name}.visualstudio.com untuk mengakses instans DevOps mereka |
https://{organization_name}.visualstudio.com |
Untuk organisasi yang menggunakan domain {organization_name}.visualstudio.com untuk mengakses instans DevOps mereka |
https://{organization_name}.advsec.visualstudio.com |
Untuk organisasi yang menggunakan domain {organization_name}.visualstudio.com untuk mengakses instans DevOps mereka |
Jalankan versi runtime .NET yang kompatibel. Pada April 2026, versi saat ini masih .NET 8.x. Jika versi yang kompatibel tidak ada di agen, tugas build pemindaian dependensi mengunduh .NET.
Pastikan bundel CodeQL diinstal ke cache alat agen di agen Anda. Anda mungkin menggunakan variabel
enableAutomaticCodeQLInstall: truedengan tugas pipelineAdvancedSecurity-Codeql-Init@1untuk pipeline YAML atau memilih kotak centangEnable automatic CodeQL detection and installationuntuk pipeline klasik. Atau, untuk instruksi penginstalan manual, lihat pemindaian kode untuk GitHub Advanced Security untuk Azure DevOps.
Aktifkan Keamanan Tingkat Lanjut GitHub
Anda dapat mengaktifkan Advanced Security di tingkat organisasi, proyek, atau repositori. Untuk mengakses setiap alat dan hasil pemindaian, Anda harus terlebih dahulu mengaktifkan Advanced Security. Setelah Anda mengaktifkan Advanced Security, setiap pendorongan di masa mendatang yang berisi rahasia ke repositori dengan kebijakan ini diaktifkan diblokir, dan pemindaian rahasia repositori terjadi di latar belakang.
Onboarding pada tingkat repositori
- Buka pengaturan Project untuk Azure DevOps project Anda.
- Pilih Repositori>Repositoriitories.
- Pilih repositori yang ingin Anda aktifkan Keamanan Tingkat Lanjutnya.
- Pilih Aktifkan dan Mulai penagihan untuk mengaktifkan Keamanan Tingkat Lanjut. Ikon perisai sekarang muncul di tampilan repositori untuk repositori apa pun dengan Keamanan Tingkat Lanjut diaktifkan.
Orientasi tingkat proyek
- Buka pengaturan Project untuk Azure DevOps project Anda.
- Pilih Repositori.
- Pilih tab Pengaturan.
- Pilih Aktifkan semua dan lihat perkiraan jumlah komiter aktif untuk proyek Anda muncul. Tindakan ini hanya mengaktifkan produk untuk repositori yang ada.
- Pilih Mulai penagihan untuk mengaktifkan Keamanan Tingkat Lanjut pada setiap repositori yang ada di proyek Anda.
- Secara opsional, pilih Aktifkan Keamanan Tingkat Lanjut secara otomatis untuk repositori baru sehingga setiap repositori yang baru dibuat di masa mendatang mengaktifkan Keamanan Tingkat Lanjut saat dibuat. Pengaturan ini terpisah dari Aktifkan semua tindakan dan harus dipilih secara independen.
Orientasi pada tingkat organisasi
- Pergi ke pengaturan organisasi untuk organisasi Azure DevOps Anda.
- Pilih Repositori.
- Pilih Aktifkan semua dan lihat perkiraan jumlah komiter aktif untuk organisasi Anda muncul. Tindakan ini hanya mengaktifkan produk untuk repositori yang ada.
- Pilih Mulai Penagihan untuk mengaktifkan Keamanan Lanjutan pada setiap repositori yang ada dalam setiap proyek di organisasi Anda.
- Secara opsional, pilih Aktifkan Keamanan Tingkat Lanjut secara otomatis untuk proyek baru sehingga setiap proyek yang baru dibuat di masa mendatang mengaktifkan Advanced Security saat dibuat. Pengaturan ini terpisah dari Aktifkan semua tindakan dan harus dipilih secara independen.
Anda dapat mengaktifkan Perlindungan Rahasia atau Keamanan Kode di tingkat organisasi, proyek, atau repositori.
Onboarding pada tingkat repositori
- Buka pengaturan Project untuk Azure DevOps project Anda.
- Pilih Repositori>Repositoriitories.
- Pilih repositori yang ingin Anda aktifkan Keamanan Tingkat Lanjutnya.
- Alihkan Perlindungan Rahasia atau Keamanan Kode.
- Pilih Mulai tagihan. Ikon perisai sekarang muncul di tampilan repositori untuk repositori apa pun dengan salah satu produk diaktifkan.
- Untuk mengaktifkan pengaturan default pemindaian dependensi secara opsional, pilih Opsi dan aktifkan kotak centang Pengaturan default pemindaian dependensi.
Orientasi tingkat proyek
- Buka pengaturan Project untuk Azure DevOps project Anda.
- Pilih Repositori.
- Pilih tab Pengaturan.
- Pilih Aktifkan semua dan lihat perkiraan jumlah komitter aktif per produk untuk proyek Anda muncul. Tindakan ini hanya mengaktifkan produk yang dipilih untuk repositori yang ada.
- Aktifkan produk Perlindungan Rahasia atau Keamanan Kode dan semua subfitur terkait.
- Pilih Mulai penagihan untuk mengaktifkan Perlindungan Rahasia dan/atau Keamanan Kode untuk setiap repositori yang ada di proyek Anda.
- Secara opsional, alihkan Secara Otomatis aktifkan Keamanan Tingkat Lanjut untuk repositori baru sehingga repositori yang baru dibuat di masa mendatang mengaktifkan Perlindungan Rahasia atau Keamanan Kode saat dibuat. Pengaturan ini terpisah dari Aktifkan semua tindakan dan harus dipilih secara independen.
Orientasi pada tingkat organisasi
- Pergi ke pengaturan organisasi untuk organisasi Azure DevOps Anda.
- Pilih Repositori.
- Pilih Aktifkan semua dan lihat perkiraan jumlah komitter aktif per produk untuk organisasi Anda muncul. Tindakan ini hanya mengaktifkan produk yang dipilih untuk repositori yang ada.
- Aktifkan produk Perlindungan Rahasia atau Keamanan Kode dan semua subfitur terkait.
- Pilih Mulai Penagihan untuk mengaktifkan Keamanan Lanjutan pada setiap repositori yang ada dalam setiap proyek di organisasi Anda.
- Secara opsional, alihkan Secara Otomatis aktifkan Keamanan Tingkat Lanjut untuk proyek baru sehingga setiap proyek yang baru dibuat di masa mendatang memiliki Perlindungan Rahasia atau Keamanan Kode yang diaktifkan saat dibuat. Pengaturan ini terpisah dari Aktifkan semua tindakan dan harus dipilih secara independen.
Menyiapkan pemindaian rahasia
Perlindungan push pemindaian rahasia dan pemindaian repositori diaktifkan secara otomatis saat Anda mengaktifkan Keamanan Tingkat Lanjut. Anda dapat mengaktifkan atau menonaktifkan perlindungan pendorongan rahasia dari halaman pengaturan repositori.
Saat Anda mengaktifkan Advanced Security untuk repositori yang dipilih, ia secara otomatis memulai pemindaian rahasia tingkat repositori.
Perlindungan push pemindaian rahasia dan pemindaian repositori diaktifkan secara otomatis saat Anda mengaktifkan Perlindungan Rahasia. Anda dapat mengaktifkan atau menonaktifkan perlindungan pendorongan rahasia dari halaman pengaturan repositori.
Saat Anda mengaktifkan Perlindungan Rahasia untuk repositori yang dipilih, repositori tersebut secara otomatis memulai pemindaian rahasia tingkat repositori.
Perlindungan push hanya mengevaluasi push yang terjadi setelah fitur ini diaktifkan. Pemindaian rahasia di tingkat repositori mendeteksi dan memberikan peringatan tentang rahasia yang sudah ada, termasuk rahasia dari komit lama.
Menyiapkan pemindaian dependensi
Untuk mendapatkan akses ke fitur pemindaian dependensi, Anda memerlukan produk Keamanan Kode yang diaktifkan untuk repositori Anda.
Pemindaian dependensi adalah alat pemindaian berbasis alur. Hasil dikumpulkan per repositori. Untuk memindai cabang default, Anda dapat menggunakan pengaturan "Pindai dependensi yang rentan" dari halaman pengaturan repositori. Fitur ini akan secara otomatis menyertakan tugas pemindaian dependensi ke dalam pipeline apa pun yang menargetkan cabang default Anda, atau build permintaan pull apa pun yang menargetkan cabang default Anda.
Untuk penyiapan tingkat lanjut atau jika Anda ingin memindai semua cabang, kami sarankan Anda menambahkan tugas pemindaian dependensi ke semua alur yang ingin Anda pindai. Lihat pemindaian Dependency untuk keamanan tingkat lanjut GitHub untuk Azure DevOps untuk detail selengkapnya.
Menyiapkan pemindaian kode
Untuk mendapatkan akses ke fitur pemindaian kode, Anda memerlukan produk Keamanan Kode yang diaktifkan untuk repositori Anda.
Pemindaian kode juga merupakan alat pemindaian berbasis alur di mana hasilnya dikumpulkan per repositori. Anda dapat mengaktifkan pemindaian kode menggunakan penyiapan default atau penyiapan tingkat lanjut. Anda dapat menjalankan keduanya di organisasi yang sama, tergantung pada kebutuhan dan tingkat kontrol pemindaian Anda.
Penyiapan default adalah cara tercepat untuk mengaktifkan pemindaian kode. Penyiapan default berjalan secara terjadwal dengan menggunakan Azure Pipelines, mendeteksi bahasa yang didukung di repositori Anda, dan secara otomatis mengonfigurasi pemindaian untuk mereka. Jika bahasa di repositori Anda berubah, konfigurasi pemindaian akan diperbarui secara otomatis. Penyiapan default saat ini mendukung C#, C/C++, Java, JavaScript/TypeScript, Python, Ruby, dan Rust. Go dan Swift tidak didukung dalam setelan bawaan; gunakan setelan lanjutan untuk memindainya.
Kumpulan agen dan jadwal pemindaian untuk penyiapan default dibagikan di semua repositori di organisasi. Anda dapat mengonfigurasi opsi ini dari pengaturan Organisasi>Repositori di bawah dropdown opsi konfigurasi default CodeQL. Untuk detail selengkapnya tentang setiap opsi, lihat Mengonfigurasi opsi penyiapan default.
Penyiapan tingkat lanjut memberi Anda kontrol penuh atas konfigurasi pemindaian dengan menambahkan tugas alur CodeQL langsung ke alur Anda. Untuk detail tentang mengonfigurasi pengaturan lanjutan, lihat Pengaturan pemindaian kode.
Petunjuk
Sebaiknya mulai dengan setting default. Jika Anda memerlukan kontrol lebih besar atas konfigurasi pemindaian Anda, seperti kumpulan agen yang berbeda, langkah-langkah build kustom untuk bahasa yang dikompilasi, atau pemindaian di beberapa cabang, Anda dapat menjalankan penyiapan default dan penyiapan tingkat lanjut di organisasi yang sama. Untuk informasi selengkapnya, lihat Menyiapkan pemindaian kode.
Jadwal mingguan digunakan pada pengaturan default untuk menghasilkan pemberitahuan. Setiap kerentanan yang terdeteksi ditampilkan di tab Keamanan Tingkat Lanjut. Saat Anda mengaktifkan penyiapan default CodeQL di tingkat organisasi atau proyek, eksekusi pemindaian awal secara otomatis diantrekan untuk semua repositori yang terpengaruh, sehingga hasil mulai muncul tanpa menunggu eksekusi terjadwal berikutnya.
Copilot Autofix untuk pemindaian kode
Copilot Autofix adalah fitur bertenaga AI yang menganalisis pemberitahuan pemindaian kode CodeQL dan mengusulkan perbaikan yang ditargetkan. Saat Anda membuat perbaikan untuk pemberitahuan yang didukung, Copilot Autofix membuat permintaan pull dengan perubahan kode yang diusulkan sehingga Anda dapat meninjau, mengedit, dan menggabungkannya melalui alur kerja permintaan pull normal Anda.
Anda dapat mengaktifkan Copilot Autofix di tingkat organisasi, proyek, atau repositori.
Note
Copilot Autofix berada dalam pratinjau publik terbatas. Microsoft saat ini tidak menerima pengguna tambahan untuk pratinjau.
Fungsionalitas mungkin berubah atau dihapus tanpa pemberitahuan. Fitur pratinjau tidak memiliki Perjanjian Tingkat Layanan (SLA) dan dukungan terbatas.
Ingatlah batasan berikut saat menggunakan Copilot Autofix:
- Perbaikan otomatis hanya berlaku untuk pemberitahuan pemindaian kode berbasis CodeQL. Ini tidak menghasilkan perbaikan untuk pemindaian dependensi atau pemberitahuan pemindaian rahasia.
- Autofix mengusulkan perbaikan - fitur ini tidak secara otomatis menangani peringatan. Anda harus meninjau permintaan pull, memvalidasi bahwa perubahan sudah benar, dan menggabungkannya secara manual sebelum pemberitahuan ditutup.
- Jika eksekusi Autofix gagal, status kegagalan yang menonjol ditampilkan dalam tampilan detail pemberitahuan dengan opsi untuk mencoba kembali eksekusi.
Untuk informasi selengkapnya tentang mengaktifkan dan menggunakan Copilot Autofix, lihat Copilot Autofix untuk pemindaian kode.
Menyiapkan anotasi permintaan penarikan
Untuk pemindaian dependensi dan pemindaian kode, anotasi dikonfigurasi secara otomatis untuk permintaan pull di mana kebijakan validasi build berlaku dengan tugas pemindaian dependensi dan/atau pemindaian kode yang disertakan dalam alur Anda. Untuk informasi selengkapnya tentang mengonfigurasi kebijakan validasi build, lihat "Validasi build" dalam Build validation.
Anotasi permintaan pull juga memerlukan pemindaian Advanced Security pada cabang default dan cabang target Anda sebelum kemudian memindai cabang sumber (permintaan pull) Anda. Untuk informasi selengkapnya tentang mengatasi peringatan untuk cabang pull request, lihat Mengelola peringatan pemindaian dependensi pada pull request dan Mengelola peringatan pemindaian kode pada pull request.
Menyiapkan pemeriksaan status permintaan pull
Pemeriksaan status Keamanan Tingkat Lanjut memungkinkan Anda memblokir permintaan pull agar tidak digabungkan saat kerentanan keamanan terdeteksi. Pemeriksaan status ini mengevaluasi pemindaian dependensi, pemindaian kode, dan pemindaian rahasia serta memasang status ke permintaan pull Anda berdasarkan hasil temuan.
Ada dua cek status yang tersedia:
-
Blokir semua kerentanan kritis dan tinggi (
AdvancedSecurity/AllHighAndCritical): Gunakan pemeriksaan ini untuk memberlakukan bahwa semua pemberitahuan kritis dan tingkat keparahan tinggi di seluruh repositori diselesaikan sebelum penggabungan. -
Blokir kerentanan kritis dan tinggi baru (
AdvancedSecurity/NewHighAndCritical): Gunakan pemeriksaan ini untuk mencegah kerentanan baru diperkenalkan tanpa mengharuskan semua kerentanan yang ada diperbaiki terlebih dahulu. Pemeriksaan ini memerlukan kebijakan validasi build dengan tugas Advanced Security untuk melakukan pemindaian pada cabang PR.
Mengonfigurasi pemeriksaan status sebagai kebijakan cabang
Untuk mewajibkan pemeriksaan status Keamanan Tingkat Lanjut sebelum permintaan pull dapat digabungkan, konfigurasikan sebagai kebijakan cabang. Anda dapat mengaturnya per repositori atau untuk proyek.
- Buka pengaturan Project>Repositori.
- Secara opsional, pilih repositori yang ingin Anda konfigurasi.
- Pilih Kebijakan lalu pilih cabang yang ingin Anda lindungi. Secara default, cabang default repositori Anda akan dilindungi.
- Jika belum dibuat, tambahkan kebijakan Build Validation. Ini diperlukan agar kedua pemeriksaan status berjalan dengan benar. Dalam alur validasi build Anda, jika Anda memiliki beberapa tugas Keamanan Tingkat Lanjut, aktifkan
Wait for Processingproperti untuk tugas AdvancedSecurity-CodeQL-Analyze dan AdvancedSecurity-Publish . - Di bawah Pemeriksaan status, pilih + untuk menambahkan kebijakan pemeriksaan status baru.
- Di menu Status untuk memeriksa , masukkan AdvancedSecurity untuk Genre dan AllHighAndCritical atau NewHighAndCritical untuk Nama. (Opsi ini muncul setelah eksekusi alur pertama yang berhasil dengan tugas Keamanan Tingkat Lanjut.)
- Pilih Persyaratan kebijakan (diperlukan atau opsional) dan atur opsi lain yang diinginkan. Biarkan Opsi Tingkat Lanjut pada pengaturannya — mengubah identitas yang diotorisasi atau membutuhkan ID iterasi mencegah pemeriksaan status untuk diposting.
- Pilih Simpan.
Untuk informasi selengkapnya tentang mengonfigurasi kebijakan pemeriksaan status, lihat Pemeriksaan status.
Untuk menonaktifkan Keamanan Tingkat Lanjut, setiap pemberitahuan dan status pemberitahuan dipertahankan di tab Keamanan Tingkat Lanjut untuk kali berikutnya Anda mengaktifkan kembali Keamanan Tingkat Lanjut untuk repositori Anda.
Artikel terkait
- Pemeriksaan status permintaan pull yang tersedia
- Peringatan pemindaian kode untuk GitHub Advanced Security untuk Azure DevOps
- Copilot Autofix untuk pemindaian kode
- pemberitahuan pemindaian dependency untuk GitHub Advanced Security untuk Azure DevOps
- Peringatan pemindaian rahasia untuk GitHub Advanced Security untuk Azure DevOps
- Izin untuk Keamanan Tingkat Lanjut GitHub untuk Azure DevOps
- Penagihan untuk Keamanan Tingkat Lanjut GitHub untuk Azure DevOps