Condividi tramite


Elenco di controllo:Limitazione dell'accesso ai dati

Il presente elenco di controllo consente di verificare la modalità con cui limitare l'accesso ai dati nell'organizzazione. Inoltre, può essere utilizzato per controllare periodicamente il modo in cui gli utenti accedono alle informazioni archiviate nel Motore di database di SQL Server.

Accesso all'istanza di SQL Server

Gli elementi indicati di seguito sono correlati all'intera istanza del Motore di database.

...

Descrizione

Icona di campo booleano
È stato concesso l'accesso tramite i gruppi di Windows per la maggior parte degli account di accesso?

Suggerimento La configurazione dell'accesso al Motore di database tramite i gruppi di Windows facilita l'amministrazione e la gestione dell'accesso. Per ulteriori informazioni sugli account di accesso, vedere Entità (Motore di database).

Icona di campo booleano
Gli account di accesso obsoleti o non necessari sono stati rimossi dal Motore di database?

Suggerimento Questa operazione potrebbe richiedere un controllo manuale periodico. L'abilitazione dell'accesso eseguito principalmente tramite i gruppi di Windows può facilitare questa attività.

Icona di campo booleano
È stato implementato il principio del privilegio minimo?

Suggerimento A entità quali account di accesso, utenti e ruoli devono essere concesse solo autorizzazioni per gli oggetti di database a cui devono accedere per il completamento del lavoro. Non consentire agli utenti normali di eseguire la connessione utilizzando un account amministratore, ad esempio sa, né consentire la connessione della pagina Web, dell'applicazione personalizzata o del pacchetto SSIS tramite tale account.

Icona di campo booleano
Per visualizzare i metadati di sistema senza conferire autorizzazioni aggiuntive, è stata concessa l'autorizzazione VIEW DEFINITION in modo selettivo a livello di oggetto, schema, database o server?

Suggerimento Per ulteriori informazioni, vedere GRANT (Transact-SQL).

Icona di campo booleano
I server remoti sono stati sostituiti con quelli collegati?

Suggerimento Per ulteriori informazioni, vedere Configurazione di server remoti e Collegamento di server.

Icona di campo booleano
Se l'autenticazione pass-through a un server collegato è necessaria, la delega è stata vincolata?

Suggerimento Per ulteriori informazioni, vedere sp_addlinkedsrvlogin (Transact-SQL).

Icona di campo booleano
Le query ad hoc sono state disabilitate tramite server, se necessario?

Suggerimento Per ulteriori informazioni, vedere Opzione Ad Hoc Distributed Queries.

Gestione dell'identità utente

Gli elementi indicati di seguito sono correlati alle impostazioni di ciascun database.

...

Descrizione

Icona di campo booleano
L'account utente guest è disabilitato in tutti i database a meno che non venga richiesto per gli utenti anonimi?

Suggerimento Disabilitare gli account utilizzando SQL Server Management Studio o Transact-SQL.

Icona di campo booleano
Gli utenti hanno accesso solo ai database necessari?

Suggerimento Questa operazione potrebbe richiedere un controllo manuale periodico. L'abilitazione dell'accesso eseguito principalmente tramite ruoli di SQL Server può facilitare questa attività. Per ulteriori informazioni, vedere Ruoli a livello di server.

Icona di campo booleano
È stato concesso l'accesso tramite ruoli di SQL Server alla maggior parte degli utenti?

Suggerimento La configurazione dell'accesso tramite i ruoli del server e del database facilita la gestione dell'accesso. Per ulteriori informazioni sui ruoli, vedere Ruoli a livello di database.

Icona di campo booleano
In SQL Server Agent vengono utilizzate credenziali per l'esecuzione di passaggi processo che richiedono privilegi specifici anziché per modificare i privilegi dell'account del servizio SQL Server Agent?

Suggerimento Per ulteriori informazioni, vedere Credenziali (Motore di database).

Icona di campo booleano
Se un utente di SQL Server Agent deve eseguire un processo che richiede credenziali di Windows differenti, a queste ultime è stato assegnato un account proxy che dispone di autorizzazioni sufficienti per il completamento dell'attività?

Suggerimento Per ulteriori informazioni, vedere Procedura: Creazione di un proxy (SQL Server Management Studio).

Icona di campo booleano
L'accesso a oggetti di database viene incapsulato all'interno di moduli quali stored procedure, funzioni, trigger o assembly?

Suggerimento La limitazione dell'accesso a moduli predefiniti rende più difficile l'esecuzione di codice arbitrario da parte di un utente malintenzionato. Per ulteriori informazioni, vedere Informazioni sulle stored procedure.

Icona di campo booleano
Nei moduli è stato impostato in modo esplicito un contesto di esecuzione anziché l'utilizzo del contesto predefinito?

Suggerimento Per ulteriori informazioni, vedere Utilizzo di EXECUTE AS nei moduli.

Icona di campo booleano
I moduli vengono firmati per inibire l'alterazione?

Suggerimento Per ulteriori informazioni, vedere Firma del modulo (Motore di database).

Icona di campo booleano
Al posto dei ruoli applicazione viene utilizzato USER WITHOUT LOGIN?

Suggerimento Per ulteriori informazioni, vedere il documento relativo alle procedure consigliate sulle attività operative e amministrative per la sicurezza di SQL Server 2005.

Icona di campo booleano
EXECUTE AS viene utilizzato al posto di SETUSER?

Suggerimento Per ulteriori informazioni, vedere Confronto tra EXECUTE AS e SETUSER.

Icona di campo booleano
I ruoli applicazione sono stati sostituiti con EXECUTE AS?

Suggerimento Utilizzare EXECUTE AS … WITH NO REVERT, quando possibile. Utilizzare l'opzione EXECUTE AS … WITH COOKIE durante la nidificazione delle modifiche di identità. Per ulteriori informazioni, vedere EXECUTE AS (Transact-SQL).

Accesso a oggetti

Gli elementi indicati di seguito sono correlati all'accesso a oggetti di database.

...

Descrizione

Icona di campo booleano
Ai ruoli public del server e del database sono state concesse, se disponibili, poche autorizzazioni?

Suggerimento Tutti gli account di accesso e gli utenti sono membri dei ruoli public e non possono essere rimossi. Questi ruoli devono disporre di autorizzazioni molto limitate.

Icona di campo booleano
Gli oggetti di database simili sono raggruppati insieme nello stesso schema?

Suggerimento Creare schemi in base ai requisiti aziendali e utilizzare questi schemi personalizzati al posto dello schema dbo. Per ulteriori informazioni, vedere Schemi (Motore di database).

Icona di campo booleano
La sicurezza degli oggetti di database viene gestita impostando la proprietà e le autorizzazioni a livello di schema?

Suggerimento Per ulteriori informazioni, vedere GRANT (autorizzazioni per schemi) (Transact-SQL).

Icona di campo booleano
Gli schemi dispongono di proprietari distinti oppure sono tutti di proprietà di dbo?

Suggerimento Quando tutti gli schemi dispongono dello stesso proprietario, i controlli delle autorizzazioni necessari potrebbero essere ignorati dal concatenamento della proprietà. Per ulteriori informazioni, vedere Catene di proprietà.

Icona di campo booleano
Viene utilizzata la firma di codice procedurale se sono necessari privilegi aggiuntivi per la procedura?

Suggerimento Per ulteriori informazioni, vedere Firma del modulo (Motore di database).

Icona di campo booleano
L'opzione di database TRUSTWORTHY è impostata su OFF?

Suggerimento Se è impostata su ON, i moduli di database (ad esempio funzioni definite dall'utente o stored procedure) in cui viene utilizzato un contesto di rappresentazione possono accedere a risorse esterne al database. Utilizzare l'istruzione ALTER DATABASE per modificare l'impostazione TRUSTWORTHY. Per ulteriori informazioni, vedere Proprietà di database TRUSTWORTHY.

Icona di campo booleano
Nei moduli sono previsti passaggi per impedire attacchi SQL injection?

Suggerimento Per ulteriori informazioni, vedere Attacco intrusivo nel codice SQL.

Icona di campo booleano
Se è consentito l'accesso ad hoc al database invece di incapsulare l'accesso all'interno di moduli, nelle applicazioni vengono prese misure per impedire attacchi SQL injection?

Suggerimento Per ulteriori informazioni, vedere i collegamenti riportati di seguito.

Controllo dell'accesso

...

Descrizione

Icona di campo booleano
Il controllo è specifico dello scenario?

Suggerimento Bilanciare la necessità di controlli con l'overhead della generazione di dati aggiuntivi. In SQL Server Audit è possibile abilitare il controllo di un singolo database e per DML a oggetti specifici. Per ulteriori informazioni, vedere Informazioni su SQL Server Audit.

Icona di campo booleano
Il controllo accessi è configurato per mantenere un record di account di accesso non riusciti?

Suggerimento Configurare il controllo accessi utilizzando Proprietà server (pagina Sicurezza) in Management Studio.

Icona di campo booleano
Vengono controllati sia gli account di accesso riusciti sia quelli non riusciti se si archiviano dati altamente sensibili?

Suggerimento Per ulteriori informazioni, vedere Classe di evento Audit Login e Classe di evento Audit Login Failed.

Icona di campo booleano
Vengono controllati eventi DDL, DML e specifici del server utilizzando gli eventi di traccia o di controllo di SQL Server?

Suggerimento Per ulteriori informazioni, vedere Informazioni su SQL Server Audit, Informazioni sulle notifiche degli eventi, Eventi DDL e Eventi di traccia utilizzabili con le notifiche degli eventi.

Icona di campo booleano
Viene utilizzato il provider WMI per ricevere un avviso relativo a eventi di emergenza?

Suggerimento Per ulteriori informazioni, vedere Concetti relativi al provider WMI per eventi del server.

Icona di campo booleano
L'abilitazione del controllo C2 o della conformità criteri comuni viene effettuata solo se necessario?

Suggerimento Eseguire la configurazione in base alle esigenze aziendali. Abilitare il controllo C2 o la conformità criteri comuni solo se appropriato per l'azienda. Vedere Certificazione con criteri comuni.