Bagikan melalui


Praktik terbaik untuk mengamankan database PaaS di Azure

Dalam artikel ini, kami membahas kumpulan praktik terbaik keamanan Azure SQL Database dan Azure Synapse Analytics untuk mengamankan aplikasi web dan seluler platform-as-a-service (PaaS) Anda. Praktik terbaik ini berasal dari pengalaman kami dengan Azure dan pengalaman pelanggan seperti Anda.

Azure SQL Database dan Azure Synapse Analytics menyediakan layanan database relasional untuk aplikasi berbasis internet Anda. Mari kita lihat layanan yang membantu melindungi aplikasi dan data Anda saat menggunakan Azure SQL Database dan Azure Synapse Analytics dalam penyebaran PaaS:

  • Autentikasi Microsoft Entra (bukan autentikasi SQL Server)
  • Firewall Azure SQL
  • Enkripsi Data Transparan (TDE)

Menggunakan repositori identitas terpusat

Azure SQL Database dapat dikonfigurasi untuk menggunakan salah satu dari dua jenis autentikasi:

  • Autentikasi SQL menggunakan nama pengguna dan kata sandi. Saat Anda membuat server untuk database, Anda menentukan login "admin server" dengan nama pengguna dan kata sandi. Dengan menggunakan kredensial ini, Anda dapat mengautentikasi ke database apa pun di server tersebut sebagai pemilik database.

  • Autentikasi Microsoft Entra menggunakan identitas yang dikelola oleh MICROSOFT Entra ID dan didukung untuk domain terkelola dan terintegrasi. Untuk menggunakan autentikasi Microsoft Entra, Anda harus membuat admin server lain yang disebut "admin Microsoft Entra", yang diizinkan untuk mengelola pengguna dan grup Microsoft Entra. Admin ini juga dapat melakukan semua operasi yang dapat dilakukan admin server reguler.

Autentikasi Microsoft Entra adalah mekanisme menyambungkan ke Azure SQL Database dan Azure Synapse Analytics dengan menggunakan identitas di ID Microsoft Entra. MICROSOFT Entra ID menyediakan alternatif untuk autentikasi SQL Server sehingga Anda dapat menghentikan proliferasi identitas pengguna di seluruh server database. Autentikasi Microsoft Entra memungkinkan Anda mengelola identitas pengguna database dan layanan Microsoft lainnya secara terpusat di satu lokasi pusat. Manajemen ID Pusat menyediakan satu tempat untuk mengelola pengguna database dan menyederhanakan manajemen izin.

Manfaat menggunakan ID Microsoft Entra alih-alih autentikasi SQL

  • Mengizinkan rotasi kata sandi di satu tempat.
  • Mengelola izin database menggunakan grup Microsoft Entra eksternal.
  • Menghilangkan penyimpanan kata sandi dengan mengaktifkan autentikasi Windows terintegrasi dan bentuk autentikasi lain yang didukung oleh ID Microsoft Entra.
  • Menggunakan pengguna database tertutup untuk mengautentikasi identitas di tingkat database.
  • Mendukung autentikasi berbasis token untuk aplikasi yang terhubung ke SQL Database.
  • Mendukung federasi domain dengan Active Directory Federation Services (ADFS) atau autentikasi pengguna/kata sandi asli untuk ID Microsoft Entra lokal tanpa sinkronisasi domain.
  • Mendukung koneksi dari SQL Server Management Studio yang menggunakan Active Directory Universal Authentication, yang mencakup Multi-Factor Authentication (MFA). MFA mencakup autentikasi yang kuat dengan berbagai opsi verifikasi yang mudah. Opsi verifikasi adalah panggilan telepon, pesan teks, kartu pintar dengan pin, atau pemberitahuan aplikasi seluler. Untuk informasi selengkapnya, lihat Autentikasi Universal dengan SQL Database dan Azure Synapse Analytics.

Untuk mempelajari selengkapnya tentang autentikasi Microsoft Entra, lihat:

Nota

Untuk memastikan bahwa ID Microsoft Entra cocok untuk lingkungan Anda, lihat Fitur dan batasan Microsoft Entra.

Membatasi akses berdasarkan alamat IP

Anda dapat membuat aturan firewall yang menentukan rentang alamat IP yang dapat diterima. Aturan ini dapat ditargetkan pada tingkat server dan database. Sebaiknya gunakan aturan firewall tingkat database jika memungkinkan untuk meningkatkan keamanan dan membuat database Anda lebih portabel. Aturan firewall tingkat server paling baik digunakan untuk administrator dan ketika Anda memiliki banyak database yang memiliki persyaratan akses yang sama tetapi Anda tidak ingin menghabiskan waktu untuk mengonfigurasi setiap database satu per satu.

Pembatasan alamat IP sumber default SQL Database memungkinkan akses dari alamat Azure apa pun, termasuk langganan dan penyewa lainnya. Anda dapat membatasi agar hanya alamat IP Anda yang dapat mengakses instans. Bahkan dengan pembatasan firewall dan alamat IP SQL Anda, autentikasi yang kuat masih diperlukan. Lihat rekomendasi yang dibuat sebelumnya di artikel ini.

Untuk mempelajari selengkapnya tentang Azure SQL Firewall dan pembatasan IP, lihat:

Mengenkripsi data yang disimpan

Enkripsi Data Transparan (TDE) diaktifkan secara default. TDE secara transparan mengenkripsi data dan file log SQL Server, Azure SQL Database, dan Azure Synapse Analytics. TDE melindungi dari penyusupan akses langsung ke file atau cadangannya. Ini memungkinkan Anda mengenkripsi data yang tersimpan tanpa mengubah aplikasi yang sudah ada. TDE harus selalu tetap diaktifkan; namun, ini tidak akan menghentikan penyerang menggunakan jalur akses normal. TDE menyediakan kemampuan untuk mematuhi banyak undang-undang, peraturan, dan pedoman yang ditetapkan di berbagai industri.

Azure SQL mengelola masalah terkait utama untuk TDE. Seperti halnya TDE, perawatan khusus di lokasi harus dilakukan untuk memastikan pemulihan dan saat memindahkan basis data. Dalam skenario yang lebih canggih, kunci dapat dikelola secara eksplisit di Azure Key Vault melalui manajemen kunci yang dapat diperluas. Lihat Mengaktifkan TDE di SQL Server Menggunakan EKM. Ini juga memungkinkan penggunaan Bring Your Own Key (BYOK) melalui fitur BYOK dari Azure Key Vaults.

Azure SQL menyediakan enkripsi untuk kolom melalui Always Encrypted. Ini hanya memungkinkan aplikasi yang berwenang mengakses kolom sensitif. Menggunakan jenis enkripsi ini membatasi kueri SQL untuk kolom terenkripsi ke nilai berbasis kesetaraan.

Enkripsi tingkat aplikasi juga harus digunakan untuk data selektif. Masalah kedaulatan data terkadang dapat dimitigasi dengan mengenkripsi data dengan kunci yang disimpan di negara/wilayah yang benar. Hal ini mencegah transfer data yang tidak disengaja menyebabkan masalah karena tidak mungkin untuk mendekripsi data tanpa kunci, dengan asumsi algoritma yang kuat digunakan (seperti AES 256).

Anda dapat menggunakan tindakan pencegahan tambahan untuk membantu mengamankan database, seperti merancang sistem yang aman, mengenkripsi aset rahasia, dan membangun firewall di sekitar server database.

Langkah selanjutnya

Artikel ini memperkenalkan Anda ke kumpulan praktik terbaik keamanan SQL Database dan Azure Synapse Analytics untuk mengamankan aplikasi web dan seluler PaaS Anda. Untuk mempelajari selengkapnya tentang cara mengamankan penyebaran PaaS Anda, lihat: