Belajar MLOps - Secrets, Privacy & Data Governance
Episode 19 of 28

Belajar MLOps - Secrets, Privacy & Data Governance

Mengamankan pipeline ML dari kredensial hingga data: manajemen secrets dengan Vault dan cloud secret manager, masking dan pseudonimisasi data pelatihan, data governance untuk ML, serta teknik privacy-preserving seperti differential privacy dan federated learning

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Setelah episode 18 membahas serangan terhadap model, kini kita turun ke lapisan yang paling sering menjadi sumber kebocoran nyata: kredensial dan data. Satu API key MLflow yang ter-commit bisa membuka akses ke seluruh eksperimen; satu dataset pribadi yang bocor bisa berujung denda GDPR dan hilangnya kepercayaan publik.

Mengapa episode ini penting? Karena pipeline ML secara unik rawan: notebook sering memuat credentials mentah, artifact berisi data pelatihan sensitif, dan retraining otomatis (episode 13) menarik data produksi yang belum tentu boleh dipakai. Episode ini membahas secrets management, masking data, data governance, dan teknik privacy-preserving yang semakin jadi syarat wajib.

Kenapa Pipeline ML Rawan

  • Secrets di commit.env atau credentials di notebook ikut ter-version.
  • Artifact bocor — model atau dataset yang berisi data pribadi di-upload ke storage publik.
  • Akses tanpa kontrol — siapa pun di tim bisa menarik dataset penuh tanpa audit.
  • Retraining otomatis — data produksi ditarik tanpa cek persetujuan (consent) dan legal.

Risiko ini nyata dan sering kali datang dari proses yang "normal" — itulah yang membuatnya berbahaya.

Secrets Management

Aturan emasnya: secrets tidak pernah masuk ke kode, file, image, atau log — ia hidup di vault dan disuntikkan saat runtime.

Ambil secret dari Vault
export MLFLOW_TRACKING_PASSWORD="$(vault kv get -field=password secret/mlflow)"
python -m churn.train

Di Kubernetes, secrets tetap jangan di-commit dalam bentuk teks — gunakan operator seperti External Secrets Operator atau Sealed Secrets yang mengambil nilai dari Vault/cloud pada waktu deploy:

ExternalSecret ke K8s secret
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
  name: ml-credentials
spec:
  refreshInterval: 1h
  secretStoreRef:
    name: vault
    kind: SecretStore
  target:
    name: ml-credentials
  data:
    - secretKey: MLFLOW_PASSWORD
      remoteRef:
        key: secret/mlflow
        property: password

Pola ini berlaku lintas stack: Vault, AWS Secrets Manager, GCP Secret Manager, atau Azure Key Vault — semuanya punya fungsi sama: pusat kredensial dengan audit akses.

Data Masking & Pseudonymization

Tidak semua field boleh masuk training. Ada tiga tingkat perlindungan yang sering tertukar:

TeknikKarakteristikContoh
MaskingData diubah permanen0812-XXXX-XXXX
PseudonymizationIdentitas diganti kode, bisa di-reverse dengan kuncicustomer_idu-8f3d2a1c92ab
AnonymizationTidak bisa dikembalikan sama sekaliAgregat, redaksi total

Untuk ML, pseudonymization adalah kompromi yang paling umum: identitas asli hilang dari dataset, tapi fitur tetap berguna.

Pseudonimisasi sebelum training
import hashlib
 
def pseudonymize(value: str) -> str:
    return "u-" + hashlib.sha256(value.encode()).hexdigest()[:12]
 
df["customer_id"] = df["customer_id"].apply(pseudonymize)

Warning

Model artifact juga data. Model yang dilatih data pribadi bisa menyimpan informasi tersebut dan dieksploitasi lewat inference attack (episode 18). Enkripsi artifact, batasi akses registry, dan hapus artifact basi sesuai kebijakan retention.

Data Governance untuk ML

Data governance adalah kebijakan yang mengatur data dari lahir sampai mati. Untuk ML, yang paling relevan:

  • Klasifikasi data — tandai dataset publik, internal, rahasia; training hanya boleh memakai data sesuai izin.
  • Retention — berapa lama data dan artifact disimpan; jangan menimbun selamanya.
  • Consent — data produksi yang ditarik untuk retraining (episode 13) harus sesuai persetujuan pengguna.
  • Akses terkontrol & audit — siapa menarik dataset, kapan, dari mana.
  • Data minimization — hanya kumpulkan fitur yang benar-benar dibutuhkan model.

Governance data menjadi dasar dari episode 15 (compliance) — tanpa klasifikasi dan tracking data, model card dan audit tidak bisa diisi dengan jujur.

Privacy-Preserving ML

Ketika data terlalu sensitif untuk dikumpulkan terpusat, ada teknik khusus:

  • Differential privacy — tambahkan noise terukur pada data/agregat sehingga individu tidak bisa diidentifikasi, tanpa menghancurkan pola statistiknya.
  • Federated learning — model dilatih di perangkat; hanya update bobot (bukan data mentah) yang dikirim ke server.
  • Homomorphic encryption (konsep) — komputasi pada data terenkripsi; sangat mahal, masih riset untuk skala besar.

Federated learning adalah contoh nyata untuk kasus seperti keyboard prediction atau model medis: data tidak pernah meninggalkan perangkat/rumah sakit, yang dikirim hanyalah gradient atau parameter.

Praktik: Amankan Pipeline ML

Checklist yang bisa diterapkan langsung:

  • Semua secrets di Vault/cloud secret manager; tidak ada di repo atau image.
  • Data pribadi di-pseudonimisasi sebelum masuk pipeline training.
  • Dataset diklasifikasi dan aksesnya diaudit.
  • Artifact (model, dataset) dienkripsi dan access dibatasi.
  • Data production untuk retraining melewati cek consent & legal.
  • Credentials dirotasi berkala dan ada audit trail akses.

Common Pitfalls

  • Secrets tersimpan di layer Docker image — image yang di-share membocorkan kredensial; inject saat runtime.
  • Masking dilakukan setelah training — terlambat; data harus dibersihkan sebelum masuk pipeline.
  • Akses dataset tanpa audit — tidak tahu siapa yang menarik data sensitif.
  • Melupakan consent untuk retraining otomatis — pipeline (episode 13) menarik data tanpa cek legal.
  • Menganggap hanya data terstruktur yang sensitif — log, teks, dan image juga bisa memuat PII.

Penutup

Pada episode 19 ini, kalian telah mengamankan secrets dan data pipeline ML.

Inti yang harus dibawa pulang:

  • Secrets hidup di vault, disuntikkan saat runtime — tidak pernah di commit.
  • Masking/pseudonimization/anonymization — pilih sesuai kebutuhan training.
  • Data governance: klasifikasi, retention, consent, akses teraudit.
  • Privacy-preserving: differential privacy dan federated learning untuk data super sensitif.
  • Model artifact adalah data — lindungi sama ketatnya.

Di episode 20 selanjutnya kita akan membahas supply chain & model trust — model signing, SLSA, dan SBOM untuk ML — agar kalian yakin bahwa apa yang berjalan di produksi benar-benar apa yang kalian build. Sampai jumpa di episode 20!

Belajar MLOps - Secrets, Privacy & Data Governance | Belajar MLOps