Latihan - Mengonfigurasi autentikasi
Dalam latihan ini, Anda akan membuat login, pengguna, dan admin, dan Anda akan memberi pengguna Microsoft Entra akses ke database, seperti yang Anda lakukan untuk pengguna normal di SQL Server.
Buka SQL Server Management Studio (SSMS), dan sambungkan ke server logis Azure SQL Database Anda, jika Anda belum tersambung.
Setelah mengonfigurasi dan menyambungkan ke database Anda, langkah Anda berikutnya mungkin adalah menambahkan pengguna lain dan memberi mereka akses. Seperti di SQL Server, Anda dapat menambahkan login dan pengguna baru.
Di SQL Server Management Studio, klik kanan server database Anda, pilih Kueri Baru, dan buat kueri baru dengan perintah berikut. Pilih Jalankan untuk menjalankan kueri:
-- Create a new SQL login and give them a password CREATE LOGIN ApplicationUser WITH PASSWORD = 'YourStrongPassword1';
Tip
Untuk sebagian besar kueri di Azure SQL Database, Anda harus mengklik kanan database dalam server logika Azure SQL Database Anda. Di SQL Server dan Azure SQL Managed Instance, Anda dapat mengkueri di tingkat server dan menggunakan
USE <DatabaseName>
, tetapi di Azure SQL Database, Anda harus mengkueri database secara langsung. Hal ini dikarenakan pernyataanUSE
tidak didukung. Ada beberapa pengecualian untuk mengkueri database Anda di Azure SQL Database, dan satu adalah login. Anda harus tersambung ke database virtualmaster
untuk membuat dan mengubah login.Sekarang Anda memiliki login di tingkat server. Langkah selanjutnya adalah membuat pengguna dalam
AdventureWorks
database dan memberi mereka akses baca/tulis, jika perlu. Klik kanan database AndaAdventureWorks
dan pilih Kueri Baru. Buat kueri baru dengan dengan perintah berikut, lalu pilih Jalankan:-- Create a new SQL user from that login CREATE USER ApplicationUser FOR LOGIN ApplicationUser; -- Until you run the following two lines, ApplicationUser has no access to read or write data ALTER ROLE db_datareader ADD MEMBER ApplicationUser; ALTER ROLE db_datawriter ADD MEMBER ApplicationUser;
Pengguna hanya dapat masuk ke database AdventureWorks, bukan seluruh server.
Praktik terbaik adalah membuat akun non-admin di tingkat database, kecuali pengguna harus dapat menjalankan tugas administrator.
Di SQL Server, Anda mungkin sudah terbiasa dengan konsep pengguna database yang terkandung. Ini berarti bahwa pengguna hanya memiliki akses ke database tertentu dan tidak memiliki login ke server. Di Azure SQL Database, Anda dapat membuat pengguna database mandiri dengan autentikasi SQL atau autentikasi Microsoft Entra. Anda harus berada dalam konteks database pengguna yang ingin Anda buat akses penggunanya (dibandingkan dengan berada di
master
). Di SQL Server Management Studio, klik kanan database Anda dan pilih Kueri Baru. Buat kueri baru dengan perintah berikut, lalu pilih Jalankan:CREATE USER MyDatabaseUser WITH PASSWORD = 'C0mpl3xPa55word!'
Pilih Koneksi di kiri atas Object Explorer, lalu pilihMesin Database. Konfigurasikan halaman utama sehingga Anda menyambungkan ke server logis Azure SQL Database Anda. Untuk Masuk, masukkan MyDatabaseUser, dan untuk Kata Sandi, masukkan C0mpl3xPa55word!.
Anda juga harus mengatur nama database, yang bisa Anda lakukan dengan masuk ke Opsi>Parameter Koneksi Tambahan, tempat Anda bisa memasukkan
Initial Catalog=AdventureWorks
. Anda harus melakukan ini secara manual, karena MyDatabaseUser tidak memiliki akses untuk memindai server untuk memilih database.Pilih Sambungkan, lalu konfirmasi bahwa Anda bisa mengakses database.
Sebagai langkah pembersihan, klik kanan koneksi dari MyDatabaseUser, lalu pilih Putuskan sambungan.
Memberikan akses ke pengguna Microsoft Entra lainnya
Anda dapat membuat login dari akun Microsoft Entra sebagai pengguna database mandiri menggunakan CREATE USER [anna@contoso.com] FROM EXTERNAL PROVIDER
sintaks T-SQL. Pengguna database mandiri memetakan ke identitas di direktori Microsoft Entra yang terkait dengan database dan tidak memiliki login dalam master
database.
Dengan pengenalan login server Microsoft Entra di Azure SQL Database, Anda dapat membuat login dari perwakilan Microsoft Entra dalam database virtual master
SQL Database. Anda dapat membuat login Microsoft Entra dari pengguna, grup, dan perwakilan layanan Microsoft Entra. Untuk informasi selengkapnya, lihat Prinsipal server Microsoft Entra
Selain itu, Anda dapat menggunakan portal Azure hanya untuk membuat administrator, dan peran kontrol akses berbasis peran Azure tidak disebarluaskan ke server logis Azure SQL Database. Anda harus memberikan izin server dan database tambahan dengan menggunakan Transact-SQL (T-SQL).