MATERI 3 DARI 28
Menyiapkan konteks AI tanpa membocorkan data sensitif
Berikan konteks yang cukup untuk coding assistant tanpa mengirim secret, data pribadi, atau source yang tidak perlu.
Tujuan pembelajaran
- Memilih file dan potongan konteks yang relevan.
- Menyamarkan data sensitif.
- Membuat aturan prompt untuk keamanan dan scope perubahan.
Konsep utama
Prinsip minimisasi
Kirim hanya informasi yang diperlukan untuk tugas.
Sanitasi konteks
Ganti email, token, host internal, dan data pelanggan dengan fixture dummy yang jelas.
Alur kerja teknis
- Tulis tujuan dan acceptance criteria.
- Buat perubahan kecil yang dapat ditinjau.
- Jalankan test dan baca diff sebelum menerima hasil AI.
Contoh implementasi
Pemeriksaan secret sebelum berbagi patch
git diff --cached > /tmp/review.patch
if grep -Ein "(api[_-]?key|password|secret|token)\s*[:=]" /tmp/review.patch; then
echo "Periksa kemungkinan secret sebelum mengirim konteks" >&2
exit 1
fi
echo "Tidak ada pola secret sederhana yang terdeteksi"Aspek keamanan
- Jangan percaya regex sebagai satu-satunya secret scanner.
- Hapus `.env`, private key, cookie, dan dump database dari konteks.
- Gunakan data sintetis untuk reproduksi bug.
Kesalahan umum
- Menerima kode AI tanpa membaca diff dan memahami alur data.
- Menguji hanya happy path dan mengabaikan input salah atau batas nilai.
- Menyimpan secret, token, atau data nyata di prompt dan source code.
Pengujian dan verifikasi
- Jalankan contoh dengan input normal.
- Ulangi dengan input kosong, tipe salah, dan nilai batas.
- Pastikan error tidak membocorkan secret atau detail internal.
Latihan
- Modifikasi contoh dengan satu kebutuhan baru dan tulis acceptance criteria-nya.
- Tambahkan satu negative test lalu jelaskan risiko yang dicegah.
Checklist
- Tujuan dan batas pekerjaan jelas.
- Input divalidasi di server.
- Secret tidak berada di source/prompt.
- Test lulus dan diff sudah dibaca.
Rangkuman
Berikan konteks yang cukup untuk coding assistant tanpa mengirim secret, data pribadi, atau source yang tidak perlu.