Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Distribuzione di un certificato per la connessione crittografata SQL Server

Introduzione

L'anno scorso abbiamo richiesto di garantire connessioni crittografate alle nostre istanze di SQL Server. Prima non pensavamo fosse necessario:tutte le nostre istanze erano accessibili internamente dai servizi applicativi. Tuttavia, le connessioni sicure proteggono l'istanza e i client dagli attacchi come man-in-the-middle, quindi l'abbiamo fatto.

La crittografia della connessione è diversa da Transparent Data Encryption, ma in entrambi i casi è necessario un certificato. In questo articolo viene descritta la procedura di configurazione di una connessione crittografata per le istanze di SQL Server.

Configurazione dello snap-in del certificato in MMC

Un certificato è un documento con firma digitale contenente chiavi pubbliche e private che crittografano le connessioni. Le chiavi pubbliche e private sono una "Coppia di chiavi":la chiave pubblica crittografa i dati ed è solo la chiave privata che può decrittografarli.

I certificati vengono emessi da un'autorità di certificazione, un'entità di cui si fidano sia il server che il client. Nel nostro caso, abbiamo generato un certificato dal server che ospita SQL Server.

Iniziamo questo processo avviando Microsoft Management Console (mmc.exe) .

Quando MMC viene avviato, andiamo a File> Aggiungi e rimuovi snap-in... (Figura 1). Qui aggiungiamo lo snap-in Gestore certificati alla nostra console per gestire i certificati sul server. Nota che ci sono altri modi per arrivare a questo punto.

Vogliamo gestire i certificati dal nostro account del computer in modo tale che altri amministratori non abbiano problemi con le autorizzazioni quando devono gestire anche i certificati (Figura 2).

In questo articolo ci occupiamo della gestione dei certificati sul computer locale in cui è installata la nostra istanza di SQL Server (Figura 3).

Una volta completato il processo di creazione dello snap-in del certificato, possiamo utilizzarlo.

Inizia selezionando Tutte le attività> Richiedi nuovo certificato :

Registrazione di un certificato MMC

L'azione della Figura 5 avvia una procedura guidata:la eseguiremo rapidamente. I dettagli sono più rilevanti per l'amministratore di Windows, ma la cosa fondamentale è ottenere un certificato valido che possa essere utilizzato da SQL Server.

Verifica le condizioni necessarie:

Seleziona un criterio di registrazione e il tipo di certificato desiderato. Nel nostro caso, abbiamo selezionato la politica configurata dal nostro amministratore di dominio per scopi come questo. Potresti parlare con il tuo amministratore di dominio per definire l'opzione migliore nel tuo ambiente.

La registrazione del certificato è il processo di richiesta di un certificato digitale a un'autorità di certificazione. In alcuni ambienti, la CA fa parte dell'infrastruttura a chiave pubblica.

Configurazione di SQL Server

Ora, quando abbiamo il certificato, andiamo su SQL Server e lo configuriamo per utilizzare quel certificato.

  • Apri SQL Server Configuration Manager e vai su Configurazione di rete di SQL Server> Protocolli per MS SQL Server .
  • Fai clic con il pulsante destro del mouse su questo elemento e seleziona Proprietà dal menu a tendina (Figura 11):
  • Nelle Proprietà finestra, seleziona il Certificato scheda. Se hai eseguito correttamente la registrazione del certificato, dovresti vederlo elencato nel menu a discesa denominato Certificato (Figura 12). In questo modo, associamo questo certificato all'istanza di SQL Server. Nota che possiamo anche vedere i dettagli del certificato in Gestione configurazione SQL Server.
  • Una volta terminata l'applicazione del certificato valido, esaminiamo i Flag scheda e imposta la Crittografia forzata segnala a SI . Garantisce che tutte le connessioni a SQL Server siano crittografate.

Il protocollo crittografico utilizzato da SQL Server per la crittografia delle connessioni dipenderà dalla configurazione del sistema operativo. Quindi, dovresti riavviare l'istanza di SQL Server. Carica questo nuovo certificato dopo di esso.

Possiamo vedere i dati nel Visualizzatore eventi di Windows, il registro degli errori di SQL Server. Possiamo anche verificare la crittografia delle connessioni con strumenti come Network Monitor di Sys Internals (Figura 14).

Conclusione

Una connessione crittografata è in genere richiesta nelle organizzazioni interessate alla sicurezza. In questo articolo abbiamo condiviso la nostra esperienza su come configurare connessioni crittografate su SQL Server.

Il nostro approccio prevedeva la registrazione di un certificato, l'applicazione di tale certificato a un'istanza di SQL Server e l'abilitazione della crittografia forzata. È essenziale notare che quando imposti Force Encryption su YES in SQL Server, tutti i client che si connettono all'istanza devono utilizzare lo stesso protocollo di crittografia.

Riferimenti

  1. Abilita connessioni crittografate
  2. Certificati SQL Server e chiavi asimmetriche