Latihan - Mengonfigurasi autentikasi

Selesai

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.

  1. Buka SQL Server Management Studio (SSMS), dan sambungkan ke server logis Azure SQL Database Anda, jika Anda belum tersambung.

  2. 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 pernyataan USE tidak didukung. Ada beberapa pengecualian untuk mengkueri database Anda di Azure SQL Database, dan satu adalah login. Anda harus tersambung ke database virtual master 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 Anda AdventureWorks 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.

  3. 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!'
    
  4. 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!.

  5. 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.

  6. Pilih Sambungkan, lalu konfirmasi bahwa Anda bisa mengakses database.

  7. 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).