0Pricing
DevOps Bootcamp · Pelajaran

Praktik Terbaik Keamanan dalam CI/CD

Pahami kerentanan keamanan umum dalam pipeline dan praktik terbaik untuk mengurangi risiko sepanjang siklus hidup pengembangan.

Praktik Terbaik Keamanan dalam CI/CD adalah pelajaran DevOps Bootcamp gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar DevOps Bootcamp, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus DevOps Bootcamp mencakup 4 pelajaran total.

Mengapa Keamanan CI/CD Penting

Dalam pengembangan perangkat lunak modern, alur CI/CD sangat penting. Alur ini mengotomatiskan pembuatan, pengujian, dan penerapan kode Anda.

Namun, kemampuan besar disertai tanggung jawab besar! Mengamankan alur ini sangat penting untuk melindungi kode, data, dan infrastruktur Anda dari serangan berbahaya atau kerentanan yang tidak disengaja.

Mengidentifikasi Kerentanan Alur

Sebelum mengamankannya, kita perlu memahami hal-hal yang perlu dilindungi. Alur CI/CD dapat rentan terhadap beberapa jenis serangan:

  • Kredensial yang Disusupi: Kunci API atau token yang dicuri.
  • Dependensi Berbahaya: Penggunaan pustaka yang memiliki kelemahan keamanan yang diketahui.
  • Konfigurasi yang Tidak Aman: Kontrol akses atau langkah pembuatan yang salah konfigurasi.
  • Serangan Rantai Pasokan: Manipulasi terhadap proses pembuatan itu sendiri.

Menerapkan Akses dengan Hak Minimum

Prinsip Hak Akses Minimum (PoLP) berarti memberikan kepada pengguna dan proses otomatis, seperti tugas CI/CD, hanya izin minimum yang diperlukan untuk menjalankan tugasnya, tanpa izin tambahan.

Hal ini membatasi potensi kerusakan jika kredensial atau tugas disusupi. Untuk GitHub Actions, tentukan izin khusus untuk setiap tugas.

jobs:
  build:
    runs-on: ubuntu-latest
    permissions:
      contents: read # Only read access to repo code
      packages: write # Only write to package registry
      id-token: write # Needed for OIDC authentication
    steps:
      - uses: actions/checkout@v4
      - run: echo "Build logic here"

Melindungi Kode & Dependensi

Kode sumber Anda adalah inti aplikasi. Pastikan kode tersebut aman sejak awal.

  • Tinjauan Kode: Tinjauan oleh rekan sejawat dapat menemukan potensi kelemahan keamanan.
  • Analisis Statis: Gunakan alat untuk memindai kode dari kerentanan, meskipun SAST khusus akan dibahas dalam pelajaran selanjutnya.
  • Pemindaian Dependensi: Periksa secara berkala kerentanan yang diketahui dalam pustaka pihak ketiga.

Mengelola Dependensi Pihak Ketiga

Sebagian besar proyek bergantung pada pustaka sumber terbuka. Meskipun bermanfaat, pustaka tersebut dapat menimbulkan kerentanan jika tidak dikelola dengan cermat.

  • Gunakan Scanner Dependensi: Integrasikan alat seperti Dependabot untuk memeriksa kerentanan yang diketahui secara otomatis.
  • Tetapkan Versi Dependensi: Tentukan versi dependensi secara tepat untuk menghindari perubahan yang tidak terduga.
  • Pembaruan Berkala: Selalu perbarui dependensi agar mendapatkan perbaikan keamanan.

Memperkuat Lingkungan Pembuatan

Lingkungan tempat kode Anda dibuat dan diuji harus seaman mungkin. Bayangkan lingkungan tersebut sebagai ruang bersih untuk perangkat lunak Anda.

  • Pelaksana Sementara: Gunakan lingkungan baru yang terisolasi untuk setiap tugas. Pelaksana yang disediakan GitHub bersifat sementara secara bawaan.
  • Alat Minimal: Instal hanya alat yang diperlukan untuk mengurangi permukaan serangan.
  • Citra Dasar yang Aman: Jika menggunakan kontainer, gunakan citra dasar yang tepercaya dan telah diperkuat keamanannya.

Jangan Pernah Menanamkan Rahasia Secara Langsung

Informasi sensitif seperti kunci API, kredensial basis data, atau token pribadi tidak boleh di-hardcode secara langsung ke dalam repositori atau berkas alur kerja Anda. NEVER

Selalu gunakan sistem pengelolaan rahasia yang aman. Dengan demikian, data sensitif tidak tersimpan dalam pengendalian versi dan tetap terenkripsi.

Memvalidasi Masukan Alur Kerja

Jika alur kerja Anda menerima masukan eksternal, misalnya dari pemicu manual atau komentar permintaan tarik, masukan tersebut harus divalidasi dan disanitasi.

Masukan yang tidak tepercaya dapat menjadi celah untuk serangan injeksi, serupa dengan cara aplikasi web memvalidasi masukan pengguna.

on:
  workflow_dispatch:
    inputs:
      deploy_env:
        description: 'Environment to deploy to (e.g., staging, production)'
        required: true
        type: choice
        options:
          - 'staging'
          - 'production'
      version_tag:
        description: 'Git tag for the release version'
        required: true
        type: string

Mencatat & Memantau Aktivitas Alur

Visibilitas terhadap aktivitas alur Anda merupakan kontrol keamanan yang penting. Pencatatan yang baik membantu Anda mendeteksi dan merespons perilaku mencurigakan dengan cepat.

  • Pencatatan Menyeluruh: Catat semua peristiwa dan tindakan penting dalam alur kerja Anda.
  • Pantau Anomali: Cari pemeriksaan keamanan yang gagal, upaya akses tanpa izin, atau waktu pembuatan yang tidak biasa.
  • Pemberitahuan: Siapkan pemberitahuan untuk peristiwa keamanan yang kritis.

Uji Pemahaman Anda

Mari uji pengetahuan Anda tentang praktik terbaik keamanan CI/CD.

Ringkasan Pelajaran & Langkah Berikutnya

Selamat! Anda telah mempelajari praktik terbaik keamanan yang penting untuk alur CI/CD Anda.

  • Terapkan Prinsip Hak Akses Minimum.
  • Amankan kode sumber dan kelola dependensi.
  • Perkuat lingkungan pembuatan.
  • Jangan pernah menanamkan rahasia secara langsung.
  • Validasi semua masukan alur kerja.
  • Terapkan pencatatan dan pemantauan yang tangguh.

Praktik-praktik ini menjadi fondasi yang kuat untuk siklus hidup DevOps yang aman. Dalam pelajaran mendatang, kita akan membahas lebih dalam alat dan teknik tertentu seperti GitHub Secrets dan SAST.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Praktik Terbaik Keamanan dalam CI/CD” gratis?

Ya — teks lengkap “Praktik Terbaik Keamanan dalam CI/CD” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus DevOps Bootcamp, upgrade ke CoddyKit PRO. Kursus DevOps Bootcamp mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Praktik Terbaik Keamanan dalam CI/CD”?

Pahami kerentanan keamanan umum dalam pipeline dan praktik terbaik untuk mengurangi risiko sepanjang siklus hidup pengembangan. Kamu berlatih DevOps Bootcamp dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai DevOps Bootcamp?

Tidak diperlukan pengalaman sebelumnya. DevOps Bootcamp di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “Praktik Terbaik Keamanan dalam CI/CD” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran DevOps Bootcamp ini?

Ya. Setiap pelajaran DevOps Bootcamp menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Praktik Terbaik Keamanan dalam CI/CD
  2. Pengelolaan Rahasia dengan GitHub
  3. Pengujian Keamanan Aplikasi Statis (SAST)
  4. Keamanan Dependensi dan Rantai Pasokan (SCA)
← Kembali ke DevOps Bootcamp