Autentikasi Microsoft Entra sebagai alternatif untuk autentikasi SQL
Berlaku untuk:✅ Titik akhir analitik SQL dan Gudang di Microsoft Fabric
Artikel ini membahas metode teknis yang dapat digunakan pengguna dan pelanggan untuk beralih dari autentikasi SQL ke autentikasi Microsoft Entra dalam Microsoft Fabric. Autentikasi Microsoft Entra adalah alternatif untuk nama pengguna dan kata sandi melalui autentikasi SQL untuk masuk ke titik akhir analitik SQL lakehouse atau Gudang di Microsoft Fabric. Autentikasi Microsoft Entra disarankan dan penting untuk membuat platform data yang aman.
Artikel ini berfokus pada autentikasi Microsoft Entra sebagai alternatif untuk autentikasi SQL dalam item Microsoft Fabric seperti titik akhir analitik Warehouse atau Lakehouse SQL.
Manfaat autentikasi Microsoft Entra di Fabric
Salah satu prinsip inti Microsoft Fabric adalah aman berdasarkan desain. Microsoft Entra terintegrasi dengan keamanan Microsoft Fabric dengan memastikan perlindungan, tata kelola, dan kepatuhan data yang kuat.
Microsoft Entra memainkan peran penting dalam keamanan Microsoft Fabric karena beberapa alasan:
- Autentikasi: Verifikasi pengguna dan perwakilan layanan menggunakan ID Microsoft Entra, yang memberikan token akses untuk operasi dalam Fabric.
- Akses aman: Sambungkan dengan aman ke aplikasi cloud dari perangkat atau jaringan apa pun, melindungi permintaan yang dibuat ke Fabric.
- Akses bersyarat: Admin dapat mengatur kebijakan yang menilai konteks pengguna, mengontrol akses, atau menerapkan langkah-langkah verifikasi tambahan.
- Integrasi: MICROSOFT Entra ID bekerja dengan mulus dengan semua penawaran Microsoft SaaS, termasuk Fabric, memungkinkan akses mudah di seluruh perangkat dan jaringan.
- Platform luas: Dapatkan akses ke Microsoft Fabric dengan MICROSOFT Entra ID melalui metode apa pun, baik melalui portal Fabric, SQL string koneksi, REST API, atau titik akhir XMLA.
Microsoft Entra mengadopsi kebijakan Zero Trust lengkap, menawarkan alternatif unggul untuk autentikasi SQL tradisional terbatas pada nama pengguna dan kata sandi. Pendekatan ini:
- Mencegah peniruan identitas pengguna.
- Memungkinkan kontrol akses menenangkan mengingat identitas pengguna, lingkungan, perangkat, dll.
- Mendukung keamanan tingkat lanjut seperti autentikasi multifaktor Microsoft Entra.
Konfigurasi fabric
Autentikasi Microsoft Entra untuk digunakan dengan titik akhir analitik Warehouse atau Lakehouse SQL memerlukan konfigurasi di pengaturan Penyewa dan Ruang Kerja.
Pengaturan penyewa
Admin Fabric di penyewa Anda harus mengizinkan akses nama prinsipal layanan (SPN) ke FABRIC API, yang diperlukan agar SPN dapat berinteraksi untuk string koneksi SQL ke item titik akhir gudang Fabric atau analitik SQL.
Pengaturan ini terletak di bagian Pengaturan pengembang dan diberi label Perwakilan layanan dapat menggunakan FABRIC API. Pastikan diaktifkan.
Pengaturan ruang kerja
Admin Fabric di ruang kerja Anda harus memberikan akses bagi pengguna atau SPN untuk mengakses item Fabric.
Ada dua cara di mana Pengguna atau SPN dapat diberikan akses:
Memberikan keanggotaan pengguna atau SPN ke peran: Peran ruang kerja apa pun (Admin, Anggota, Kontributor, atau Penampil) cukup untuk terhubung ke item gudang atau lakehouse dengan string koneksi SQL.
- Di opsi Kelola akses di Ruang Kerja, tetapkan peran Kontributor. Untuk informasi selengkapnya, lihat Peran layanan.
Menetapkan pengguna atau SPN ke item tertentu: Memberikan akses ke titik akhir analitik Gudang atau SQL tertentu dari Lakehouse. Admin Fabric dapat memilih dari tingkat izin yang berbeda.
- Navigasikan ke item titik akhir analitik Gudang atau SQL yang relevan.
- Pilih Opsi lainnya, lalu Kelola Izin. Pilih Tambahkan Pengguna.
- Tambahkan Pengguna atau SPN di halaman Beri orang akses.
- Tetapkan izin yang diperlukan untuk Pengguna atau SPN. Pilih tidak ada Izin tambahan untuk memberikan izin sambungkan saja.
Anda dapat mengubah izin default yang diberikan kepada Pengguna atau SPN oleh sistem. Gunakan perintah T-SQL GRANT dan DENY untuk mengubah izin sesuai kebutuhan, atau UBAH PERAN untuk menambahkan keanggotaan ke peran.
Saat ini, SPN tidak memiliki kemampuan sebagai akun pengguna untuk konfigurasi izin terperinci dengan GRANT
/DENY
.
Dukungan untuk identitas pengguna dan nama perwakilan layanan (SPN)
Fabric secara asli mendukung autentikasi dan otorisasi untuk pengguna Microsoft Entra dan nama perwakilan layanan (SPN) dalam koneksi SQL ke item titik akhir analitik gudang dan SQL.
- Identitas pengguna adalah kredensial unik untuk setiap pengguna dalam organisasi.
- SPN mewakili objek aplikasi dalam penyewa dan bertindak sebagai identitas untuk instans aplikasi, mengambil peran mengautentikasi dan mengotorisasi aplikasi tersebut.
Dukungan untuk aliran data tabular (TDS)
Fabric menggunakan protokol Tabular Data Stream (TDS), sama seperti SQL Server, saat Anda terhubung dengan string koneksi.
Fabric kompatibel dengan aplikasi atau alat apa pun yang dapat terhubung ke produk dengan SQL Database Engine. Mirip dengan koneksi instans SQL Server, TDS beroperasi pada port TCP 1433. Untuk informasi selengkapnya tentang konektivitas Fabric SQL dan menemukan string koneksi SQL, lihat Konektivitas.
Contoh string koneksi SQL terlihat seperti: <guid_unique_your_item>.datawarehouse.fabric.microsoft.com
.
Aplikasi dan alat klien dapat mengatur Authentication
properti koneksi di string koneksi untuk memilih mode autentikasi Microsoft Entra. Tabel berikut merinci berbagai mode autentikasi Microsoft Entra, termasuk dukungan untuk autentikasi multifaktor (MFA) Microsoft Entra.
Mode autentikasi | Skenario | Komentar |
---|---|---|
Microsoft Entra Interactive | Digunakan oleh aplikasi atau alat dalam situasi di mana autentikasi pengguna dapat terjadi secara interaktif, atau ketika dapat diterima untuk memiliki intervensi manual untuk verifikasi kredensial. | Aktifkan kebijakan MFA dan Microsoft Entra Conditional Access untuk menegakkan aturan organisasi. |
Perwakilan Layanan Microsoft Entra | Digunakan oleh aplikasi untuk autentikasi aman tanpa intervensi manusia, paling cocok untuk integrasi aplikasi. | Disarankan untuk mengaktifkan kebijakan Microsoft Entra Conditional Access. |
Kata Sandi Microsoft Entra | Ketika aplikasi tidak dapat menggunakan autentikasi berbasis SPN karena ketidaksesuaian, atau memerlukan nama pengguna dan kata sandi generik untuk banyak pengguna, atau jika metode lain tidak layak. | MFA harus nonaktif, dan tidak ada kebijakan akses bersyarah yang dapat ditetapkan. Sebaiknya validasi dengan tim keamanan pelanggan sebelum memilih solusi ini. |
Dukungan driver untuk autentikasi Microsoft Entra
Meskipun sebagian besar driver SQL awalnya datang dengan dukungan untuk autentikasi Microsoft Entra, pembaruan terbaru telah memperluas kompatibilitas untuk menyertakan autentikasi berbasis SPN. Peningkatan ini menyederhanakan pergeseran ke autentikasi Microsoft Entra untuk berbagai aplikasi dan alat melalui peningkatan driver dan menambahkan dukungan untuk autentikasi Microsoft Entra.
Namun, terkadang perlu untuk menyesuaikan pengaturan tambahan seperti mengaktifkan port atau firewall tertentu untuk memfasilitasi autentikasi Microsoft Entra pada komputer host.
Aplikasi dan alat harus meningkatkan driver ke versi yang mendukung autentikasi Microsoft Entra dan menambahkan kata kunci mode autentikasi di string koneksi SQL mereka, seperti ActiveDirectoryInteractive
, ActiveDirectoryServicePrincipal
, atau ActiveDirectoryPassword
.
Fabric kompatibel dengan driver asli Microsoft, termasuk OLE DB, Microsoft.Data.SqlClient
, dan driver generik seperti ODBC dan JDBC. Transisi aplikasi untuk bekerja dengan Fabric dapat dikelola melalui konfigurasi ulang untuk menggunakan autentikasi berbasis ID Microsoft Entra.
Untuk informasi selengkapnya, lihat Konektivitas ke pergudangan data di Microsoft Fabric.
Microsoft OLE DB
Driver OLE DB untuk SQL Server adalah API akses data mandiri yang dirancang untuk OLE DB dan pertama kali dirilis dengan SQL Server 2005 (9.x). Karena, fitur yang diperluas termasuk autentikasi berbasis SPN dengan versi 18.5.0, menambahkan ke metode autentikasi yang ada dari versi sebelumnya.
Mode autentikasi | String koneksi SQL |
---|---|
Microsoft Entra Interactive | Autentikasi interaktif Microsoft Entra |
Perwakilan Layanan Microsoft Entra | Autentikasi Perwakilan Layanan Microsoft Entra |
Kata Sandi Microsoft Entra | Autentikasi nama pengguna dan kata sandi Microsoft Entra |
Untuk cuplikan kode C# menggunakan OLE DB dengan autentikasi berbasis SPN, lihat System.Data.OLEDB.Connect.cs.
Microsoft ODBC Driver
Driver Microsoft ODBC untuk SQL Server adalah pustaka tautan dinamis tunggal (DLL) yang berisi dukungan run-time untuk aplikasi menggunakan API kode asli untuk terhubung ke SQL Server. Disarankan untuk menggunakan versi terbaru untuk aplikasi yang akan diintegrasikan dengan Fabric.
Untuk informasi selengkapnya tentang autentikasi Microsoft Entra dengan ODBC, lihat Menggunakan ID Microsoft Entra dengan kode sampel Driver ODBC.
Mode Autentikasi | String Koneksi SQL |
---|---|
Microsoft Entra Interactive | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DB Name>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryInteractive |
Perwakilan Layanan Microsoft Entra | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryServicePrincipal |
Kata Sandi Microsoft Entra | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryPassword |
Untuk cuplikan kode python menggunakan ODBC dengan autentikasi berbasis SPN, lihat pyodbc-dw-connectivity.py.
Microsoft JDBC Driver
Driver Microsoft JDBC untuk SQL Server adalah driver JDBC Tipe 4 yang menyediakan konektivitas database melalui antarmuka program aplikasi (API) JDBC standar yang tersedia di platform Java.
Mulai dari versi 9.2, mssql-jdbc
memperkenalkan dukungan untuk ActiveDirectoryInteractive
dan ActiveDirectoryServicePrincipal
, dengan ActiveDirectoryPassword
didukung dalam versi 12.2 ke atas. Driver ini memerlukan jar tambahan sebagai dependensi, yang harus kompatibel dengan versi yang mssql-driver
digunakan dalam aplikasi Anda. Untuk informasi selengkapnya, lihat dependensi Fitur dari Driver Microsoft JDBC dan persyaratan penyiapan Klien .
Mode Autentikasi | Informasi selengkapnya |
---|---|
Microsoft Entra Interactive | Menyambungkan menggunakan mode autentikasi ActiveDirectoryInteractive |
Perwakilan Layanan Microsoft Entra | Menyambungkan menggunakan mode autentikasi ActiveDirectoryServicePrincipal |
Kata Sandi Microsoft Entra | Menyambungkan menggunakan mode autentikasi ActiveDirectoryPassword |
Untuk cuplikan kode java menggunakan JDBC dengan autentikasi berbasis SPN, lihat fabrictoolbox/dw_connect.java dan sampel file pom pom.xml.
Microsoft.Data.SqlClient di .NET
Pustaka ini Microsoft.Data.SqlClient adalah penyedia data lintas platform yang lebih baru yang mendukung SQL Server, dirancang untuk menggantikan System.Data.SqlClient
yang lebih lama yang hanya untuk Windows.
Platform yang didukung:
- .NET 8.0 dan yang lebih baru
- .NET Framework 4.6.2 dan yang lebih baru
Microsoft.Data.SqlClient adalah penyatuan dua komponen System.Data.SqlClient
, menyediakan serangkaian kelas untuk mengakses database SQL Database Engine. Disarankan agar Microsoft.Data.SqlClient
digunakan untuk semua pengembangan baru.
Mode Autentikasi | Informasi selengkapnya |
---|---|
Microsoft Entra Interactive | Menggunakan autentikasi interaktif |
Perwakilan Layanan Microsoft Entra | Menggunakan autentikasi perwakilan layanan |
Kata Sandi Microsoft Entra | Menggunakan Autentikasi Kata Sandi |
Cuplikan kode menggunakan SPN: