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.
Berlaku untuk:Azure SQL Database
Dalam artikel ini, Anda mempelajari tentang:
- Opsi konfigurasi untuk Azure SQL Database yang memungkinkan pengguna melakukan tugas administratif dan mengakses data yang disimpan dalam database ini.
- Konfigurasi akses dan otorisasi setelah membuat server baru.
- Cara menambahkan login dan akun pengguna dalam
masterdatabase dan memberikan izin administratif akun ini. - Cara menambahkan akun pengguna dalam database pengguna, baik yang terkait dengan login atau sebagai akun pengguna yang termuat.
- Cara mengonfigurasi akun pengguna dengan hak akses di database pengguna dengan menggunakan peran database dan izin eksplisit.
- Untuk Azure SQL Managed Instance, lihat Mengotorisasi akses database ke SQL Managed Instance.
- Untuk Azure Synapse Analytics, lihat Mengotorisasi akses database ke Azure Synapse Analytics.
Catatan
ID Microsoft Entra sebelumnya dikenal sebagai Azure Active Directory (Azure AD).
Autentikasi dan otorisasi
Autentikasi adalah proses untuk membuktikan bahwa pengguna adalah orang yang sesuai. Pengguna tersambung ke database dengan menggunakan akun pengguna.
Saat pengguna mencoba menyambungkan ke database, mereka menyediakan akun pengguna dan informasi autentikasi. Pengguna diautentikasi dengan menggunakan salah satu dari dua metode autentikasi berikut:
-
Dengan menggunakan metode autentikasi ini, pengguna mengirimkan nama akun pengguna dan kata sandi terkait untuk membuat koneksi. Database
mastermenyimpan kata sandi ini untuk akun pengguna yang ditautkan ke login. Basis data yang berisi akun pengguna tidak yang ditautkan ke login menyimpan kata sandi.Catatan
Azure SQL Database hanya memberlakukan kompleksitas kata sandi untuk kebijakan kata sandi.
Autentikasi Microsoft Entra untuk Azure SQL
Dengan menggunakan metode autentikasi ini, pengguna mengirimkan nama akun pengguna dan meminta agar layanan menggunakan informasi kredensial yang disimpan di Microsoft Entra ID (formerly Azure Active Directory).
Login dan pengguna: Anda dapat mengaitkan akun pengguna dalam database dengan login yang master disimpan database, atau Anda bisa menjadikannya nama pengguna yang disimpan database individual.
-
Login adalah akun dalam
masterdatabase, tempat Anda dapat menautkan akun pengguna dalam satu atau beberapa database. Dengan menggunakan login, Anda menyimpan informasi kredensial untuk akun pengguna dengan login. - Akun pengguna adalah akun individual dalam database apa pun yang mungkin, tetapi tidak harus, ditautkan ke login. Dengan menggunakan akun pengguna yang tidak ditautkan ke login, Anda menyimpan informasi kredensial dengan akun pengguna.
Otorisasi untuk mengakses data dan melakukan berbagai tindakan dikelola dengan menggunakan peran database dan izin eksplisit. Otorisasi mengacu pada izin yang ditetapkan kepada pengguna, dan menentukan apa yang diizinkan untuk dilakukan pengguna tersebut. Keanggotaan peran dan izin tingkat objek dalam database akun pengguna Anda mengontrol otorisasi. Sebagai praktik terbaik, berikan pengguna hak istimewa paling sedikit yang diperlukan.
Login dan akun pengguna yang sudah ada setelah membuat database baru
Saat pertama kali Anda menyebarkan sumber daya Azure SQL, tentukan nama login dan kata sandi untuk jenis login administratif khusus, admin Server. Selama penyebaran, konfigurasi login dan pengguna berikut di master dan database pengguna terjadi:
Penting
Jangan sertakan informasi pribadi, sensitif, atau rahasia apa pun di bidang nama masuk admin server. Data yang dimasukkan di bidang ini tidak dianggap sebagai data pelanggan.
- Proses penyebaran membuat login autentikasi SQL dengan hak istimewa administratif dengan menggunakan nama login yang Anda tentukan. Login adalah akun individual untuk masuk ke Azure SQL Database.
- Proses penyebaran memberikan login ini izin administratif penuh pada semua database sebagai prinsipal tingkat server. Login memiliki semua izin yang tersedia dan tidak dapat dibatasi.
- Ketika akun ini masuk ke database, akun tersebut cocok dengan akun pengguna khusus (akun
dbopengguna), yang ada di setiap database pengguna. Pengguna dbo memiliki semua izin di dalam database dan merupakan bagian dari peran database tetapdb_owner. Peran database tetap tambahan dibahas nanti di artikel ini.
Untuk mengidentifikasi akun admin Server :
- Buka hub Azure SQL di aka.ms/azuresqlhub.
- Di menu sumber daya, buka server logis Azure SQL Database Anda.
- Di bawah Pengaturan, pilih halaman Properti .
- Lihat nilai untuk admin login server atau Microsoft Entra admin.
Penting
Anda tidak dapat mengubah nama akun admin Server setelah membuatnya. Untuk mengatur ulang kata sandi untuk admin server, buka portal Azure, pilih SQL Server, pilih server dari daftar, lalu pilih Atur Ulang Kata Sandi.
Membuat login dan pengguna tambahan dengan izin administratif
Pada titik ini, server logis SQL Anda dikonfigurasi untuk akses dengan menggunakan satu login autentikasi SQL dan akun pengguna. Untuk membuat login tambahan dengan izin administratif penuh atau parsial, gunakan opsi berikut.
Membuat akun administrator Microsoft Entra dengan izin administratif penuh
Aktifkan autentikasi Microsoft Entra dan tambahkan admin Microsoft Entra. Anda dapat mengonfigurasi satu akun Microsoft Entra sebagai administrator penyebaran Azure SQL dengan izin administratif penuh. Akun ini dapat berupa akun individual atau akun grup keamanan. Anda harus mengonfigurasi admin Microsoft Entra jika ingin menggunakan akun Microsoft Entra untuk menyambungkan ke Azure SQL Database. Untuk informasi terperinci tentang mengaktifkan autentikasi Microsoft Entra untuk semua jenis penyebaran Azure SQL, lihat artikel berikut ini:
Di SQL Database, buat login autentikasi SQL dengan izin administratif terbatas
- Buat login autentikasi SQL tambahan di
masterdatabase.- Tambahkan login ke
##MS_DatabaseManager####MS_LoginManager##,##MS_DatabaseConnector##, dan dengan menggunakan pernyataan ALTER SERVER ROLE.
- Tambahkan login ke
Anggota
masteruntuk Azure SQL Database memiliki wewenang untuk membuat dan mengelola database atau login. Dalam database yang dibuat oleh pengguna yang merupakan anggota perandbmanager, anggota tersebut dipetakan ke peran database tetapdb_ownerdan dapat masuk ke serta mengelola database tersebut dengan menggunakan akun penggunadbo. Peran ini tidak memiliki izin eksplisit di luar basis datamaster.Penting
Anda tidak dapat membuat login autentikasi SQL tambahan dengan izin administratif penuh di Azure SQL Database. Hanya akun admin server atau akun admin Microsoft Entra (yang dapat menjadi grup Microsoft Entra) yang dapat menambahkan atau menghapus login lain ke atau dari peran server. Pembatasan ini khusus untuk Azure SQL Database.
- Buat login autentikasi SQL tambahan di
Membuat akun untuk pengguna nonadministrator
Buat akun untuk pengguna nonadministratif dengan menggunakan salah satu metode berikut:
Membuat login
Buat login autentikasi SQL di
masterdatabase. Kemudian buat akun pengguna di setiap database yang perlu diakses pengguna dan kaitkan akun pengguna dengan login. Gunakan pendekatan ini ketika pengguna perlu mengakses beberapa database dan Anda ingin menjaga kata sandi tetap sinkron. Namun, pendekatan ini menambah kompleksitas ketika Anda menggunakannya dengan replikasi geografis karena Anda harus membuat login di server utama dan server sekunder. Untuk informasi lebih lanjut, lihat Mengonfigurasi dan mengelola keamanan Azure SQL Database untuk pemulihan geografis atau pindah alih.Buat akun pengguna
Buat akun pengguna di database yang perlu diakses pengguna (juga disebut pengguna mandiri).
Dengan menggunakan pendekatan ini, informasi autentikasi pengguna disimpan di setiap database dan secara otomatis direplikasi ke database yang direplikasi secara geografis. Namun, jika akun yang sama ada di beberapa database dan Anda menggunakan autentikasi SQL, Anda harus menjaga kata sandi tetap disinkronkan secara manual. Selain itu, jika pengguna memiliki akun di database yang berbeda dengan kata sandi yang berbeda, mengingat kata sandi tersebut dapat menjadi masalah.
Penting
Untuk membuat pengguna mandiri yang dipetakan ke identitas Microsoft Entra, Anda harus masuk dengan menggunakan akun Microsoft Entra dalam database di Azure SQL Database.
Untuk contoh yang menunjukkan cara membuat login dan pengguna, lihat:
Petunjuk / Saran
Untuk tutorial keamanan yang menyertakan pembuatan pengguna di Azure SQL Database, lihat Tutorial: Mengamankan database di Azure SQL Database.
Menggunakan peran database tetap dan kustom
Setelah membuat akun pengguna dalam database, baik berdasarkan login atau sebagai pengguna yang termuat, Anda dapat mengotorisasi pengguna tersebut untuk melakukan berbagai tindakan dan mengakses data dalam database tertentu. Gunakan metode berikut untuk mengotorisasi akses:
Peran database tetap
Tambahkan akun pengguna ke peran database tetap. Ada sembilan peran database tetap, masing-masing dengan sekumpulan izin yang ditentukan. Peran database tetap yang paling umum adalah: db_owner, db_ddladmin, db_datawriter, db_datareader, db_denydatawriter, dan db_denydatareader. Gunakan db_owner untuk memberikan izin penuh hanya kepada beberapa pengguna. Peran database tetap lainnya berguna untuk mendapatkan database sederhana dalam pengembangan dengan cepat, tetapi tidak direkomendasikan untuk sebagian besar database produksi. Misalnya, peran database tetap db_datareader memberikan akses baca ke setiap tabel dalam database, yang mana lebih dari yang diperlukan.
Untuk menambahkan pengguna ke peran database tetap:
- Di Azure SQL Database, gunakan pernyataan ALTER ROLE. Untuk contoh, lihat contoh ALTER ROLE.
Peran database khusus
Buat peran database kustom dengan menggunakan pernyataan CREATE ROLE . Peran kustom memungkinkan Anda membuat peran database yang ditentukan pengguna sendiri dan dengan hati-hati memberikan izin pada setiap peran seminimal yang diperlukan untuk kebutuhan bisnis. Kemudian tambahkan pengguna ke peran kustom. Ketika pengguna adalah anggota dari beberapa peran, mereka menggabungkan izin dari mereka semua.
Memberikan izin secara langsung
Beri izin akun pengguna secara langsung. Ada lebih dari 100 izin yang dapat Anda berikan atau tolak secara individual. Izin-izin ini banyak yang berlapis. Misalnya, izin
UPDATEpada skema menyertakan izinUPDATEpada setiap tabel dalam skema tersebut. Seperti pada kebanyakan sistem izin, penolakan mengambil alih pemberian izin. Karena sifatnya berlapis dan banyaknya jumlah izin, perlu adanya studi yang cermat untuk merancang sistem izin yang sesuai untuk melindungi database Anda dengan benar. Mulai dengan daftar izin di Izin (Mesin Database) dan tinjau grafik ukuran poster dari izin tersebut.
Menggunakan grup
Manajemen akses yang efisien memberikan izin kepada grup keamanan Microsoft Entra serta peran tetap atau kustom, alih-alih kepada masing-masing pengguna.
Saat menggunakan autentikasi Microsoft Entra, masukkan pengguna Microsoft Entra ke dalam grup keamanan Microsoft Entra. Buat pengguna database terkontrol untuk grup. Tambahkan satu atau beberapa pengguna database sebagai anggota ke peran database kustom atau bawaan dengan izin tertentu yang sesuai dengan grup pengguna tersebut.
Saat menggunakan autentikasi SQL, buatlah pengguna database yang termuat dalam database. Tempatkan satu atau beberapa pengguna database ke dalam peran database kustom dengan izin tertentu yang sesuai dengan grup pengguna tersebut.
Catatan
Anda juga dapat menggunakan grup untuk pengguna database yang tidak kontainer.
Biasakan diri Anda dengan fitur berikut yang dapat Anda gunakan untuk membatasi atau meningkatkan izin:
- Peniruan dan penandatanganan modul dapat digunakan untuk meningkatkan izin dengan aman untuk sementara.
- Row-Level Security dapat digunakan untuk membatasi baris mana yang dapat diakses oleh pengguna.
- Masking data dinamis dapat digunakan untuk membatasi paparan data sensitif.
- Prosedur yang disimpan dapat digunakan untuk membatasi tindakan yang dapat dilakukan pada database.