Prinsipal (Mesin Database)
Berlaku untuk: SQL Server 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. 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 dbo
akun 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
.
Tugas Terkait
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