Daftar isi (14)
AI Agent bisa terkoneksi ke database (MySQL, PostgreSQL, MongoDB, SQL Server, SQLite) lewat MCP server atau API, lalu menerjemahkan pertanyaan biasa jadi query dan menjawab pakai data asli. Kuncinya: akses baca lewat user read‑only yang dibatasi VIEW, akses tulis lewat fungsi khusus yang sudah ditentukan — bukan query bebas — plus audit log dan persetujuan manusia untuk aksi berisiko tinggi.
- Baca dan tulis beda perlakuan: akses baca lewat user read‑only + VIEW, akses tulis lewat fungsi terbatas yang logikanya di luar jangkauan AI.
- “Read‑only” di level tools bisa ditembus: server MCP Postgres resmi punya celah SQL injection yang membobol batasan read‑only‑nya sendiri.
- Aksi berisiko tinggi wajib persetujuan manusia sebelum dieksekusi, bukan jalan otomatis begitu saja.
Tiap pagi kamu buka database atau export spreadsheet cuma buat jawab satu pertanyaan: “omzet kemarin berapa?” atau “stok produk X sisa berapa?”. Udah kepikiran nanya langsung ke AI Agent, tapi ada dua ketakutan yang bikin maju‑mundur. Pertama, takut data pelanggan ikut kebaca atau malah bocor. Kedua — ini yang lebih sering kejadian di perusahaan yang sudah pakai AI Agent — takut agent‑nya salah pencet.
Dua ketakutan itu valid, dan jawabannya beda. Akses baca dan akses tulis butuh pengamanan yang jauh berbeda levelnya, dan panduan ini membahas keduanya secara terpisah, lengkap dengan contoh setting dan kasus nyata yang pernah kejadian di luar sana.
Apa Artinya AI Agent “Terkoneksi” ke Database?
Ketiganya punya tempatnya masing‑masing. MCP paling umum dipakai sekarang karena setup‑nya cepat dan didukung banyak tools AI, tapi justru di jalur inilah celah keamanan paling sering ditemukan — akan dibahas di bagian berikutnya.
Untuk perusahaan di Indonesia, ada lapisan tambahan: data pelanggan (nama, nomor HP, riwayat transaksi) yang diproses AI Agent tetap tunduk pada Undang‑Undang Nomor 27 Tahun 2022 tentang Pelindungan Data Pribadi. Artinya, siapa yang mengakses data, data apa yang diproses, dan ke mana data itu mengalir perlu bisa dijelaskan.
Kalau Agent Perlu Menulis Data: Update Stok, Follow‑up, dan Appointment
Klasifikasi Risiko: Mana yang Boleh Otomatis, Mana yang Wajib Persetujuan
| Tingkat risiko | Contoh di konteks bisnis | Perlakuan |
|---|---|---|
| Rendah | Update status follow‑up, catat appointment baru | Boleh jalan otomatis |
| Menengah | Update stok dari hasil penjualan, kirim notifikasi ke pelanggan | Jalan otomatis tapi dengan log yang bisa dikoreksi cepat |
| Tinggi/kritis | Hapus data, ubah harga massal, proses refund | Wajib persetujuan manusia sebelum eksekusi |
Agent boleh tahu apa yang perlu diubah; bagaimana mengubahnya tetap ditentukan oleh fungsi yang kamu tulis.
Cara Setting Step by Step
Langkah 1: Buat User Khusus Agent (Akses Baca)
Jangan pernah memakai user admin. Buat satu role khusus dengan hak minimum dan batas waktu eksekusi query:
CREATE ROLE agent_reader LOGIN PASSWORD 'ganti-dengan-password-kuat'; GRANT CONNECT ON DATABASE toko TO agent_reader; GRANT USAGE ON SCHEMA public TO agent_reader; -- belum ada GRANT ke tabel; akses diberikan lewat VIEW di langkah 2 ALTER ROLE agent_reader SET statement_timeout = '5s';
Belajar bangun AI Agent yang aman sejak awal — 2 jam, live, dibimbing mentor.
Minggu, 18 Okt 2026 · 20.00 WIB · via Zoom.
Pertanyaan yang Sering Ditanya
Kalau MCP server sudah punya mode read‑only, kenapa masih perlu user read‑only di database?
Karena mode read‑only di level tools bisa punya celah, seperti kasus server MCP Postgres resmi yang ditemukan Datadog. User read‑only di database adalah lapis kedua yang tetap menahan meskipun lapis pertama jebol.
Berapa lama setting seperti ini untuk bisnis kecil?
Untuk satu database dengan dua sampai tiga tabel utama, setting role, VIEW, dan satu fungsi tulis umumnya bisa selesai dalam satu hari kerja oleh orang yang sudah terbiasa dengan SQL. Pengujian di staging sebaiknya diberi waktu terpisah.
Kesimpulan
Menyambungkan AI Agent ke database bukan soal bisa atau tidak, tapi soal seberapa banyak kebebasan yang diberikan. Untuk membaca data, cukup user read‑only yang dibatasi VIEW, ditambah timeout dan audit log. Untuk menulis data seperti update stok, status follow‑up, atau appointment, jangan pernah berikan SQL bebas: buat fungsi khusus yang memvalidasi input, mencegah eksekusi ganda, mencatat perubahan, dan minta persetujuan manusia untuk aksi berisiko tinggi.
Referensi
- OWASP — AI Agent Security Cheat Sheet
- Google Cloud — Best practices for securing agent interactions with Model Context Protocol
- Datadog Security Labs — MCP vulnerability case study: SQL injection in the Postgres MCP server
- JDIH Komdigi — Undang‑Undang Nomor 27 Tahun 2022 tentang Pelindungan Data Pribadi
Bertanggung jawab atas riset, akurasi, dan kurasi editorial artikel di blog ini. Proses penulisan dibantu Karyawan AI buatan Komunitech dan berjalan di bawah supervisi serta review langsungnya.
Semua artikel Priyo →


