Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Aplikasi ke:Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
- SQL Server 2022
- SQL Server 2025
Azure SQL Database & Azure SQL Managed Instance - SQL Server pada VM Azure
Artikel ini memperlihatkan kepada Anda cara menggunakan Microsoft Entra ID untuk autentikasi dengan Azure SQL Database, Azure SQL Managed Instance, dan Azure Synapse Analytics.
Catatan
Microsoft Entra ID sebelumnya dikenal sebagai Azure Active Directory (Azure AD).
Atau, Anda juga dapat mengonfigurasi autentikasi Microsoft Entra untuk SQL Server on Azure Virtual Machines.
Prasyarat
Untuk menggunakan autentikasi Microsoft Entra dengan sumber daya Azure SQL, Anda memerlukan prasyarat berikut:
- Instansi Microsoft Entra yang terisi pengguna dan grup.
- Sumber daya Azure SQL yang ada, seperti Azure SQL Database, atau Azure SQL Managed Instance.
Buat dan isi tenant Microsoft Entra
Sebelum dapat mengonfigurasi autentikasi Microsoft Entra untuk sumber daya Azure SQL, Anda perlu membuat penyewa Microsoft Entra dan mengisinya dengan pengguna dan grup. Penyewa Microsoft Entra dapat dikelola sepenuhnya dalam Azure atau digunakan untuk federasi Layanan Domain Active Directory lokal.
Untuk informasi selengkapnya, lihat:
- Apa yang Microsoft Entra ID?
- Mengintegrasikan identitas lokal Anda dengan Microsoft Entra ID
- Tambahkan nama domain Anda ke Microsoft Entra ID
- Apa itu federasi dengan Microsoft Entra ID?
- sinkronisasi direktori dengan Microsoft Entra ID
- Kelola Microsoft Entra ID menggunakan Windows PowerShell
- Identitas Hibrid: Port dan Protokol yang Diperlukan
Mengonfigurasi admin Microsoft Entra
Untuk menggunakan autentikasi Microsoft Entra dengan sumber daya Anda, perlu mengatur administrator Microsoft Entra. Meskipun secara konseptual langkah-langkahnya sama untuk Azure SQL Database, Azure Synapse Analytics, dan Azure SQL Managed Instance, bagian ini menjelaskan secara rinci berbagai API dan pengalaman portal untuk melakukannya per produk.
Admin Microsoft Entra juga dapat dikonfigurasi saat sumber daya Azure SQL dibuat. Jika admin Microsoft Entra sudah dikonfigurasi, lewati bagian ini.
Azure SQL Database dan Azure Synapse Analytics
Pengaturan admin Microsoft Entra memungkinkan autentikasi Microsoft Entra untuk server Logical Anda di Azure SQL Database dan Azure Synapse Analytics. Anda dapat mengatur admin Microsoft Entra untuk server Anda dengan menggunakan portal Azure, PowerShell, Azure CLI, atau REST API.
Di portal Azure, Anda dapat menemukan nama server logis
- Di bidang nama server pada halaman Azure SQL Database Overview.
- Di bidang nama server pada halaman Overview di kumpulan SQL khusus mandiri Anda di Azure Synapse Analytics.
- Di bagian endpoint SQL yang relevan pada halaman Ikhtisar ruang kerja Azure Synapse Analytics Anda.
- Portal Azure
- PowerShell
- Azure CLI
- REST API
Untuk mengatur admin Microsoft Entra untuk server logis Anda di portal Azure, ikuti langkah-langkah berikut:
Di panel portal Azure Direktori + langganan, pilih direktori yang berisi sumber daya Azure SQL Anda sebagai direktori Current.
Cari server SQL lalu pilih server logis untuk sumber daya database Anda untuk membuka panel server SQL.
Pada panel server SQL untuk server logis Anda, pilih Microsoft Entra ID di bawah Settings untuk membuka panel Microsoft Entra ID.
Pada panel Microsoft Entra ID, pilih Set admin untuk membuka panel Microsoft Entra ID.
Panel Microsoft Entra ID memperlihatkan semua pengguna, grup, dan aplikasi di direktori Anda saat ini dan memungkinkan Anda mencari berdasarkan nama, alias, atau ID. Temukan identitas yang Anda inginkan untuk admin Microsoft Entra Anda dan pilih, lalu pilih Pilih untuk menutup panel.
Di bagian atas halaman Microsoft Entra ID untuk server logis Anda, pilih Simpan.
ID Object ditampilkan di samping nama admin untuk pengguna dan grup Microsoft Entra. Untuk aplikasi (perwakilan layanan), ID Aplikasi ditampilkan.
Proses mengubah administrator mungkin memakan waktu beberapa menit. Kemudian administrator baru muncul di bidang admin Microsoft Entra.
Untuk menghapus admin, di bagian atas halaman Microsoft Entra ID, pilih Pindahkan admin, lalu pilih Simpan. Menghapus admin Microsoft Entra menonaktifkan autentikasi Microsoft Entra untuk server logis Anda.
Catatan
Admin Microsoft Entra disimpan dalam database master server sebagai pengguna (prinsipal database). Karena nama utama database harus unik, nama tampilan admin tidak boleh sama dengan nama pengguna mana pun di database server master . Jika pengguna dengan nama sudah ada, pengaturan admin Microsoft Entra gagal dan dibatalkan, menyatakan bahwa nama tersebut sudah digunakan.
Azure SQL Managed Instance
Mengatur admin Microsoft Entra memungkinkan autentikasi Microsoft Entra untuk Azure SQL Managed Instance. Anda dapat mengatur admin Microsoft Entra untuk instans terkelola SQL Anda dengan menggunakan portal Azure, PowerShell, Azure CLI, atau REST API.
- Portal Azure
- PowerShell
- Azure CLI
- REST API
Untuk memberikan izin baca instans terkelola SQL Anda ke Microsoft Entra ID dengan menggunakan portal Azure, masuk sebagai Privileged Role Administrator dan ikuti langkah-langkah berikut:
Di portal Azure, di sudut kanan atas, pilih akun Anda, lalu pilih Ubah direktori untuk mengonfirmasi direktori mana yang merupakan Direktori saat ini. Beralih direktori, jika perlu.
Di panel portal Azure Direktori + langganan, pilih direktori yang berisi instans terkelola Anda sebagai direktori Current.''
Cari instans terkelola SQL lalu pilih instans terkelola Anda untuk membuka panel instans terkelola SQL. Kemudian, pilih Microsoft Entra ID di bawah Settings untuk membuka panel Microsoft Entra ID untuk instans Anda.
Pada panel Microsoft Entra admin, pilih Set admin dari bilah navigasi untuk membuka panel Microsoft Entra ID.
Pada panel Microsoft Entra ID, cari pengguna, centang kotak di samping pengguna atau grup untuk menjadi administrator, lalu tekan Pilih untuk menutup panel dan kembali ke admin Microsoft Entra admin untuk instans terkelola Anda.
Panel Microsoft Entra ID memperlihatkan semua anggota dan grup dalam direktori Anda saat ini. Pengguna atau grup berwarna abu-abu tidak dapat dipilih karena mereka tidak didukung sebagai administrator Microsoft Entra. Pilih identitas yang ingin Anda tetapkan sebagai administrator Anda.
Dari bilah navigasi admin Microsoft Entra untuk instans terkelola Anda, pilih Simpan untuk mengonfirmasi administrator Microsoft Entra Anda.
Setelah operasi perubahan administrator selesai, administrator baru muncul di bidang admin Microsoft Entra.
ID Object ditampilkan di samping nama admin untuk pengguna dan grup Microsoft Entra. Untuk aplikasi (perwakilan layanan), ID Aplikasi ditampilkan.
Petunjuk
Untuk menghapus admin, pilih Pindahkan admin di bagian atas halaman Microsoft Entra ID, lalu pilih Simpan.
Menetapkan izin Microsoft Graph
SQL Managed Instance memerlukan izin untuk membaca Microsoft Entra ID skenario seperti mengotorisasi pengguna yang terhubung melalui keanggotaan grup keamanan dan pembuatan pengguna baru. Agar autentikasi Microsoft Entra berfungsi, Anda perlu menetapkan identitas instans terkelola ke peran Directory Readers. Anda dapat melakukan ini menggunakan portal Azure atau PowerShell.
Untuk beberapa operasi, Azure SQL Database dan Azure Synapse Analytics juga memerlukan izin untuk mengkueri Microsoft Graph, dijelaskan dalam izin Microsoft Graph. Azure SQL Database dan Azure Synapse Analytics mendukung izin Grafik terperinci untuk skenario ini, sedangkan SQL Managed Instance memerlukan peran Directory Readers. Izin dengan tingkat detail tinggi dan penugasannya dijelaskan secara rinci dalam agen layanan enable untuk membuat pengguna Microsoft Entra.
Penting
Azure SQL Database dan SQL Managed Instance menggunakan model izin yang berbeda untuk akses Microsoft Graph:
-
Azure SQL Database dan Azure Synapse Analytics: Mendukung izin Graph API Microsoft terperinci (seperti
User.Read.All,GroupMember.Read.All, danApplication.Read.All) yang ditetapkan langsung ke identitas server. Pendekatan ini mengikuti prinsip hak istimewa paling sedikit dan direkomendasikan. Untuk instruksi langkah demi langkah, lihat Mengaktifkan prinsipal layanan untuk membuat pengguna Microsoft Entra. Peran Pembaca Direktori juga dapat digunakan sebagai alternatif yang lebih luas. - SQL Managed Instance: Memerlukan peran Pembaca Direktori atau izin Microsoft Graph terperinci yang setara yang ditetapkan ke identitas instans. Portal Azure menyediakan banner yang nyaman di halaman Microsoft Entra ID yang meminta Anda untuk memberikan peran Pembaca Direktori. Ikuti langkah-langkah di bagian peran Pembaca Direktori .
Jika mengonfigurasi Azure SQL Database, Anda tidak perlu menetapkan peran Pembaca Direktori untuk penyiapan admin Microsoft Entra dasar. Sebagai gantinya, tetapkan izin Microsoft Graph yang rinci ke identitas server seperti yang dijelaskan dalam Managed identities di Microsoft Entra untuk Azure SQL.
Peran Pembaca Direktori
Peran Directory Readers dan banner portal yang dijelaskan di bagian ini terutama berlaku untuk SQL Managed Instance. Untuk Azure SQL Database, Anda dapat menetapkan izin Microsoft Graph yang sangat terperinci sebagai gantinya, atau secara opsional menggunakan Pembaca Direktori sebagai alternatif yang lebih luas.
- Portal Azure
- PowerShell
- Azure CLI
- REST API
Halaman Microsoft Entra ID untuk SQL Managed Instance di portal Azure menampilkan banner yang nyaman saat instans tidak diberi izin Pembaca Direktori.
Pilih banner di atas halaman Microsoft Entra ID dan berikan izin ke identitas terkelola yang ditetapkan sistem atau ditetapkan pengguna yang mewakili instans Anda. Hanya Administrator Peran Istimewa atau peran yang lebih tinggi dalam penyewa Anda yang dapat melakukan operasi ini.
Catatan
Jika Anda tidak melihat banner, mungkin instans sudah memiliki Peran Pembaca Direktori yang ditetapkan, atau Anda mungkin tidak memiliki peran Administrator Peran Istimewa yang diperlukan. Jika Anda tidak memiliki peran ini, minta administrator penyewa Anda untuk memberikan izin, atau gunakan metode PowerShell pada tab PowerShell .
Saat operasi berhasil, pemberitahuan Berhasil muncul di sudut kanan atas:
Admin Microsoft Entra sekarang dapat digunakan untuk membuat prinsipal server Microsoft Entra (login) dan prinsipal database (pengguna). Untuk informasi selengkapnya, lihat integrasi Microsoft Entra dengan Azure SQL Managed Instance.
Membuat prinsipal Microsoft Entra di SQL
Untuk menyambungkan ke database di SQL Database atau Azure Synapse Analytics dengan autentikasi Microsoft Entra, pengguna utama harus dikonfigurasi pada database untuk identitas pengguna tersebut dengan setidaknya izin CONNECT.
Izin pengguna database
Saat pengguna database dibuat, pengguna tersebut menerima CONNECT izin ke database secara default. Pengguna database juga mewarisi izin dalam dua keadaan:
- Jika pengguna adalah anggota grup Microsoft Entra yang juga diberi izin di server.
- Jika pengguna dibuat dari login, pengguna akan mewarisi izin masuk yang ditetapkan server yang berlaku pada database.
Mengelola izin untuk server dan entitas database berfungsi sama terlepas dari jenis entitas (Microsoft Entra ID, autentikasi SQL, dll.). Sebaiknya berikan izin ke peran database alih-alih secara langsung memberikan izin kepada pengguna. Kemudian pengguna dapat ditambahkan ke peran dengan izin yang sesuai. Ini menyederhanakan manajemen izin jangka panjang dan mengurangi kemungkinan identitas mempertahankan akses sebelumnya jika sesuai.
Untuk informasi selengkapnya, lihat:
- Izin dan contoh mesin database
- Blog: dasar-dasar perizinan Database Engine
- Mengelola peran dan login database khusus di Azure SQL Database
Pengguna database terkandung
Pengguna database tertutup adalah jenis pengguna SQL yang tidak terhubung ke login di master database. Untuk membuat pengguna database mandiri Microsoft Entra, sambungkan ke database dengan identitas Microsoft Entra yang memiliki setidaknya izin ALTER PENGGUNA APA PUN**. Contoh T-SQL berikut membuat prinsipal basis data Microsoft_Entra_principal_name dari Microsoft Entra ID.
CREATE USER [<Microsoft_Entra_principal_name>] FROM EXTERNAL PROVIDER;
Untuk membuat pengguna database terpisah untuk grup Microsoft Entra, masukkan nama tampilan grup:
CREATE USER [ICU Nurses] FROM EXTERNAL PROVIDER;
Untuk membuat pengguna database mandiri untuk identitas terkelola atau perwakilan layanan, masukkan nama tampilan identitas:
CREATE USER [appName] FROM EXTERNAL PROVIDER;
Untuk membuat pengguna database terkurung untuk pengguna Microsoft Entra, masukkan nama utama pengguna dari identitas:
CREATE USER [adrian@contoso.com] FROM EXTERNAL PROVIDER;
Pengguna berbasis login
Catatan
Microsoft Entra server principal (logins) saat ini dalam pratinjau publik untuk Azure SQL Database dan Azure Synapse Analytics. Microsoft Entra login umumnya tersedia untuk Azure SQL Managed Instance dan SQL Server 2022.
Microsoft Entra server principal (atau login) didukung, yang berarti pengguna database 'contained' tidak diperlukan. Prinsipal database (pengguna) dapat dibuat berdasarkan prinsipal server, yang berarti pengguna Microsoft Entra dapat mewarisi izin yang ditetapkan pada tingkat server dari login.
CREATE USER [appName] FROM LOGIN [appName];
Untuk informasi selengkapnya, lihat gambaran umum SQL Managed Instance. Untuk sintaksis tentang membuat prinsipal server Microsoft Entra (login), lihat BUAT LOGIN.
Pengguna eksternal
Anda tidak dapat langsung membuat pengguna database untuk identitas yang dikelola di penyewa Microsoft Entra yang berbeda dari yang terkait dengan langganan Azure Anda. Namun, pengguna di direktori lain dapat diimpor ke direktori terkait sebagai pengguna eksternal. Mereka kemudian dapat digunakan untuk membuat pengguna database mandiri yang dapat mengakses database. Pengguna eksternal juga dapat memperoleh akses melalui keanggotaan di grup Microsoft Entra.
Examples: Untuk membuat pengguna database terkendali yang mewakili pengguna domain terfederasi atau terkelola Microsoft Entra:
CREATE USER [alice@fabrikam.com] FROM EXTERNAL PROVIDER;
Akun pengguna domain federasi yang diimpor ke domain terkelola sebagai pengguna eksternal, harus menggunakan identitas domain terkelola.
Pertimbangan nama
Karakter khusus seperti titik dua : atau ampersand & ketika digunakan sebagai nama pengguna dalam pernyataan pada T-SQL CREATE LOGIN dan CREATE USER tidak didukung.
Microsoft Entra ID dan Azure SQL menyimpang dalam desain manajemen pengguna mereka dengan satu cara utama: Microsoft Entra ID memungkinkan nama tampilan dapat diduplikasi di dalam satu tenant, sedangkan Azure SQL mengharuskan semua prinsipal server pada server atau instans dan semua prinsipal database pada database memiliki nama yang unik. Karena Azure SQL secara langsung menggunakan nama tampilan identitas Microsoft Entra saat membuat prinsipal, ini dapat mengakibatkan kesalahan saat membuat pengguna. Untuk mengatasi masalah ini, Azure SQL telah merilis peningkatan WITH OBJECT_ID yang saat ini dalam pratinjau, yang memungkinkan pengguna menentukan identitas Microsoft Entra ID objek yang akan ditambahkan ke server atau instans.
izin Microsoft Graph
Perintah CREATE USER ... FROM EXTERNAL PROVIDER memerlukan akses Azure SQL ke Microsoft Entra ID ("penyedia eksternal") atas nama pengguna yang masuk. Terkadang, keadaan muncul yang menyebabkan Microsoft Entra ID mengembalikan pengecualian ke Azure SQL.
- Anda mungkin mengalami kesalahan SQL 33134, yang berisi pesan kesalahan khusus Microsoft Entra ID. Kesalahan biasanya mengatakan bahwa akses ditolak, bahwa pengguna harus mendaftar di MFA untuk mengakses sumber daya, atau bahwa akses antara aplikasi pihak pertama harus ditangani melalui praautorisasi. Dalam dua kasus pertama, masalah biasanya disebabkan oleh kebijakan Akses Bersyarat yang diatur dalam penyewa Microsoft Entra milik pengguna, yang mencegah pengguna mengakses penyedia eksternal. Memperbarui kebijakan Akses Bersyarat untuk mengizinkan akses ke aplikasi '00000003-0000-0000-c000-000000000000' (ID aplikasi Microsoft Graph API) akan mengatasi masalah tersebut. Jika kesalahan mengatakan akses antara aplikasi pihak pertama harus ditangani melalui praautorisasi, masalahnya adalah karena pengguna masuk sebagai perwakilan layanan. Perintah harus berhasil jika dijalankan oleh pengguna sebagai gantinya.
- Jika Anda menerima Kedaluwarsa Batas Waktu Koneksi, Anda mungkin perlu mengatur parameter
TransparentNetworkIPResolutiondari connection string ke false. Untuk informasi selengkapnya, lihat Masalah batas waktu koneksi dengan .NET Framework 4.6.1 - TransparentNetworkIPResolution.
Untuk informasi selengkapnya tentang membuat pengguna database mandiri berdasarkan identitas Microsoft Entra, lihat BUAT PENGGUNA.
Mengonfigurasi autentikasi multifaktor
Untuk meningkatkan keamanan ke sumber daya Azure SQL Anda, pertimbangkan untuk mengonfigurasi autentikasi multifactor (MFA), yang meminta pengguna untuk menggunakan metode alternatif kedua untuk mengautentikasi ke database, seperti panggilan telepon atau aplikasi pengautentikasi.
Untuk menggunakan autentikasi multifaktor dengan sumber daya Azure SQL Anda, pertama-tama aktifkan autentikasi multifaktor, lalu gunakan kebijakan akses bersyarat untuk memberlakukan autentikasi multifaktor pada sumber daya Azure SQL Anda.
Hubungkan dengan Microsoft Entra
Setelah autentikasi Microsoft Entra dikonfigurasi, Anda dapat menggunakannya untuk menyambungkan ke sumber daya SQL dengan alat Microsoft seperti SQL Server Management Studio dan SQL Server Data Tools, dan mengonfigurasi aplikasi client untuk terhubung menggunakan menggunakan Microsoft Entra identitas.
Memecahkan masalah autentikasi Microsoft Entra
Untuk panduan tentang pemecahan masalah, lihat Blog: Memecahkan masalah yang terkait dengan autentikasi Microsoft Entra dengan Azure SQL Database dan Azure Synapse.
Konten terkait
- Berikan otorisasi akses database ke SQL Database, SQL Managed Instance, dan Azure Synapse Analytics
- Identitas Terkelola di Microsoft Entra untuk Azure SQL
- Microsoft Entra perwakilan layanan dengan Azure SQL
- Principals
- Peran database
- Azure SQL Database dan aturan firewall IP Azure Synapse
- Buat pengguna tamu Microsoft Entra dan tetapkan sebagai admin Microsoft Entra
- Tutorial: Membuat pengguna Microsoft Entra menggunakan aplikasi Microsoft Entra