Opzione di configurazione del server clr enabledclr enabled Server Configuration Option

QUESTO ARGOMENTO SI APPLICA A:sìSQL Server (a partire dalla versione 2008)noDatabase SQL di AzurenoAzure SQL Data Warehouse noParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Utilizzare l'opzione clr enabled per specificare se gli assembly utente possono essere eseguiti in SQL ServerSQL Server.Use the clr enabled option to specify whether user assemblies can be run by SQL ServerSQL Server. L'opzione clr enabled restituisce i valori riportati di seguito:The clr enabled option provides the following values:

ValoreValue DescrizioneDescription
00 Esecuzione degli assembly non consentita in SQL ServerSQL Server.Assembly execution not allowed on SQL ServerSQL Server.
11 Esecuzione degli assembly consentita in SQL ServerSQL Server.Assembly execution allowed on SQL ServerSQL Server.

Solo WOW64.WOW64 only. Riavviare i server WOW64 per rendere effettive le modifiche alle impostazioni.Restart WOW64 servers to effect the settings changes. Per altri tipi di server il riavvio non è necessario.No restart required for other server types.

Quando si esegue RECONFIGURE e il valore dell'opzione clr enabled viene modificato da 1 a 0, vengono scaricati immediatamente tutti i domini dell'applicazione contenenti assembly utente.When you run RECONFIGURE, and the run value of the clr enabled option is changed from 1 to 0, all application domains containing user assemblies are immediately unloaded.

Esecuzione CLR (Common Language Runtime) non supportata quando è attivo il lightweight pooling . Disabilitare una delle due opzioni: "clr enabled" o "lightweight pooling".Common language runtime (CLR) execution is not supported under lightweight pooling Disable one of two options: "clr enabled" or "lightweight pooling. Le caratteristiche che si basano su CLR e che non funzionano correttamente in modalità fiber sono il tipo di dati hierarchy , la replica e la gestione basata su criteri.Features that rely upon CLR and that do not work properly in fiber mode include the hierarchy data type, replication, and Policy-Based Management.

Avviso

CLR usa la Sicurezza dall'accesso di codice (CAS, Code Access Security) in .NET Framework, non più supportata come limite di sicurezza.CLR uses Code Access Security (CAS) in the .NET Framework, which is no longer supported as a security boundary. Un assembly CLR creato con PERMISSION_SET = SAFE potrebbe essere in grado di accedere alle risorse di sistema esterne, chiamare codice non gestito e acquisire privilegi sysadmin.A CLR assembly created with PERMISSION_SET = SAFE may be able to access external system resources, call unmanaged code, and acquire sysadmin privileges. A partire da SQL Server vNextSQL Server vNext, viene introdotta un'opzione sp_configure denominata clr strict security per migliorare la sicurezza degli assembly CLR.Beginning with SQL Server vNextSQL Server vNext, an sp_configure option called clr strict security is introduced to enhance the security of CLR assemblies. clr strict security è abilitata per impostazione predefinita e considera gli assembly CLR SAFE e UNSAFE come se fossero contrassegnati EXTERNAL_ACCESS.clr strict security is enabled by default, and treats SAFE and EXTERNAL_ACCESS assemblies as if they were marked UNSAFE. È possibile disabilitare l'opzione clr strict security per la compatibilità con le versioni precedenti, ma questa operazione è sconsigliata.The clr strict security option can be disabled for backward compatibility, but this is not recommended. Microsoft consiglia che tutti gli assembly siano firmati con un certificato o una chiave asimmetrica con un account di accesso corrispondente che disponga dell'autorizzazione UNSAFE ASSEMBLY nel database master.Microsoft recommends that all assemblies be signed by a certificate or asymmetric key with a corresponding login that has been granted UNSAFE ASSEMBLY permission in the master database. Gli amministratori SQL ServerSQL Server possono anche aggiungere assembly a un elenco di assembly, considerato attendibile dal motore di database. SQL ServerSQL Server administrators can also add assemblies to a list of assemblies, which the Database Engine should trust. Per altre, vedere sys.sp_add_trusted_assembly.For more information, see sys.sp_add_trusted_assembly.

EsempioExample

Nell'esempio seguente viene prima visualizzata l'impostazione corrente dell'opzione clr enabled, quindi abilitata l'opzione impostandone il valore su 1.The following example first displays the current setting of the clr enabled option and then enables the option by setting the option value to 1. Per disabilitare l'opzione, impostare il valore su 0.To disable the option, set the value to 0.

EXEC sp_configure 'clr enabled';  
EXEC sp_configure 'clr enabled' , '1';  
RECONFIGURE;    

Vedere ancheSee Also

Opzione di configurazione del server lightweight pooling lightweight pooling Server Configuration Option
Opzioni di configurazione del server (SQL Server) Server Configuration Options (SQL Server)
sp_configure (Transact-SQL) sp_configure (Transact-SQL)
Opzione di configurazione del server lightweight poolinglightweight pooling Server Configuration Option