La connessione crittografata a MS-SQL Server è veramente sicura?

12

Introduzione rapida: piccola azienda, risorse MOLTO limitate. Faccio praticamente tutto, compreso il caffè. Sono un programmatore, non un ragazzo della sicurezza. Ecco perché ti chiedo ...

Abbiamo un database MS-SQL 2008 in esecuzione sul nostro server e diverse applicazioni C # che si collegano al database direttamente utilizzando una stringa di connessione come questa

"Server=example.org; Database=SomeDatabase; User Id=dbUser; password=**secret**; Encrypt=YES"

Le applicazioni non vengono eseguite sul server, quindi l'istanza Database è rivolta verso il mondo esterno. Questa configurazione funziona alla grande, ma ho alcune preoccupazioni.

1) Che cosa significa esattamente Encrypt=YES ? L'intera connessione (incluso l'accesso, ecc.) È sicura (supponendo che nessuno possa mettere le mani sulla stringa di connessione)? O dovrei avere serie preoccupazioni? Quali sono queste preoccupazioni (parole chiave apprezzate)?

2) Qual è una buona strategia per distribuire la stringa di connessione?

Per spiegare la seconda domanda: è molto facile connettersi direttamente. La distribuzione della stringa di connessione potrebbe essere sostituita più facilmente di quella di tutte le chiamate al database in un altro canale più sicuro ...

    
posta Martin Booka Weser 29.04.2013 - 14:19
fonte

1 risposta

9

"Connessioni crittografate" a SQL Server utilizza SSL . Questo è quanto di meglio puoi ottenere. Ricorda, tuttavia, che SSL protegge solo la connessione , cioè i dati mentre transita tra il client e SQL Server. Non fa nulla sul modo in cui i dati sono memorizzati sul server. Inoltre non fa nulla per isolare i client connessi l'uno dall'altro; quella parte dipende interamente da SQL Server.

Nella "stringa di connessione", la password è ovviamente la parte sensibile. Ogni client deve avere il proprio account utente e password, in modo che nel caso in cui una password venga compromessa (probabilmente un evento a lungo termine, sfortunatamente), è possibile ripristinare quella specifica password, senza influire sugli altri utenti. Per la distribuzione della password, non inviarla come testo in chiaro su Internet! Il che significa: nessuna email; se fatto come Web, usa HTTPS, non HTTP. In alcuni contesti, potrebbe essere ragionevole scambiare la password con una telefonata.

    
risposta data 29.04.2013 - 14:34
fonte

Leggi altre domande sui tag