Memilih Mod Pengesahan SQL Server

Microsoft SQL Server 2016 menawarkan pentadbir dua pilihan untuk melaksanakan bagaimana sistem itu akan mengesahkan pengguna: mod pengesahan Windows atau mod pengesahan campuran.

Pengesahan Windows bermaksud bahawa SQL Server mengesahkan identiti pengguna menggunakan hanya nama pengguna dan kata laluan Windowsnya. Sekiranya pengguna telah disahkan oleh sistem Windows, SQL Server tidak meminta kata laluan.

Mod campuran bermakna bahawa SQL Server membolehkan pengesahan Windows dan pengesahan SQL Server. Pengesahan SQL Server mencipta login pengguna yang tidak berkaitan dengan Windows.

Asas Pengesahan

Pengesahan adalah proses mengesahkan identiti pengguna atau komputer. Proses biasanya terdiri daripada empat langkah:

  1. Pengguna membuat tuntutan identiti, biasanya dengan menyediakan nama pengguna.
  2. Sistem ini mencabar pengguna untuk membuktikan identiti mereka. Cabaran yang paling biasa ialah permintaan kata laluan.
  3. Pengguna memberi respons kepada cabaran dengan menyediakan bukti yang diminta, biasanya kata laluan.
  4. Sistem mengesahkan bahawa pengguna telah memberikan bukti yang dapat diterima oleh, sebagai contoh, memeriksa kata laluan terhadap pangkalan data kata laluan setempat atau menggunakan pelayan pengesahan terpusat.

Untuk perbincangan kami tentang mod pengesahan SQL Server, titik kritikal adalah pada langkah keempat di atas: titik di mana sistem mengesahkan bukti identiti pengguna. Pilihan mod pengesahan menentukan di mana SQL Server pergi untuk mengesahkan kata laluan pengguna.

Mengenai Mod Pengesahan SQL Server

Mari kita jelajahi dua mod ini sedikit lagi:

Mod pengesahan Windows memerlukan pengguna untuk menyediakan nama pengguna dan kata laluan Windows yang sah untuk mengakses pelayan pangkalan data. Jika mod ini dipilih, SQL Server melumpuhkan fungsi log masuk khusus SQL Server, dan identiti pengguna disahkan semata-mata melalui akaun Windowsnya. Mod ini kadang-kadang dirujuk sebagai keselamatan bersepadu kerana kebergantungan SQL Server pada Windows untuk pengesahan.

Mod pengesahan campuran membolehkan penggunaan kelayakan Windows tetapi menambah mereka dengan akaun pengguna SQL Server tempatan yang pentadbir membuat dan mengekalkan dalam SQL Server. Nama pengguna dan kata laluan pengguna disimpan dalam SQL Server, dan pengguna mesti disahkan semula setiap kali mereka menyambungkannya.

Memilih Mod Pengesahan

Cadangan amalan terbaik Microsoft adalah menggunakan mod pengesahan Windows apabila mungkin. Manfaat utama ialah penggunaan mod ini membolehkan anda memusatkan pentadbiran akaun untuk seluruh perusahaan anda di satu tempat: Active Directory. Ini secara dramatik mengurangkan kemungkinan kesilapan atau pengawasan. Kerana identiti pengguna disahkan oleh Windows, pengguna pengguna Windows dan akaun kumpulan tertentu boleh dikonfigurasi untuk log masuk ke SQL Server. Tambahan lagi, pengesahan Windows menggunakan penyulitan untuk mengesahkan pengguna SQL Server.

Pengesahan SQL Server, sebaliknya, membolehkan nama pengguna dan kata laluan diluluskan sepanjang rangkaian, menjadikannya kurang selamat. Mod ini boleh menjadi pilihan yang baik, bagaimanapun, jika pengguna menyambungkan dari domain yang tidak dipercayai dan apabila aplikasi Internet kurang mungkin digunakan, seperti ASP.NET.

Sebagai contoh, pertimbangkan senario di mana pentadbir pangkalan data yang dipercayai meninggalkan organisasi anda pada istilah yang tidak bersahabat. Jika anda menggunakan mod pengesahan Windows, membatalkan akses pengguna itu berlaku secara automatik apabila anda melumpuhkan atau mengalih keluar akaun Direktori Aktif DBA.

Sekiranya anda menggunakan mod pengesahan bercampur, anda bukan sahaja perlu melumpuhkan akaun Windows DBA, tetapi anda juga perlu menyusun penyenaraian pengguna setempat pada setiap pelayan pangkalan data untuk memastikan tiada akaun setempat yang wujud di mana DBA mungkin mengetahui kata laluan. Itu banyak kerja!

Ringkasnya, mod yang anda pilih akan menjejaskan kedua-dua tahap keselamatan dan kemudahan penyelenggaraan pangkalan data organisasi anda.