Bagikan melalui


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;