Prinsipal (Mesin Database)

Berlaku untuk: SQL Server (semua versi yang didukung) Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform 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. Ruang lingkup pengaruh prinsipal tergantung pada cakupan definisi prinsipal: Windows, server, database; dan apakah perwakilan tidak dapat divisialkan 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.

prinsipal tingkat SQL Server

  • SQL Server Login autentikasi
  • Login autentikasi Windows untuk pengguna Windows
  • Masuk autentikasi Windows untuk grup Windows
  • Login autentikasi Azure Active Directory untuk pengguna AD
  • Login autentikasi Azure Active Directory untuk grup AD
  • Peran Server

Prinsipal tingkat database

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

sa Masuk

Login SQL Server sa adalah prinsipal tingkat server. Secara default, instans dibuat saat instans diinstal. Dimulai pada SQL Server 2005 (9.x), database default sa adalah master. Ini adalah perubahan perilaku dari versi SQL Server sebelumnya. Login sa adalah anggota peran sysadmin tingkat server tetap. Log sa masuk 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 milik 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 tentang yang dapat diamankan tersebut. 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 (Transact-SQL)
sys.server_principals (Transact-SQL)
sys.sql_logins (T-SQL)
sys.database_role_members (Transact-SQL)
Peran Tingkat Server
Peran Tingkat Database