Condividi tramite


Sicurezza dell'integrazione con CLR

Si applica a:SQL Server

Il modello di sicurezza dell'integrazione di SQL Server con .NET Framework Common Language Runtime (CLR) gestisce e protegge l'accesso tra diversi tipi di oggetti CLR e non CLR in esecuzione all'interno di SQL Server. Questi oggetti possono essere chiamati da un'istruzione Transact-SQL o da un altro oggetto CLR in esecuzione nel server. Le chiamate tra gli oggetti vengono definite collegamenti. I tipi di controllo della sicurezza eseguiti su questi oggetti dipendono dai tipi di collegamento utilizzati.

Il modello di sicurezza dell'integrazione con CLR presenta gli obiettivi seguenti:

  • Per impostazione predefinita, l'esecuzione di codice utente gestito in SQL Server non deve compromettere l'integrità e la stabilità di SQL Server. L'esecuzione di operazioni che potrebbero compromettere l'affidabilità di SQL Server deve essere protetta da autorizzazioni di alto livello appropriate.

  • Il codice utente gestito non deve ottenere l'accesso non autorizzato ai dati utente o ad altro codice utente nel database. Il codice definito dall'utente deve essere eseguito nel contesto di sicurezza della sessione utente che lo ha richiamato e con i privilegi corretti per il contesto di sicurezza in questione.

  • È necessario effettuare controlli per limitare al codice utente l'accesso alle risorse esterne al server consentendone l'utilizzo esclusivamente per il calcolo e l'accesso ai dati locali.

  • Il codice definito dall'utente non deve essere in grado di ottenere l'accesso non autorizzato alle risorse di sistema grazie all'esecuzione nel processo di SQL Server.

SQL Server ora integra il modello di sicurezza basato sull'utente di SQL Server con il modello di sicurezza basato sull'accesso al codice di CLR. Alcuni dei vantaggi di questo approccio combinato alla sicurezza vengono esaminati nella presente sezione.

In questa sezione

Nella tabella seguente sono elencati gli articoli di questa sezione.

Articolo Descrizione
di sicurezza dall'accesso di codice a CLR Viene illustrato il modello di sicurezza dall'accesso al codice (CAS) per il codice gestito
attributi di protezione host e di programmazione dell'integrazione CON CLR Fornisce informazioni sui valori dell'attributo di protezione host (HPA) non consentiti negli assembly SAFE e EXTERNAL_ACCESS
rappresentazione e credenziali per le connessioni Viene descritto il modo in cui parti di codice utente possono chiamare tra loro in SQL Server
Domini applicazione e sicurezza per l'integrazione con CLR Descrive il modo in cui gli assembly vengono caricati nei domini applicazione