Bagikan melalui


Autentikasi Microsoft Entra untuk Azure SQL

Berlaku untuk: Azure SQL Database Azure SQL Managed InstanceAzure Synapse Analytics

Artikel ini memberikan gambaran umum mendalam tentang penggunaan autentikasi Microsoft Entra dengan Azure SQL Database, Azure SQL Managed Instance, SQL Server di Azure VM, Synapse SQL di Azure Synapse Analytics dan SQL Server untuk Windows dan Linux.

Jika Anda ingin mengonfigurasi autentikasi Microsoft Entra, tinjau:

Catatan

ID Microsoft Entra sebelumnya dikenal sebagai Azure Active Directory (Azure AD).

Gambaran Umum

MICROSOFT Entra ID memungkinkan Anda mengelola identitas manusia dan layanan secara terpusat di data estate Anda. Dengan mengintegrasikan Microsoft Entra dengan Azure SQL untuk autentikasi, Anda dapat menyederhanakan manajemen identitas dan izin sekaligus mengaktifkan akses dan tata kelola bersyarat terperinci atas semua koneksi ke data Anda.

Menggunakan autentikasi Microsoft Entra mencakup manfaat berikut:

  • Mengganti metode autentikasi yang kurang aman seperti nama pengguna dan kata sandi.
  • Menghilangkan, atau membantu menghentikan, proliferasi identitas pengguna di seluruh server.
  • Grup Microsoft Entra memungkinkan manajemen izin database untuk diabstraksi dari akun individual dan ke dalam grup operasional.
  • Mengizinkan rotasi kata sandi di satu tempat.
  • Autentikasi khusus Microsoft Entra menyediakan alternatif lengkap untuk autentikasi SQL.
  • Identitas terkelola untuk sumber daya Azure menghilangkan kebutuhan untuk menyimpan kata sandi untuk layanan yang tersambung ke database Anda, dan koneksi dari database Anda ke sumber daya Azure lainnya.
  • Memungkinkan kontrol keamanan modern termasuk autentikasi multifaktor yang kuat dengan berbagai opsi verifikasi yang mudah, seperti panggilan telepon, pesan teks, kartu pintar dengan pin, atau pemberitahuan aplikasi seluler.
  • MICROSOFT Entra ID memungkinkan integrasi dengan banyak protokol autentikasi modern, termasuk OpenID Connect, OAuth2.0, Kerberos Constrained Delegation, dan banyak lagi.
  • Memungkinkan pemantauan koneksi terpusat ke sumber data.
  • Mengaktifkan kontrol akses bersyarat, seperti memerlukan perangkat atau metode autentikasi yang sesuai untuk koneksi yang berhasil.
  • Kelola dan pantau autentikasi secara terpusat dengan Kebijakan Azure.

Catatan

Autentikasi Microsoft Entra hanya mendukung token akses yang berasal dari ID Microsoft Entra, dan bukan token akses pihak ketiga. ID Microsoft Entra juga tidak mendukung pengalihan kueri ID Microsoft Entra ke titik akhir pihak ketiga. Ini berlaku untuk semua platform SQL dan semua sistem operasi yang mendukung autentikasi Microsoft Entra.

Langkah-langkah konfigurasi

Langkah-langkah umum untuk mengonfigurasi autentikasi Microsoft Entra adalah:

  1. Membuat dan mengisi penyewa Microsoft Entra.
  2. Buat server atau instans logis di Azure.
  3. Tetapkan administrator Microsoft Entra ke server atau instans.
  4. Buat prinsipal SQL di database Anda yang dipetakan ke identitas Microsoft Entra.
  5. Konfigurasikan aplikasi klien Anda untuk terhubung menggunakan pustaka Azure Identity dan metode autentikasi.
  6. Sambungkan ke database Anda dengan identitas Microsoft Entra.

Metode autentikasi dan identitas yang didukung

Azure SQL mendukung penggunaan identitas Microsoft Entra berikut sebagai login dan pengguna (prinsipal) di server dan database Anda:

  • Pengguna Microsoft Entra: Semua jenis pengguna di penyewa Microsoft Entra, yang mencakup pengguna internal, pengguna eksternal, tamu, dan anggota. Anggota domain Direktori Aktif yang terfederasi dengan ID Microsoft Entra juga didukung, dan dapat dikonfigurasi untuk akses menyeluruh yang mulus.
  • Aplikasi: aplikasi yang ada di Azure dapat menggunakan perwakilan layanan atau identitas terkelola untuk mengautentikasi langsung ke Azure SQL. Menggunakan identitas terkelola lebih disukai karena autentikasi tanpa kata sandi dan menghilangkan kebutuhan akan kredensial yang dikelola pengembang.
  • Grup Microsoft Entra, yang dapat menyederhanakan manajemen akses di seluruh organisasi Anda dengan mengelola akses pengguna dan aplikasi berdasarkan keanggotaan grup.

Untuk identitas pengguna, metode autentikasi berikut didukung:

  • Microsoft Entra Integrated (Autentikasi Windows) didukung oleh Microsoft Entra Hybrid Identities dengan Direktori Aktif [federasi].
  • Microsoft Entra MFA, atau autentikasi multifaktor, yang memerlukan pemeriksaan keamanan tambahan di luar pengetahuan pengguna.
  • Autentikasi Microsoft Entra Password , yang menggunakan kredensial pengguna yang disimpan dan dikelola di ID Microsoft Entra.
  • Autentikasi Microsoft Entra Default , yang memindai berbagai cache kredensial pada komputer aplikasi, dan dapat menggunakan token pengguna untuk mengautentikasi ke SQL.

Untuk identitas layanan atau beban kerja, metode autentikasi berikut didukung:

  • Identitas terkelola untuk sumber daya Azure, baik yang ditetapkan pengguna maupun yang ditetapkan sistem. Autentikasi identitas terkelola berbasis token, di mana identitas ditetapkan ke sumber daya yang ingin mengautentikasi menggunakannya. Platform Azure Identity memvalidasi hubungan tersebut, yang memungkinkan autentikasi tanpa kata sandi.
  • Nama perwakilan layanan Microsoft Entra dan rahasia aplikasi (klien). Metode autentikasi ini tidak disarankan karena risiko yang terkait dengan kata sandi yang dapat ditebak dan bocor.
  • Autentikasi Microsoft Entra Default , yang memindai berbagai cache kredensial pada komputer aplikasi, dan dapat menggunakan token aplikasi untuk mengautentikasi ke SQL.

Administrator Microsoft Entra

Untuk mengaktifkan autentikasi Microsoft Entra, administrator Microsoft Entra harus diatur untuk server logis atau instans terkelola Anda. Admin ini ada bersama administrator SQL Server (SA). Admin Microsoft Entra dapat menjadi satu objek keamanan di penyewa Azure Anda, termasuk pengguna Microsoft Entra, grup, perwakilan layanan, dan identitas terkelola. Administrator Microsoft Entra adalah properti tunggal, bukan daftar, yang berarti hanya satu identitas yang dapat dikonfigurasi kapan saja. Menghapus admin Microsoft Entra dari server menonaktifkan semua koneksi berbasis autentikasi Microsoft Entra, bahkan untuk pengguna Microsoft Entra yang sudah ada dengan izin dalam database.

Tip

Grup Microsoft Entra memungkinkan beberapa identitas bertindak sebagai administrator Microsoft Entra di server. Saat administrator diatur ke grup, semua anggota grup mewarisi peran administrator Microsoft Entra. Admin grup Microsoft Entra meningkatkan pengelolaan dengan mengalihkan manajemen admin dari tindakan sarana data server ke ID Microsoft Entra dan tangan pemilik grup. Grup dapat digunakan untuk semua identitas Microsoft Entra yang tersambung ke SQL, memungkinkan konfigurasi pengguna dan izin satu kali di server dan database, meninggalkan semua manajemen pengguna ke grup.

Admin Microsoft Entra memainkan peran khusus: ini adalah akun pertama yang dapat membuat login Microsoft Entra lainnya (dalam pratinjau di SQL Database) dan pengguna, yang secara kolektif disebut sebagai prinsipal. Admin adalah pengguna database mandiri dalam master database server. Akun administrator adalah anggota peran db_owner di setiap database pengguna, dan setiap database pengguna dimasukkan sebagai pengguna dbo . Untuk informasi selengkapnya tentang akun administrator, lihat Mengelola Database dan Login.

Perwakilan Microsoft Entra

Catatan

Prinsipal server Microsoft Entra (login) saat ini berada dalam pratinjau publik untuk Azure SQL Database dan Azure Synapse Analytics. Login Microsoft Entra umumnya tersedia untuk Azure SQL Managed Instance dan SQL Server 2022.

Identitas Microsoft Entra dapat dibuat sebagai prinsipal di Azure SQL dengan tiga cara:

  • sebagai prinsipal server atau login (dalam pratinjau untuk Azure SQL Database)
  • sebagai pengguna berbasis login (jenis prinsipal database)
  • sebagai pengguna database mandiri

Penting

Autentikasi Microsoft Entra untuk Azure SQL tidak terintegrasi dengan Azure RBAC. Menggunakan identitas Microsoft Entra untuk menyambungkan ke Azure SQL dan menjalankan kueri mengharuskan identitas tersebut dibuat sebagai perwakilan Microsoft Entra dalam database yang perlu mereka akses. Peran SQL Server Contributor dan SQL DB Contributor digunakan untuk mengamankan operasi penyebaran terkait manajemen, bukan akses konektivitas database.

Login (prinsipal server)

Prinsipal server (login) untuk identitas Microsoft Entra umumnya tersedia untuk Azure SQL Managed Instance, SQL Server 2022, dan SQL Server di VM Azure. Login Microsoft Entra sedang dalam pratinjau untuk Azure SQL Database.

T-SQL berikut menunjukkan cara membuat login Microsoft Entra:

CREATE LOGIN [MSEntraUser] FROM EXTERNAL PROVIDER

Login Microsoft Entra memiliki nilai properti berikut dalam sys.server_principals:

Properti Nilai
SID (Pengidentifikasi Keamanan) Representasi biner dari ID objek identitas Microsoft Entra
jenis E = Login eksternal atau aplikasi dari ID Microsoft Entra
X = Grup eksternal dari ID Microsoft Entra
type_desc EXTERNAL_LOGIN untuk masuk atau aplikasi Microsoft Entra
EXTERNAL_GROUP untuk grup Microsoft Entra

Pengguna berbasis login

Pengguna berbasis login mewarisi peran dan izin tingkat server yang ditetapkan ke login Microsoft Entra-nya. Pengguna berbasis login Microsoft Entra berada dalam pratinjau untuk Azure SQL Database.

T-SQL berikut menunjukkan cara membuat pengguna berbasis login untuk identitas Microsoft Entra:

CREATE USER [MSEntraUser] FROM LOGIN [MSEntraUser]

Tabel berikut ini merinci nilai properti pengguna berbasis login Microsoft Entra dalam sys.database_principals:

Properti Nilai
SID (Pengidentifikasi Keamanan) Representasi biner dari ID objek identitas Microsoft Entra, ditambah 'AADE'
jenis E = Login eksternal atau aplikasi dari ID Microsoft Entra
X = Grup eksternal dari ID Microsoft Entra
type_desc EXTERNAL_LOGIN untuk masuk atau aplikasi Microsoft Entra
EXTERNAL_GROUP untuk grup Microsoft Entra

Pengguna database mandiri

Pengguna database yang terkandung portabel dengan database. Mereka tidak memiliki koneksi ke identitas yang ditentukan dalam server atau instans, dan dengan demikian dapat dengan mudah dipindahkan bersama dengan database dari satu server atau instans ke server lain tanpa gangguan.

T-SQL berikut menunjukkan cara membuat pengguna database mandiri untuk identitas Microsoft Entra:

CREATE USER [MSEntraUser] FROM EXTERNAL PROVIDER

Pengguna berbasis database Microsoft Entra memiliki nilai properti yang sama dengan pengguna berbasis login di sys.database_principals, kecuali bagaimana SID dibangun:

Properti Nilai
SID (Pengidentifikasi Keamanan) Representasi biner dari ID objek identitas Microsoft Entra
jenis E = Login eksternal atau aplikasi dari ID Microsoft Entra
X = Grup eksternal dari ID Microsoft Entra
type_desc EXTERNAL_LOGIN untuk masuk atau aplikasi Microsoft Entra
EXTERNAL_GROUP untuk grup Microsoft Entra

Untuk mendapatkan Microsoft Entra GUID asli yang didasarkan pada SID, gunakan konversi T-SQL berikut:

SELECT CAST(sid AS UNIQUEIDENTIFIER) AS EntraID FROM sys.database_principals

Perhatian

Dimungkinkan untuk secara tidak sengaja membuat pengguna database Microsoft Entra mandiri dengan nama yang sama dengan login Microsoft Entra di tingkat server atau instans. Karena prinsipal tidak terhubung satu sama lain, pengguna database tidak mewarisi izin dari login server, dan identitas dapat digabungkan dalam permintaan koneksi, yang mengakibatkan perilaku yang tidak terdefinisi.

Gunakan kueri T-SQL berikut untuk menentukan apakah pengguna database adalah pengguna berbasis login atau pengguna database mandiri:

SELECT CASE
    WHEN CONVERT(VARCHAR(100), sid, 2) LIKE '%AADE' AND len(sid) = 18 THEN 'login-based user'
    ELSE 'contained database user'
    END AS user_type,
    *
FROM sys.database_principals WHERE TYPE = 'E' OR TYPE = 'X'

Gunakan kueri T-SQL berikut untuk menampilkan semua prinsipal Microsoft Entra dalam database:

SELECT
  name,
  CAST(sid AS UNIQUEIDENTIFIER) AS EntraID,
  CASE WHEN TYPE = 'E' THEN 'App/User' ELSE 'Group' AS user_type,
  sid
FROM sys.database_principals WHERE TYPE = 'E' OR TYPE = 'X'

Autentikasi khusus Microsoft Entra

Dengan autentikasi khusus Microsoft Entra diaktifkan, semua metode autentikasi lainnya dinonaktifkan dan tidak dapat digunakan untuk menyambungkan ke server, instans, atau database - yang mencakup SA dan semua akun berbasis autentikasi SQL lainnya untuk Azure SQL, serta autentikasi Windows untuk Azure SQL Managed Instance.

Untuk memulai, tinjau Mengonfigurasi autentikasi Microsoft Entra-only.

Autentikasi multifaktor (MFA)

Autentikasi multifaktor Microsoft Entra adalah fitur keamanan yang disediakan oleh layanan manajemen identitas dan akses berbasis cloud Microsoft. Autentikasi multifaktor meningkatkan keamanan masuk pengguna dengan mengharuskan pengguna untuk memberikan langkah-langkah verifikasi tambahan di luar kata sandi.

Autentikasi multifaktor Microsoft Entra membantu melindungi akses ke data dan aplikasi sambil memenuhi permintaan pengguna untuk proses masuk sederhana. MFA menambahkan lapisan keamanan tambahan ke rincian masuk pengguna dengan mengharuskan pengguna menyediakan dua faktor autentikasi atau lebih. Faktor-faktor ini biasanya mencakup sesuatu yang diketahui pengguna (kata sandi), sesuatu yang dimiliki pengguna (token smartphone atau perangkat keras), dan/atau sesuatu yang penggunanya (data biometrik). Dengan menggabungkan beberapa faktor, MFA secara signifikan mengurangi kemungkinan akses yang tidak sah.

Autentikasi multifaktor adalah metode autentikasi yang didukung untuk Azure SQL Database, Azure SQL Managed Instance, Azure Synapse Analytics, dan SQL Server 2022 (16.x) dan versi yang lebih baru.

Untuk memulai, tinjau Mengonfigurasi autentikasi multifaktor Microsoft Entra.

Dukungan Microsoft Entra B2B

Autentikasi Microsoft Entra di semua produk SQL juga mendukung kolaborasi Microsoft Entra B2B, yang memungkinkan bisnis mengundang pengguna tamu untuk berkolaborasi dengan organisasi mereka. Pengguna tamu dapat tersambung ke database baik sebagai pengguna individual atau anggota grup Microsoft Entra. Untuk informasi selengkapnya, lihat Membuat pengguna tamu.

Arsitektur kepercayaan untuk federasi Microsoft Entra ke Direktori Aktif

MICROSOFT Entra ID juga terintegrasi dengan solusi manajemen identitas dan akses yang sudah dikenal seperti Direktori Aktif. Bergabungnya hibrid dengan AD lokal Anda memungkinkan identitas Windows yang digabungkan melalui ID Microsoft Entra untuk menggunakan kredensial akses menyeluruh untuk menyambungkan ke Azure SQL.

Untuk federasi, MICROSOFT Entra ID menyediakan dua metode autentikasi aman: autentikasi hash pass-through dan kata sandi. Jika Anda mempertimbangkan untuk menggabungkan Active Directory lokal ke ID Microsoft Entra, tinjau Memilih metode autentikasi yang tepat untuk solusi identitas hibrid Microsoft Entra Anda.

Untuk informasi selengkapnya tentang penyiapan dan sinkronisasi identitas hibrid Microsoft Entra, lihat artikel berikut ini:

Diagram ini menunjukkan contoh autentikasi gabungan dengan infrastruktur ADFS (atau pengguna/kata sandi untuk kredensial Windows). Tanda panah menunjukkan jalur komunikasi.

Diagram autentikasi Microsoft Entra untuk Azure SQL.

Diagram berikut menunjukkan hubungan federasi, kepercayaan, dan hosting yang memungkinkan klien menyambungkan ke database dengan mengirimkan token. MICROSOFT Entra ID mengautentikasi token, dan database mempercayainya dan memvalidasi penerbit dan detail lainnya. Pelanggan 1 dapat mewakili ID Microsoft Entra dengan pengguna asli atau ID Microsoft Entra dengan pengguna federasi. Pelanggan 2 mewakili solusi yang mungkin termasuk pengguna yang diimpor, dalam contoh ini berasal dari ID Microsoft Entra federasi dengan ADFS yang disinkronkan dengan ID Microsoft Entra. Penting untuk dipahami bahwa akses ke database menggunakan autentikasi Microsoft Entra mengharuskan langganan hosting dikaitkan dengan ID Microsoft Entra. Langganan yang sama harus digunakan untuk membuat sumber daya Azure SQL atau Azure Synapse.

Diagram memperlihatkan hubungan antara langganan dalam konfigurasi Microsoft Entra.

Izin

Izin yang ditetapkan ke admin Microsoft Entra berbeda dengan izin yang ditetapkan utama di Azure SQL. Dalam beberapa skenario, Azure SQL juga memerlukan izin Microsoft Graph untuk menggunakan autentikasi Microsoft Entra.

Izin admin

Admin Microsoft Entra diberi izin dan peran berikut saat dibuat:

  • db_owner setiap database di server atau instans

Diagram memperlihatkan struktur administrator untuk ID Microsoft Entra yang digunakan dengan SQL Server.

Izin Azure SQL

Prinsipal memerlukan ALTER ANY USER izin dalam database untuk membuat pengguna. Secara default, ALTER ANY USER diberikan kepada: akun administrator server, pengguna database dengan CONTROL ON DATABASE, dan anggota db_owner peran database.

Untuk membuat perwakilan Microsoft Entra di Azure SQL, identitas yang meminta harus meminta Microsoft Graph untuk detail tentang prinsipal. Pada penyebaran awal, satu-satunya identitas yang mungkin mampu mengkueri MS Graph adalah admin Microsoft Entra; dengan demikian, admin harus menjadi identitas pertama untuk membuat prinsipal Microsoft Entra lainnya. Setelah itu, ia dapat menetapkan ALTER ANY USER ke prinsipal lain untuk memungkinkan mereka juga membuat perwakilan Microsoft Entra lainnya.

Penyebaran tanpa sentuhan dengan autentikasi Microsoft Entra

Karena administrator Microsoft Entra harus menjadi identitas pertama yang tersambung ke database dan membuat pengguna Microsoft Entra lainnya, akan sangat membantu untuk menambahkan identitas infrastruktur penyebaran Anda sebagai administrator. Penyebaran Anda kemudian dapat melakukan penyiapan awal seperti membuat prinsipal Microsoft Entra lainnya dan menetapkannya izin. Penyebaran dapat menggunakan alat seperti templat ARM PowerShell untuk membuat skrip pembuatan prinsipal otomatis. Azure SQL tidak mendukung API asli saat ini untuk mengonfigurasi pembuatan pengguna dan manajemen izin; operasi ini hanya diizinkan untuk dilakukan dengan koneksi langsung ke instans SQL.

Izin Microsoft Graph

Untuk membuat perwakilan Microsoft Entra dan beberapa skenario lainnya, Azure SQL perlu melakukan panggilan Microsoft Graph untuk mengambil informasi tentang, dan memvalidasi keberadaan, identitas di ID Microsoft Entra. Untuk melakukannya, proses SQL harus memiliki, atau mendapatkan, akses ke izin baca MS Graph dalam penyewa pelanggan, yang dicapai dengan beberapa cara:

  • Jika prinsipal SQL yang menjalankan perintah adalah identitas pengguna, tidak ada izin tambahan pada instans SQL yang diperlukan untuk mengkueri MS Graph.
  • Jika perwakilan SQL yang menjalankan perintah adalah identitas layanan, misalnya perwakilan layanan atau identitas terkelola, maka instans Azure SQL memerlukan izinnya sendiri untuk mengkueri MS Graph.
    • Izin aplikasi dapat ditetapkan ke identitas server utama (identitas terkelola) server logis atau instans terkelola. Proses SQL dapat menggunakan identitas server utama untuk mengautentikasi ke layanan Azure lainnya di penyewa, seperti MS Graph. Tabel berikut menjelaskan berbagai skenario dan izin MS Graph yang diperlukan agar perintah berhasil dijalankan.
Skenario Izin Minimum
BUAT PENGGUNA atau BUAT LOGIN untuk perwakilan layanan Microsoft Entra atau identitas terkelola Application.Read.All
MEMBUAT PENGGUNA atau MEMBUAT LOGIN untuk pengguna Microsoft Entra Pengguna.Baca.Semua
MEMBUAT PENGGUNA atau MEMBUAT LOGIN untuk grup Microsoft Entra GroupMember.Read.All
Autentikasi Microsoft Entra dengan Azure SQL Managed Instance Peran Pembaca Direktori yang ditetapkan ke identitas instans terkelola

Tip

Peran Pembaca Direktori adalah peran terkecil yang dapat ditetapkan ke identitas yang mencakup semua izin yang dibutuhkan Azure SQL. Menggunakan peran memiliki keuntungan untuk dapat ditetapkan ke grup keamanan Microsoft Entra, manajemen abstrak jauh dari entitas individu dan ke dalam grup konseptual.

Dukungan alat

SQL Server Management Studio (SSMS) mendukung sejumlah opsi koneksi autentikasi Microsoft Entra, termasuk autentikasi multifaktor.

SQL Server Data Tools (SSDT) untuk Visual Studio, dimulai dengan 2015, mendukung Autentikasi Kata Sandi, Terintegrasi, dan Interaktif dengan ID Microsoft Entra. Untuk informasi selengkapnya, lihat Dukungan ID Microsoft Entra di SQL Server Data Tools (SSDT).

  • Saat ini, pengguna Microsoft Entra tidak ditampilkan di SSDT Object Explorer. Sebagai solusinya, lihat pengguna di sys.database_principals.

Versi minimum

Untuk menggunakan autentikasi Microsoft Entra dengan Azure SQL, Anda memerlukan versi minimum berikut saat menggunakan alat ini:

  • SQL Server Management Studio (SSMS) 18.6 atau yang lebih baru
  • SQL Server Data Tools untuk Visual Studio 2015, versi 14.0.60311.1 (April 2016) atau yang lebih baru
  • Penyedia Data .NET Framework untuk SqlServer, versi minimum .NET Framework 4.6
  • Dimulai dengan versi 15.0.1, utilitas sqlcmd dan utilitas bcp mendukung autentikasi Interaktif Direktori Aktif dengan autentikasi multifaktor.
  • Microsoft JDBC Driver 6.0 untuk SQL Server mendukung autentikasi Microsoft Entra. Lihat juga, Mengatur Properti Koneksi.

Menyambungkan dengan Microsoft Entra ke sumber daya Azure SQL

Setelah autentikasi Microsoft Entra dikonfigurasi untuk sumber daya Azure SQL, Anda dapat menyambungkan dengan menggunakan SQL Server Management Studio, SQL Server Data Tools, dan aplikasi klien.

Batasan

Saat menggunakan autentikasi Microsoft Entra dengan Azure SQL, pertimbangkan batasan berikut:

  • Pengguna Microsoft Entra dan perwakilan layanan (aplikasi Microsoft Entra) yang merupakan anggota lebih dari 2048 grup keamanan Microsoft Entra tidak didukung dan tidak dapat masuk ke database.

  • Fungsi sistem berikut tidak didukung dan mengembalikan nilai NULL saat dijalankan oleh perwakilan Microsoft Entra:

    • SUSER_ID()
    • SUSER_NAME(<ID>)
    • SUSER_SNAME(<SID>)
    • SUSER_ID(<name>)
    • SUSER_SID(<name>)
  • Sebaiknya atur batas waktu koneksi ke 30 detik.

Azure SQL Database dan Azure Synapse Analytics

Saat menggunakan autentikasi Microsoft Entra dengan Azure SQL Database dan Azure Synapse Analytics, pertimbangkan batasan berikut:

  • Pengguna Microsoft Entra yang merupakan bagian dari grup yang merupakan anggota db_owner peran database mungkin melihat kesalahan berikut saat mencoba menggunakan sintaks CREATE DATABASE SCOPED CREDENTIAL terhadap Azure SQL Database dan Azure Synapse:

    SQL Error [2760] [S0001]: The specified schema name 'user@mydomain.com' either doesn't exist or you do not have permission to use it.

    Untuk mengurangi masalah CREATE DATABASE SCOPED CREDENTIAL , tambahkan identitas pengguna Microsoft Entra ke peran secara db_owner langsung.

  • Azure SQL Database dan Azure Synapse Analytics tidak membuat pengguna implisit untuk pengguna yang masuk sebagai bagian dari keanggotaan grup Microsoft Entra. Karena itu, berbagai operasi yang memerlukan penetapan kepemilikan dapat gagal, bahkan jika grup Microsoft Entra ditambahkan sebagai anggota ke peran dengan izin tersebut.

    Misalnya, pengguna yang masuk ke database melalui grup Microsoft Entra dengan peran db_ddladmin tidak dapat menjalankan pernyataan PEMBUATAN SKEMA, SKEMA ALTER, dan pembuatan objek lainnya tanpa skema yang ditentukan secara eksplisit (seperti tabel, tampilan, atau jenis, misalnya). Untuk mengatasi hal ini, pengguna Microsoft Entra harus dibuat untuk pengguna tersebut, atau grup Microsoft Entra harus diubah untuk menetapkan DEFAULT_SCHEMA seperti dbo.

  • Saat menggunakan grup replikasi geografis dan failover, administrator Microsoft Entra harus dikonfigurasi untuk server utama dan sekunder. Jika server tidak memiliki administrator Microsoft Entra, login Microsoft Entra dan pengguna akan Cannot connect menerima kesalahan.

  • Menghapus administrator Microsoft Entra untuk server mencegah koneksi autentikasi Microsoft Entra ke server. Jika perlu, administrator SQL Database dapat menghilangkan pengguna Microsoft Entra yang tidak dapat digunakan secara manual.

Instans Terkelola Azure SQL

Saat menggunakan autentikasi Microsoft Entra dengan Azure SQL Managed Instance, pertimbangkan batasan berikut:

  • Perwakilan server Microsoft Entra (login) dan pengguna didukung untuk SQL Managed Instance.

  • Mengatur login grup Microsoft Entra sebagai pemilik database tidak didukung di SQL Managed Instance.

    • Ekstensi ini adalah bahwa ketika grup ditambahkan sebagai bagian dbcreator dari peran server, pengguna dari grup ini dapat terhubung ke SQL Managed Instance dan membuat database baru, tetapi tidak akan dapat mengakses database. Ini karena pemilik database baru adalah SA, dan bukan pengguna Microsoft Entra. Masalah ini tidak bermanifestasi jika pengguna individual ditambahkan ke dbcreator peran server.
  • Prinsipal server Microsoft Entra (login) untuk SQL Managed Instance memungkinkan kemungkinan membuat beberapa login yang dapat ditambahkan ke peran tersebut sysadmin .

  • Manajemen Agen SQL dan eksekusi pekerjaan didukung untuk login Microsoft Entra.

  • Operasi pencadangan dan pemulihan database dapat dijalankan oleh prinsipal server Microsoft Entra (login).

  • Audit semua pernyataan yang terkait dengan perwakilan server Microsoft Entra (login) dan peristiwa autentikasi didukung.

  • Koneksi administrator khusus untuk prinsipal server Microsoft Entra (login) yang merupakan anggota peran server sysadmin didukung.

    • Didukung melalui SQLCMD Utility dan SQL Server Management Studio.
  • Pemicu masuk didukung untuk peristiwa masuk yang berasal dari prinsipal server Microsoft Entra (login).

  • Service Broker dan DB mail dapat disiapkan menggunakan perwakilan server Microsoft Entra (login).

  • Saat menggunakan grup failover, administrator Microsoft Entra harus dikonfigurasi untuk instans utama dan sekunder. Jika instans tidak memiliki administrator Microsoft Entra, login Microsoft Entra dan pengguna akan Cannot connect menerima kesalahan.

  • PolyBase tidak dapat mengautentikasi menggunakan autentikasi Microsoft Entra.

  • Menghapus administrator Microsoft Entra untuk instans mencegah koneksi autentikasi Microsoft Entra ke instans. Jika perlu, administrator SQL Managed Instance dapat menghilangkan pengguna Microsoft Entra yang tidak dapat digunakan secara manual.