Koneksi ke Azure SQL Database dengan autentikasi multifaktor Microsoft Entra
Berlaku untuk:Azure SQL Database
Artikel ini menyajikan tentang program C# yang tersambung ke Azure SQL Database. Program ini menggunakan autentikasi mode interaktif, yang mendukung autentikasi multifaktor menggunakan ID Microsoft Entra (sebelumnya Azure Active Directory).
Untuk informasi selengkapnya tentang dukungan autentikasi multifaktor untuk alat SQL, lihat Menggunakan autentikasi multifaktor Microsoft Entra.
Catatan
ID Microsoft Entra sebelumnya dikenal sebagai Azure Active Directory (Azure AD).
Autentikasi multifaktor untuk Azure SQL Database
Active Directory Interactive
autentikasi mendukung autentikasi multifaktor menggunakan Microsoft.Data.SqlClient untuk menyambungkan ke sumber data Azure SQL. Dalam program C# klien, nilai enum mengarahkan sistem untuk menggunakan mode interaktif Microsoft Entra yang mendukung autentikasi multifaktor untuk menyambungkan ke Azure SQL Database. Pengguna yang menjalankan program akan melihat kotak dialog berikut ini:
Kotak dialog yang menampilkan nama pengguna Microsoft Entra dan meminta kata sandi pengguna.
Jika domain pengguna digabungkan dengan MICROSOFT Entra ID, kotak dialog tidak muncul, karena tidak diperlukan kata sandi.
Jika kebijakan Microsoft Entra memberlakukan autentikasi multifaktor pada pengguna, kotak dialog untuk masuk ke akun Anda akan ditampilkan.
Pertama kali pengguna melewati autentikasi multifaktor, sistem menampilkan kotak dialog yang meminta nomor telepon seluler untuk mengirim pesan teks. Setiap pesan berisi kode verifikasi yang harus dimasukkan oleh pengguna di kotak dialog berikutnya.
Kotak dialog yang meminta kode verifikasi autentikasi multifaktor, yang telah dikirim sistem ke ponsel.
Untuk informasi tentang cara mengonfigurasi ID Microsoft Entra untuk memerlukan autentikasi multifaktor, lihat Mulai menggunakan autentikasi multifaktor Microsoft Entra di cloud.
Untuk cuplikan layar kotak dialog ini, lihat Menggunakan autentikasi multifaktor Microsoft Entra.
Tip
Anda dapat mencari API .NET Framework dengan halaman alat Browser .NET API.
Anda juga dapat mencari langsung dengan parameter<nilai pencarian>?term= opsional.
Prasyarat
Sebelum memulai, Anda harus memiliki server SQL logis dan memastikannya tersedia.
Mengatur admin Microsoft Entra untuk server Anda
Agar contoh C# berjalan, admin server logis perlu menetapkan admin Microsoft Entra dari ID Microsoft Entra untuk server Anda.
Di portal Azure, pada halaman server SQL, pilih ID Microsoft Entra dari menu sumber daya, lalu pilih Atur admin.
Untuk informasi selengkapnya tentang admin dan pengguna Microsoft Entra untuk Azure SQL Database, lihat cuplikan layar di Mengonfigurasi dan mengelola autentikasi Microsoft Entra dengan SQL Database.
Microsoft.Data.SqlClient
Contoh C# bergantung pada namespace layanan Microsoft.Data.SqlClient. Untuk informasi selengkapnya, lihat Menggunakan autentikasi Microsoft Entra dengan SqlClient.
Catatan
System.Data.SqlClient menggunakan Azure Active Directory Authentication Library (ADAL), yang tidak digunakan lagi. Jika Anda menggunakan namespace System.Data.SqlClient untuk autentikasi Microsoft Entra, migrasikan aplikasi ke Microsoft.Data.SqlClient dan Microsoft Authentication Library (MSAL). Untuk informasi selengkapnya tentang menggunakan autentikasi Microsoft Entra dengan SqlClient, lihat Menggunakan autentikasi Microsoft Entra dengan SqlClient.
Memverifikasi dengan SQL Server Management Studio
Sebelum Anda menjalankan contoh C#, sebaiknya pastikan bahwa penyiapan dan konfigurasi Anda sudah benar di SQL Server Management Studio (SSMS). Kegagalan program C# dapat kemudian dipersempit ke kode sumber.
Memverifikasi alamat IP firewall tingkat server
Menjalankan Management Studio dari komputer yang sama, di gedung yang sama, di mana Anda berencana untuk menjalankan contoh C#. Untuk pengujian ini, mode Autentikasi apa pun tidak masalah. Jika ada indikasi bahwa server tidak menerima alamat IP Anda, lihat aturan firewall tingkat server dan tingkat database untuk mendapatkan bantuan.
Memverifikasi autentikasi multifaktor Microsoft Entra
Jalankan Management Studio lagi, kali ini dengan Autentikasi diatur ke Azure Active Directory - Universal dengan MFA. Opsi ini memerlukan SSMS versi 18.6 atau yang lebih baru.
Untuk informasi selengkapnya, lihat Menggunakan autentikasi multifaktor Microsoft Entra.
Catatan
Untuk versi SSMS sebelum 18.x, pengguna tamu harus memberikan nama domain Microsoft Entra atau ID penyewa untuk database: Pilih Opsi>nama domain AD atau ID penyewa. SSMS 18.x dan yang lebih baru secara otomatis mengenali penyewa.
Untuk menemukan nama domain di portal Azure, pilih Nama domain Kustom Microsoft Entra ID>. Dalam program contoh C#, tidak diperlukan untuk menyediakan nama domain.
Contoh kode C#
Catatan
Jika Anda menggunakan .NET Core, Anda perlu menggunakan kumpulan nama Microsoft.Data.SqlClient. Untuk informasi lebih lanjut, lihat blog berikut.
Ini adalah contoh kode sumber C#.
using System;
using Microsoft.Data.SqlClient;
public class Program
{
public static void Main(string[] args)
{
// Use your own server, database, and user ID.
// Connetion string - user ID is not provided and is asked interactively.
string ConnectionString = @"Server=<your server>.database.windows.net; Authentication=Active Directory Interactive; Database=<your database>";
using (SqlConnection conn = new SqlConnection(ConnectionString))
{
conn.Open();
Console.WriteLine("ConnectionString2 succeeded.");
using (var cmd = new SqlCommand("SELECT @@Version", conn))
{
Console.WriteLine("select @@version");
var result = cmd.ExecuteScalar();
Console.WriteLine(result.ToString());
}
}
Console.ReadKey();
}
}
Ini adalah contoh dari hasil pengujian C#.
ConnectionString2 succeeded.
select @@version
Microsoft SQL Azure (RTM) - 12.0.2000.8
...
Langkah berikutnya
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk