Peran Server-Level
SQL Server menyediakan peran tingkat server untuk membantu Anda mengelola izin di server. Peran ini adalah prinsip keamanan yang mengelompokkan prinsipal lain. Peran tingkat server adalah seluruh server dalam cakupan izinnya. (Peran seperti grup dalam sistem operasi Windows.)
Peran server tetap disediakan untuk kenyamanan dan kompatibilitas mundur. Tetapkan izin yang lebih spesifik jika memungkinkan.
SQL Server menyediakan sembilan peran server tetap. Izin yang diberikan ke peran server tetap tidak dapat diubah. Dimulai dengan SQL Server 2012, Anda dapat membuat peran server yang ditentukan pengguna dan menambahkan izin tingkat server ke peran server yang ditentukan pengguna.
Anda dapat menambahkan prinsipal tingkat server (SQL Server login, akun Windows, dan grup Windows) ke dalam peran tingkat server. Setiap anggota peran database tetap dapat menambahkan pengguna lain ke peran yang sama. Anggota peran server yang ditentukan pengguna tidak dapat menambahkan prinsipal server lain ke peran tersebut.
Peran Server-Level Tetap
Tabel berikut menunjukkan peran tingkat server tetap dan kemampuannya.
Peran tingkat server tetap | Deskripsi |
---|---|
sysadmin | Anggota peran server tetap sysadmin dapat melakukan aktivitas apa pun di server. |
serveradmin | Anggota peran server tetap serveradmin dapat mengubah opsi konfigurasi di seluruh server dan mematikan server. |
securityadmin | Anggota peran server tetap securityadmin mengelola login dan propertinya. Mereka dapat MEMBERIKAN, MENOLAK, dan MENCABUT izin tingkat server. Mereka juga dapat MEMBERIKAN, MENOLAK, dan MENCABUT izin tingkat database jika mereka memiliki akses ke database. Selain itu, mereka dapat mengatur ulang kata sandi untuk login SQL Server. ** Catatan Keamanan ** Kemampuan untuk memberikan akses ke Mesin Database dan untuk mengonfigurasi izin pengguna memungkinkan admin keamanan menetapkan sebagian besar izin server. Peran securityadmin harus diperlakukan setara dengan peran.sysadmin |
processadmin | Anggota peran server tetap processadmin dapat mengakhiri proses yang berjalan dalam instans SQL Server. |
setupadmin | Anggota peran server tetap setupadmin dapat menambahkan dan menghapus server tertaut dengan menggunakan pernyataan Transact-SQL. (keanggotaan sysadmin diperlukan saat menggunakan Management Studio.) |
bulkadmin | Anggota peran server tetap bulkadmin dapat menjalankan pernyataan INSERT MASSAL. |
diskadmin | Peran server tetap diskadmin digunakan untuk mengelola file disk. |
dbcreator | Anggota peran server tetap dbcreator dapat membuat, mengubah, menghilangkan, dan memulihkan database apa pun. |
publik | Setiap login SQL Server merupakan milik peran server publik. Ketika prinsipal server belum diberikan atau ditolak izin tertentu pada objek yang dapat diamankan, pengguna mewarisi izin yang diberikan kepada publik pada objek tersebut. Hanya tetapkan izin publik pada objek apa pun saat Anda ingin objek tersedia untuk semua pengguna. Anda tidak dapat mengubah keanggotaan di publik. Catatan: publik diimplementasikan secara berbeda dari peran lainnya. Namun, izin dapat diberikan, ditolak, atau dicabut dari publik. |
Izin Peran Server Tetap
Setiap peran server tetap memiliki izin tertentu yang ditetapkan untuknya. Untuk bagan izin yang ditetapkan ke peran server, lihat Server Tetap Mesin Database dan Peran Database Tetap.
Penting
Izinnya CONTROL SERVER
mirip tetapi tidak identik dengan sysadmin
peran server tetap. Izin tidak menyiratkan keanggotaan peran dan keanggotaan peran tidak memberikan izin. (Misalnya CONTROL SERVER
, tidak menyiratkan keanggotaan dalam sysadmin
peran server tetap.) Namun, terkadang dimungkinkan untuk meniru antara peran dan izin yang setara. Sebagian besar DBCC
perintah dan banyak prosedur sistem memerlukan keanggotaan dalam sysadmin
peran server tetap. Untuk daftar prosedur tersimpan sistem 171 yang memerlukan sysadmin
keanggotaan, lihat posting blog berikut oleh Andreas Wolter CONTROL SERVER vs. sysadmin/sa: izin, prosedur sistem, DBCC, pembuatan skema otomatis dan eskalasi hak istimewa - peringatan.
Izin Server-Level
Hanya izin tingkat server yang dapat ditambahkan ke peran server yang ditentukan pengguna. Untuk mencantumkan izin tingkat server, jalankan pernyataan berikut. Izin tingkat server adalah:
SELECT * FROM sys.fn_builtin_permissions('SERVER') ORDER BY permission_name;
Untuk informasi selengkapnya tentang izin, lihat Izin (Mesin Database) dan sys.fn_builtin_permissions (Transact-SQL).
Bekerja dengan Peran Server-Level
Tabel berikut menjelaskan perintah, tampilan, dan fungsi yang bisa Anda gunakan untuk bekerja dengan peran tingkat server.
Fitur | Jenis | Deskripsi |
---|---|---|
sp_helpsrvrole (T-SQL) | Metadata | Mengembalikan daftar peran tingkat server. |
sp_helpsrvrolemember (T-SQL) | Metadata | Mengembalikan informasi tentang anggota peran tingkat server. |
sp_srvrolepermission (T-SQL) | Metadata | Menampilkan izin peran tingkat server. |
IS_SRVROLEMEMBER (T-SQL) | Metadata | Menunjukkan apakah login SQL Server adalah anggota peran tingkat server yang ditentukan. |
sys.server_role_members (T-SQL) | Metadata | Mengembalikan satu baris untuk setiap anggota dari setiap peran tingkat server. |
sp_addsrvrolemember (T-SQL) | Perintah | Menambahkan login sebagai anggota peran tingkat server. Dihentikan. Gunakan ALTER SERVER ROLE sebagai gantinya. |
sp_dropsrvrolemember (Transact-SQL) | Perintah | Menghapus login SQL Server atau pengguna atau grup Windows dari peran tingkat server. Dihentikan. Gunakan ALTER SERVER ROLE sebagai gantinya. |
CREATE SERVER ROLE (Transact-SQL) | Perintah | Membuat peran server yang ditentukan pengguna. |
ALTER SERVER ROLE (T-SQL) | Perintah | Mengubah keanggotaan peran server atau mengubah nama peran server yang ditentukan pengguna. |
HILANGKAN PERAN SERVER (Transact-SQL) | Perintah | Menghapus peran server yang ditentukan pengguna. |
IS_SRVROLEMEMBER (T-SQL) | Fungsi | Menentukan keanggotaan peran server. |
Lihat juga
Peran Tingkat Database
Tampilan Katalog Keamanan (Transact-SQL)
Fungsi Keamanan (T-SQL)
Mengamankan SQL Server
IZIN Utama Server GRANT (Transact-SQL)
MENCABUT Izin Utama Server (Transact-SQL)
DENY Server Principal Permissions (Transact-SQL)
Membuat Peran Server