Panduan / Keamanan informasi

Keamanan database: batasi koneksi dan hak akun aplikasi

Keamanan database mencakup siapa yang dapat terhubung dan apa yang boleh dikerjakan setelah terhubung. Izin aplikasi dan izin administrator perlu dibedakan.

Di halaman ini

Pemeriksaan keamanan database dimulai dari jalur koneksi dan hak akun. Akun yang digunakan aplikasi sehari-hari tidak selalu membutuhkan kewenangan mengubah struktur database, membuat pengguna, atau membaca semua data perusahaan.

Panduan ini berfokus pada database relasional atau SQL. Untuk layanan terkelola, periksa pengaturan yang masih menjadi tanggung jawab pelanggan. Pilihan teknis perlu disesuaikan dengan mesin database dan arsitektur aplikasi.

Batasi siapa yang bisa terhubung

Inventarisasi aplikasi, proses laporan, administrator, dan pekerjaan pemeliharaan yang memang membutuhkan koneksi. Batasi jalur jaringan sesuai kebutuhan. Panel administrasi juga perlu autentikasi dan pembatasan akses; lokasi jaringan internal saja tidak membuktikan bahwa setiap pemakainya berwenang.

Untuk koneksi jaringan, gunakan perlindungan TLS dan pemeriksaan sertifikat yang benar. Catat pengecualian yang masih ada serta rencana perbaikannya. Jangan menonaktifkan pemeriksaan sertifikat hanya agar pesan kesalahan koneksi hilang.

Pisahkan akun menurut tugas

Contoh berikut untuk aplikasi pesanan fiktif. Ini bahan diskusi izin, bukan perintah konfigurasi yang berlaku pada semua database.

Akun Kebutuhan Hak yang perlu dipertanyakan
Aplikasi pesanan Membaca dan memperbarui data yang diperlukan fitur Administrasi server atau akses ke database layanan lain
Pembuat laporan Membaca data laporan yang disetujui Menghapus pesanan atau mengubah struktur tabel
Proses migrasi Menjalankan perubahan struktur yang telah ditinjau Penggunaan bebas di luar pekerjaan rilis
Administrator Pemeliharaan yang memerlukan kewenangan khusus Akun bersama tanpa catatan pengguna dan tindakan

Pisahkan akun serta database produksi dari pengembangan dan pengujian. Hindari kredensial admin bawaan untuk aplikasi. Periksa juga izin efektif yang diwariskan melalui peran, bukan hanya nama akun.

Lindungi kredensial dan backup

Simpan kredensial melalui mekanisme rahasia dengan akses terbatas; jangan menaruhnya dalam repositori atau berkas yang dapat diunduh dari website. Tentukan cara mengganti kredensial dan menghapus akses layanan yang sudah dihentikan. Rencanakan perubahan agar aplikasi tidak terputus mendadak.

Backup tetap berisi data meskipun database utama sudah dibatasi. Periksa pembaca, lokasi salinan, perlindungan enkripsi yang sesuai, dan siapa yang dapat memulihkannya. Untuk penggunaan data di lingkungan uji, baca enkripsi, kunci dan data uji.

Uji hak yang perlu dan yang harus ditolak

Gunakan lingkungan serta data buatan yang disetujui. Periksa bahwa akun laporan dapat membaca keluaran yang diizinkan, tetapi tidak dapat mengubah pesanan. Catat versi konfigurasi, akun uji, hasil dan pengecualian; hindari merekam kata sandi dalam bukti.

Pembatasan database melengkapi pemeriksaan izin pada aplikasi. Ia tidak menggantikan validasi permintaan, pencegahan SQL injection, pembaruan keamanan, atau uji pemulihan. Gunakan inventaris aset untuk menetapkan pemilik pemeriksaan berkala.

Unduh artikel (.md)

Sumber rujukan

  1. OWASP — Database Security Cheat Sheet ↗OWASP Foundation · Protecting the Backend Database; Transport Layer Protection; Authentication; Permissions; Configuration and Hardening
  2. OWASP — Secrets Management Cheat Sheet ↗OWASP Foundation; rujukan praktik teknis, bukan hukum Indonesia · Pengelolaan dan siklus hidup rahasia

Baca naskah lengkap untuk melihat syarat dan pengecualiannya. Sesuaikan dengan layanan dan bidang usaha Anda.

Perlu membahas kebutuhan tim Anda?

Ceritakan sistem yang dikelola dan kebutuhan pengamanan tim Anda.

Konsultasikan kebutuhan Anda