Prinsipal (Mesin Database)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)

Prinsipal adalah entitas yang dapat meminta sumber daya SQL Server. Seperti komponen lain dari model otorisasi SQL Server, prinsipal dapat diatur dalam hierarki. Cakupan pengaruh prinsipal tergantung pada cakupan definisi prinsipal: Windows, server, database; dan apakah prinsipal tidak dapat dibagikan atau koleksi. Windows Login adalah contoh prinsipal yang tidak dapat dibagikan, dan Grup Windows adalah contoh prinsipal yang merupakan koleksi. Setiap prinsipal memiliki pengidentifikasi keamanan (SID). Topik ini berlaku untuk semua versi SQL Server, tetapi ada beberapa batasan pada prinsipal tingkat server di SQL Database atau Azure Synapse Analytics.

Catatan

ID Microsoft Entra sebelumnya dikenal sebagai Azure Active Directory (Azure AD).

Prinsipal tingkat SQL Server

  • Masuk autentikasi SQL Server
  • Masuk autentikasi Windows untuk pengguna Windows
  • Masuk autentikasi Windows untuk grup Windows
  • Masuk autentikasi Microsoft Entra untuk pengguna Microsoft Entra
  • Masuk autentikasi Microsoft Entra untuk grup Microsoft Entra
  • Peran Server

Prinsipal tingkat database

  • Pengguna Database (Ada 12 jenis pengguna. Untuk informasi selengkapnya, lihat MEMBUAT PENGGUNA.)
  • Peran Database
  • Peran Aplikasi

sa Masuk

Login SQL Server sa adalah prinsipal tingkat server. Secara default, instans dibuat saat instans diinstal. Dimulai di SQL Server 2005 (9.x), database default sa adalah master. Ini adalah perubahan perilaku dari versi SQL Server yang lebih lama. Login sa adalah anggota sysadmin peran tingkat server tetap. Login sa memiliki semua izin pada server dan tidak dapat dibatasi. Login sa tidak dapat dihilangkan, tetapi dapat dinonaktifkan sehingga tidak ada yang dapat menggunakannya.

dbo User dan dbo Schema

Pengguna dbo adalah prinsipal pengguna khusus di setiap database. Semua administrator SQL Server, anggota sysadmin peran server tetap, sa login, dan pemilik database, memasukkan database sebagai dbo pengguna. Pengguna dbo memiliki semua izin dalam database dan tidak dapat dibatasi atau dihilangkan. dbo singkatan dari pemilik database, tetapi dboakun pengguna tidak sama db_owner dengan peran database tetap, dan db_owner peran database tetap tidak sama dengan akun pengguna yang dicatat sebagai pemilik database.
Pengguna dbo memiliki dbo skema. dbo Skema adalah skema default untuk semua pengguna, kecuali beberapa skema lain ditentukan. dbo Skema tidak dapat dihilangkan.

Peran Server publik dan Peran Database

Setiap login milik public peran server tetap, dan setiap pengguna database termasuk dalam public peran database. Ketika login atau pengguna belum diberikan atau ditolak izin tertentu pada yang dapat diamankan, login atau pengguna mewarisi izin yang diberikan kepada publik pada yang dapat diamankan. Peran public server tetap dan public peran database tetap tidak dapat dihilangkan. Namun Anda dapat mencabut izin dari public peran. Ada banyak izin yang ditetapkan ke public peran secara default. Sebagian besar izin ini diperlukan untuk operasi rutin dalam database; jenis hal-hal yang harus dapat dilakukan semua orang. Berhati-hatilah saat mencabut izin dari login publik atau pengguna, karena akan memengaruhi semua login/pengguna. Umumnya Anda tidak boleh menolak izin ke publik, karena pernyataan tolak mengambil alih pernyataan hibah apa pun yang mungkin Anda buat kepada individu.

INFORMATION_SCHEMA dan sys Pengguna dan Skema

Setiap database menyertakan dua entitas yang muncul sebagai pengguna dalam tampilan katalog: INFORMATION_SCHEMA dan sys. Entitas ini diperlukan untuk penggunaan internal oleh Mesin Database. Mereka tidak dapat dimodifikasi atau dihilangkan.

Login SQL Server berbasis sertifikat

Prinsipal server dengan nama yang diapit oleh tanda hash ganda (##) hanya untuk penggunaan sistem internal. Prinsipal berikut dibuat dari sertifikat saat SQL Server diinstal, dan tidak boleh dihapus.

  • ##MS_SQLResourceSigningCertificate##
  • ##MS_SQLReplicationSigningCertificate##
  • ##MS_SQLAuthenticatorCertificate##
  • ##MS_AgentSigningCertificate##
  • ##MS_PolicyEventProcessingLogin##
  • ##MS_PolicySigningCertificate##
  • ##MS_PolicyTsqlExecutionLogin##

Akun utama ini tidak memiliki kata sandi yang dapat diubah oleh administrator karena didasarkan pada sertifikat yang dikeluarkan untuk Microsoft.

Pengguna tamu

Setiap database menyertakan guest. Izin yang diberikan kepada guest pengguna diwariskan oleh pengguna yang memiliki akses ke database tetapi tidak memiliki akun pengguna dalam database. Pengguna guest tidak bisa dihilangkan, tetapi bisa dinon-fungsikan dengan mencabut ijin SAMBUNGnya. Izin SAMBUNG dapat dicabut dengan mengeksekusi REVOKE CONNECT FROM GUEST;dalam database apa pun selain master atau tempdb.

Untuk informasi tentang mendesain sistem izin, lihat Mulai menggunakan Izin Mesin Database.

Topik berikut disertakan dalam bagian SQL Server Books Online ini:

Lihat Juga

Mengamankan SQL Server
sys.database_principals (T-SQL)
sys.server_principals (T-SQL)
sys.sql_logins (T-SQL)
sys.database_role_members (T-SQL)
Peran Tingkat Server
Peran Tingkat Database