Satuan 5 / 11

Penebangan, Jejak Audit dan Pembuktian

Keuntungan:

  • Kemampuan untuk merancang skema jejak audit minimum yang cukup untuk merekonstruksi peristiwa tersebut
  • Kemampuan untuk mencegah log menjadi sumber kebocoran dengan menutupi prompt/respons
  • Kemampuan untuk membuat log yang dapat diverifikasi dengan identitas korelasi, kekekalan, dan periode penyimpanan

Dalam sistem AI, suatu saat pasti akan muncul pertanyaan: “Mengapa keputusan diambil seperti ini, apa sebenarnya yang terjadi hari itu?” Pertanyaan ini mungkin ditanyakan oleh pelanggan, auditor, regulator, atau pengadilan. Jawaban Anda bisa berupa jejak audit yang dapat diverifikasi atau "kami tidak tahu". Hal terakhir ini tidak dapat diterima dalam lingkungan perusahaan. Dalam unit ini, kita akan mempelajari apa yang harus dan tidak boleh dicatat khusus untuk AI, cara membuat jejak audit, dan cara menjaga keseimbangan log dengan keamanan dan privasi.

Mengapa Logging Berbeda di AI?

Dalam perangkat lunak klasik, "siapa melakukan apa" dicatat. Dalam AI, tiga dimensi baru ditambahkan ke dalamnya: model/versi apa yang digunakan, perintah apa yang dikirimkan, dan respons apa yang dihasilkan. Ketika terjadi kesalahan atau keluhan, Anda tidak dapat merekonstruksi kejadian tersebut tanpa ketiga hal tersebut. Namun respons cepat ini dapat mengandung PII, seperti yang kita lihat di unit 2 — artinya log itu sendiri dapat menjadi sumber kebocoran. Ini adalah seni keseimbangan.

Perhatian: Logging bukanlah "mencatat semuanya". Terlalu banyak logging menimbulkan risiko privasi, dan terlalu sedikit logging menyebabkan kurangnya bukti. Tujuannya adalah untuk menjaga PII dalam jumlah yang cukup untuk merekonstruksi peristiwa tersebut dengan menyamarkannya.

Apa yang harus dicatat? Skema Jejak Audit

Jejak audit AI yang solid setidaknya mencakup:

  • Siapa: ID Pengguna dan peran (atau ID layanan).
  • Kapan: Stempel waktu (tambahkan saja jika memungkinkan).
  • Apa: Tindakan yang diinginkan dan alat yang dipanggil.
  • Model yang mana: Nama model dan versinya (misalnya claude-opus-4-8), parameter penting seperti suhu.
  • Intisari input/output: Versi terselubung atau intisari/hash dari permintaan dan respons.
  • Keputusan: Apakah diproses otomatis, masuk ke manusia, disetujui atau ditolak?
  • Hasil: Apakah operasi berhasil atau error, sumber daya mana yang terpengaruh?

Langkah demi Langkah: Membangun Jejak Audit

  1. Tetapkan tujuan. Siapa yang akan membaca log ini dan mengapa? (Respon insiden, audit kepatuhan, proses debug.) Tujuan menentukan apa yang Anda pertahankan.
  2. Menerapkan kebijakan PII. Tutupi prompt/respon sebelum login (unit 2).
  3. Memberikan kekekalan. Biarkan log penting menjadi hanya tambahan; Tidak ada seorang pun yang bisa menghapus masa lalu secara diam-diam.
  4. Tentukan periode retensi. Menentukan jangka waktu sesuai dengan keseimbangan antara persyaratan hukum dan kerahasiaan; Hapus secara otomatis ketika waktu habis.
  5. Batasi akses. Akses terhadap log juga harus dilindungi dengan RBAC; Pembacaan log juga harus dicatat.
  6. Tambahkan ID korelasi (ID jejak). Hubungkan semua langkah permintaan (input, panggilan alat, verifikasi, output) dengan satu identitas.

Empat Templat yang Dapat Disalin

Skema log audit (JSON):

{ "trace_id": "...", "time": "YYYY-MM-DDThh:mm:ssZ", "pengguna": "...", "peran": "...", "model": "claude-opus-4-8", "parameter": { "suhu": 0 }, "request_summary": "<masked>", "response_summary": "<masked>", "alat": ["tool_a", "tool_b"], "decision": "auto|human_approval", "approval": "disetujui|ditolak|tidak ada", "hasil": "sukses|kesalahan", "affected_resource": "..."}

Perintah kontrol log PII:

Lihat contoh log di bawah ini. Apakah kolom yang diperlukan untuk jejak audit (siapa, kapan, model, keputusan, hasil) sudah lengkap? Apakah PII mentah juga telah bocor? Untuk setiap baris, laporkan sebagai: "ruang tidak cukup / hilang: ... / kebocoran PII: ..." <logs>{{ contoh }}</logs>

Permintaan pembangunan kembali acara:

Catatan audit berikut milik satu trace_id. Ubah peristiwa menjadi narasi dalam urutan kronologis: apa yang diinginkan pengguna, apa yang dilakukan model, validasi apa yang dijalankan, bagaimana keputusan diambil, apa hasilnya? Tandai langkah-langkah yang hilang atau tidak konsisten.<records>{{ trace_registers }}</records>

Aturan pengambilan kebijakan retensi:

Untuk setiap jenis log, tentukan:- Apakah ada kewajiban penyimpanan secara hukum? (jangka waktu minimum jika ada) - Apakah mengandung PII? (jika disertakan, perpendek durasinya, persempit aksesnya) - Bukti insiden keamanan? (penyimpanan tidak dapat diubah) Hasil: "penyimpanan N hari + mi hanya tambahan + tingkat akses".

Prompt Lemah / Prompt Kuat

pendekatan yang buruk

Pendekatan yang kuat

Tidak masuk sama sekali (“tidak perlu”)

Mencatat set minimum untuk merekonstruksi acara

Mencatat prompt/respons mentah apa adanya

Ringkasan terselubung + pencatatan ID jejak

Simpan log tanpa batas

Periode retensi dengan keseimbangan hukum + privasi

Siapa pun dapat menghapus log

Log penting hanya dapat ditambahkan dan aksesnya dikontrol

Tiga Kasus Mini

Kasus 1 — Trace ID mengurangi satu hari penyelidikan menjadi 15 menit. "Permohonan saya ditolak secara tidak adil," kata seorang nasabah kepada asisten pra-evaluasi kredit bank. Berkat ID korelasi, tim merekonstruksi masukan aplikasi, verifikasi karyawan, dan keputusan dalam 15 menit; menunjukkan bahwa kesalahan disebabkan oleh ambang batas yang salah dalam validasi aturan dan memperbaikinya.

Kasus 2 — Penebangan kayu yang berlebihan ditemukan dalam audit. Sebuah perusahaan e-niaga sedang menulis semua perintah/tanggapan ke log mentah untuk proses debug. Selama audit tahunan, terlihat bahwa log ini berisi alamat pelanggan dan nomor telepon dan disimpan selama 2 tahun. Temuan ini ditutup dengan beralih ke kebijakan masking + retensi 90 hari; Fungsi jejak audit dipertahankan.

Kasus 3 — Log tambahan saja mengungkapkan adanya penyalahgunaan internal. Seorang karyawan di salah satu penyedia berusaha menghapus log untuk menyembunyikan kumpulan kesalahan yang dibuatnya. Karena log hanya bersifat tambahan dan upaya pembacaan/penghapusan log dicatat, upaya tersebut langsung terlihat; Insiden tersebut mengakibatkan koreksi disiplin dan proses.

Tip: Tetapkan ID korelasi (ID jejak) untuk setiap permintaan dan jalankan melalui semua langkah. Ketika masalah terjadi, kemampuan mengumpulkan "segala sesuatu tentang permintaan itu" dengan satu kueri adalah akselerator respons insiden terbesar.

Kesalahan umum

  • Tidak melakukan login sama sekali, atau melakukan login sangat sedikit sehingga Anda tidak dapat merekonstruksi kejadian tersebut.
  • Mencatat permintaan/respons mentah tanpa topeng dan mengubah log menjadi sumber kebocoran.
  • Tidak mencatat nama model/versi dan keputusan (otomatis/manusia).
  • Menyimpan log untuk jangka waktu yang tidak terbatas meningkatkan risiko privasi.
  • Membiarkan log penting dapat berubah; Tidak mencatat akses log.
  • Tidak dapat menghubungkan langkah-langkah tersebut secara bersamaan karena tidak menggunakan ID korelasi (ID jejak).

Singkatnya

  • Pencatatan log AI menambahkan tiga dimensi pada “siapa yang melakukan apa”: model/versi yang mana, permintaan yang mana, respons yang mana.
  • Tujuannya adalah untuk menjaga PII cukup minimal untuk merekonstruksi peristiwa tersebut dengan menutupinya—tidak lebih, tidak kurang.
  • Jejak audit harus mencakup bidang siapa/kapan/apa/model/keputusan/hasil yang mana.
  • Log penting harus bersifat tambahan saja, akses harus dibatasi, dan akses log juga harus dicatat.
  • ID Korelasi (ID jejak) menghubungkan semua langkah permintaan dan mempercepat penyelidikan insiden.

Tugas aplikasi

Pilih permintaan dari aliran AI Anda sendiri dan tulis jejak audit yang ideal untuk permintaan tersebut dengan skema JSON di atas. Lalu lakukan dua tes: (1) Dapatkah Anda menceritakan kisah dari awal sampai akhir hanya dengan rekaman ini? (2) Apakah ada PII mentah dalam catatan? Jika ada kolom yang hilang, tambahkan, jika ada PII, tutupi. Terakhir, tetapkan periode retensi dan tingkat akses.

daftar periksa

  • [ ] Jejak audit mencakup bidang siapa/kapan/apa/pola/keputusan/hasil.
  • [ ] Prompt/respons ditutupi sebelum log (tanpa PII).
  • [ ] ID korelasi (ID jejak) ditetapkan untuk setiap permintaan.
  • [ ] Log penting hanya dapat ditambahkan dan aksesnya dikontrol.
  • [ ] Periode penyimpanan ditentukan oleh keseimbangan hukum + kerahasiaan, dan dihapus pada akhir periode.
  • [ ] Dengan log saya dapat merekonstruksi suatu peristiwa dalam waktu kurang dari 30 menit.