Mengintegrasikan pemeriksaan analisis komposisi perangkat lunak ke dalam alur

Selesai

Pemindaian keamanan dulu dianggap sebagai aktivitas yang diselesaikan sekali setiap rilis oleh tim keamanan khusus yang anggotanya tidak banyak terlibat dengan grup lain.

Praktik ini menciptakan pola berbahaya di mana spesialis keamanan menemukan sejumlah besar masalah pada saat yang bersamaan ketika pengembang berada di bawah tekanan paling besar untuk merilis produk perangkat lunak.

Tekanan sering kali menghasilkan penyebaran perangkat lunak dengan kerentanan keamanan yang perlu ditangani setelah produk dirilis, mengintegrasikan pemindaian ke dalam alur kerja tim di beberapa titik di sepanjang jalur pengembangan. Secure DevOps dapat membantu membuat semua aktivitas jaminan kualitas, termasuk keamanan, berkelanjutan dan otomatis.

Tarik integrasi analisis pemindaian kode permintaan.

Tim DevOps dapat mengirimkan perubahan yang diusulkan ke dasarkode (utama) aplikasi menggunakan permintaan pull (PR). Untuk menghindari munculnya masalah baru, pengembang perlu memverifikasi efek dari perubahan kode sebelum membuat permintaan pull. Permintaan pull biasanya dibuat untuk setiap perubahan kecil dalam proses DevOps. Perubahan terus digabungkan dengan dasarkode utama untuk menjaga dasarkode utama tetap diperbarui. Idealnya, pengembang harus memeriksa masalah keamanan sebelum membuat permintaan pull.

Ekstensi Marketplace Azure yang membantu mengintegrasikan pemindaian selama permintaan pull meliputi:

  • Mend. Membantu memvalidasi dependensi dengan sidik jari binernya.
  • Checkmarx. Menyediakan pemindaian perubahan bertahap.
  • Veracode. Menerapkan konsep kotak pasir pengembang.
  • Black Duck oleh Sinopsis. Alat audit untuk kode sumber terbuka guna membantu mengidentifikasi, memperbaiki, dan mengelola kepatuhan.

Ekstensi ini memungkinkan pengembang bereksperimen dengan perubahan sebelum mengirimkannya sebagai permintaan pull.

Membangun dan merilis pemindaian, analisis, dan integrasi kode definisi

Pengembang perlu mengoptimalkan CI untuk kecepatan guna mendapatkan umpan balik langsung tentang masalah build. Pemindaian kode dapat dilakukan dengan cukup cepat untuk mengintegrasikan definisi build CI, mencegah build yang rusak. Pemindaian kode memungkinkan pengembang memulihkan status build menjadi siap/hijau dengan segera memperbaiki potensi masalah.

Pada saat yang sama, CD harus diteliti. Di Azure DevOps, CD biasanya dikelola melalui definisi rilis (yang memajukan output build di seluruh lingkungan) atau definisi build lainnya.

Definisi build dapat dijadwalkan (setiap hari) atau dipicu dengan setiap penerapan. Dalam kedua kasus tersebut, definisi build dapat melakukan pemindaian analisis statik yang lebih lama (seperti yang diilustrasikan pada gambar berikut).

Anda dapat memindai proyek kode lengkap dan meninjau kesalahan atau peringatan apa pun secara offline tanpa memblokir alur CI.

Diagram showing a workflow outlining how a build definition can trigger a static analysis scan of source code.