Koos SQLClient 4.0.0 väljaandmisega on ühenduse krüpteerimise vaikeväärtus muutunud valest väärtusest "false" väärtuseks "true". See samm tähendab olulist sammu parema turvalisuse suunas, eriti arvestades pilveandmebaaside kasvavat kasutamist. See tagasiühilduvust rikkuv muudatus nõuab siiski muudatust olemasolevas koodibaasis, eriti vanade ühendussõnade haldamisel.
Muutuse tagajärjed
Selle muudatuse otsene mõju on see, et kõik ühendused peavad pärast migratsiooni olema varustatud SQL-sertifikaatidega. Kui 'Encrypt' on seatud väärtusele 'true', püüab ühendusstring luua turvalist SSL/TLS krüpteeritud ühendust SQL Serveriga.
Kui serverile ei ole paigaldatud kehtivat SSL-sertifikaati või kui klient ei usalda sertifikaati, ebaõnnestub ühenduskatse. See tähendab, et kõigil SQL-serveritel peavad olema kehtivad SSL-sertifikaadid ja kõik kliendid peavad neid sertifikaate usaldama, et ühendused oleksid edukad.
SSL sertifikaatide vältimine 'Encrypt=false' abil
Selleks, et vältida SSL-sertifikaatide vajadust, võib tekkida kiusatus seada 'Encrypt' väärtuseks 'false' ühenduse stringis. See võimaldaks luua ühendusi ilma krüpteerimiseta, nagu see oli enne uuendust.
See võib aga põhjustada märkimisväärseid turvariske. Kui ühendus ei ole krüpteeritud, saadetakse kõik kliendi ja serveri vahel edastatavad andmed tavalises tekstis. See hõlmab potentsiaalselt tundlikke andmeid, nagu kasutaja volitused, isikuandmed või finantsandmed. Igaüks, kellel on juurdepääs võrgule, võib neid andmeid pealtkuulata ja lugeda, mis võib viia andmekaitserikkumiste ja muude turvaintsidentideni.
Parimad tavad vanade ühendusstringide käsitlemiseks
Kui teil on olemasolev koodibaas, mille ühendusstringe on seadistatud 'Encrypt=false', on oluline muuta neid, et need vastaksid uuele vaikimisi seadistusele. Siin on samm-sammuline juhend, kuidas seda teha:
-
Paigaldage SSL sertifikaadid: Parim ja kõige turvalisem viis selle muudatuse tegemiseks on paigaldada oma SQL-serveritele SSL-sertifikaadid. Kui sertifikaat on paigaldatud ja õigesti konfigureeritud, saab ühendusi krüpteerida ilma muudatusteta teie rakenduse ühendussõnades.
-
Usalduse seadete uuendamine: Veenduge, et kliendid usaldavad SQL Serverile paigaldatud sertifikaate. See hõlmab tavaliselt serveri sertifikaadi importimist kliendi usaldusväärsesse juursertifikaatide hoidlasse.
-
Update Connection Stringid: Kui sertifikaatide paigaldamine ei ole kohe võimalik, võite oma ühendusstringides määrata 'TrustServerCertificate=true'. See ütleb kliendile, et ta usaldaks serveri sertifikaati ilma seda valideerimata. Kuid pidage meeles, et see võib jätta teid haavatavaks "man-in-the-middle" rünnakutele ja seda tuleks kasutada ainult ajutise lahendusena või kontrollitud keskkonnas.
-
Kavandage järkjärguline üleminek: Kui teie rakenduses on palju ühendussõnu või kui te töötate suures organisatsioonis, võib üleminek korraga olla keeruline. Sellistel juhtudel planeerige järkjärguline üleminek. Tehke kindlaks rakenduse kriitilised valdkonnad, kus käideldakse tundlikke andmeid, ja seada prioriteediks nende ühendussõnumite uuendamine esimesena.
-
Kaitske oma võrk: Kui peate tingimata kasutama 'Encrypt=false' või 'TrustServerCertificate=true', siis veenduge, et teie võrk on võimalikult turvaline. Kasutage tulemüüre, VPN-i või muid turvameetmeid, et vähendada andmete pealtkuulamise ohtu.
Kokkuvõte
Kuigi üleminek vaikimisi krüpteerimisele "Encrypt=true" SQLClient 4.0.0-s võib tunduda hirmutav, eriti neile, kellel on palju vanu ühendussõnu, on see vajalik samm parema turvalisuse tagamiseks. Järgides parimaid tavasid ja kavandades korraliku üleminekustrateegia, saate tagada, et teie rakendus jätkab korrektselt toimimist, saades samal ajal kasu krüpteeritud ühenduste suuremast turvalisusest.