Konfigurasi server: clr diaktifkan
Berlaku untuk: SQL Server
clr enabled
Gunakan opsi untuk menentukan apakah SQL Server dapat menjalankan rakitan pengguna. Opsi ini clr enabled
menyediakan nilai berikut:
Nilai | Deskripsi |
---|---|
0 |
Eksekusi rakitan tidak diizinkan di SQL Server. |
1 |
Eksekusi rakitan diizinkan di SQL Server. |
Hanya untuk WOW64: mulai ulang server WOW64 untuk menerapkan perubahan ini. Tidak diperlukan mulai ulang untuk jenis server lainnya.
Saat Anda menjalankan RECONFIGURE
, dan nilai clr enabled
eksekusi opsi diubah dari 1
ke 0
, semua domain aplikasi yang berisi rakitan pengguna segera dibongkar.
Batasan
Eksekusi runtime bahasa umum (CLR) tidak didukung di bawah pengumpulan ringan
Nonaktifkan salah satu dari dua opsi: clr enabled
atau lightweight pooling
. Fitur yang mengandalkan CLR dan yang tidak berfungsi dengan baik dalam mode serat termasuk jenis data hierarkis , fungsi, FORMAT
replikasi, dan Manajemen Berbasis Kebijakan. Untuk informasi selengkapnya, lihat Konfigurasi server: pengumpulan ringan.
clr enabled
Meskipun opsi konfigurasi diaktifkan di Azure SQL Database, mengembangkan fungsi pengguna CLR tidak didukung di Azure SQL Database.
Keamanan akses kode tidak lagi didukung
Runtime bahasa umum menggunakan Keamanan Akses Kode (CAS) dalam .NET Framework, yang tidak lagi didukung sebagai batas keamanan. Rakitan CLR yang dibuat dengan PERMISSION_SET = SAFE
mungkin dapat mengakses sumber daya sistem eksternal, memanggil kode yang tidak dikelola, dan memperoleh hak istimewa sysadmin. Di SQL Server 2017 (14.x) dan versi yang lebih baru, sp_configure
opsi, keamanan ketat clr, meningkatkan keamanan rakitan CLR. clr strict security
diaktifkan secara default, dan memperlakukan SAFE
dan EXTERNAL_ACCESS
rakitan seolah-olah ditandai UNSAFE
. Opsi clr strict security
dapat dinonaktifkan untuk kompatibilitas mundur, tetapi tidak disarankan.
Kami menyarankan agar Anda menandatangani semua rakitan dengan sertifikat atau kunci asimetris, dengan login terkait yang telah diberikan UNSAFE ASSEMBLY
izin dalam master
database. Administrator SQL Server juga dapat menambahkan rakitan ke daftar rakitan, yang harus dipercaya oleh Mesin Database. Untuk informasi selengkapnya, lihat sys.sp_add_trusted_assembly.
Contoh
Contoh berikut pertama-tama menampilkan pengaturan clr enabled
opsi saat ini lalu mengaktifkan opsi dengan mengatur nilai opsi ke 1. Untuk menonaktifkan opsi , atur nilai ke 0.
EXEC sp_configure 'clr enabled';
EXEC sp_configure 'clr enabled' , '1';
RECONFIGURE;