Configurați certificatul pentru utilizare cu protocolul SSL

Propriile servicii Web XML sunt depășite. Într-o versiune viitoare a Microsoft SQL Server, această caracteristică va fi eliminată. Evitați utilizarea acestei caracteristici în noile dezvoltări și planificați modificarea aplicațiilor existente în care este aplicată.







Indiferent de modul în care a fost obținut certificatul, acesta trebuie înregistrat pe server. Vă recomandăm să utilizați utilitarul de configurare HTTP (HttpCfg.exe) pentru a înregistra, a interoga și a șterge certificate SSL.

Pentru a înregistra certificatul, executați următoarea comandă:

Un șir al GUID care identifică entitatea care înregistrează certificatul. Este recomandat să creați un șir separat GUID pentru fiecare instanță a SQL Server și să îl utilizați pentru a înregistra toate certificatele pentru această instanță.

Un certificat cerut de SQL Server pentru a comunica cu clienții pe Internet prin SSL poate fi obținut de la autoritatea de certificare (de exemplu, Verisign).

Cu toate acestea, pentru scopuri de testare, puteți crea un certificat special utilizând programul MakeCert.exe. MakeCert.exe face parte din .NET Framework SDK. precum și în platforma SDK. Puteți descărca setul SDK din următoarele pagini: Microsoft .NET Framework Development Center și Microsoft Download Center. Acest program generează certificate X.509. Cheile publice și private create pentru semnătura digitală sunt stocate în fișierul certificatului. De asemenea, acest program asociază această pereche de chei cu editorul specificat și creează un certificat X.509 care leagă numele cheii publice de cheia publică.

Pentru a crea un certificat SSL pentru un server cu un nume de gazdă (MySQLServer), trebuie să executați programul MakeCert cu următorii parametri:

Comutatoare de linie de comandă

Creează un certificat auto-semnat. Un certificat cu auto-semnat este un certificat care nu este semnat de autoritatea de certificare. Deoarece nu este semnat de o autoritate de certificare, acest certificat poate fi folosit pentru criptare obligatorie pentru SSL, dar nu poate fi utilizată la autentificarea serverului.

Specifică numele serverului. Acest nume trebuie să fie conform cu standardul X.500. Cea mai simplă modalitate de a specifica un nume este să îl înscrieți în ghilimele duble și să puneți după CN =.







Specifică în certificat o listă de identificatori de obiecte (OID) separată prin virgulă pentru utilizarea extinsă a cheilor. SQL Server necesită un certificat SSL adecvat pentru autentificarea serverului și care are OID 1.3.6.1.5.5.7.3.1 (szOID_PKIX_KP_SERVER_AUTH).

Specifică depozitul de certificate în care este stocat certificatul generat. Este recomandat să-l stocați în mine. deși certificatul poate fi conținut în orice depozit.

Specifică depozitul de certificate în care se află certificatul și poate fi: currentuser (implicit) sau localmachine. Deoarece certificatul este creat pentru serviciu, acesta trebuie plasat pe computerul local.

Specifică tipul cheii de certificat. Acesta poate fi un tip de semnătură. schimb sau un număr întreg, de exemplu 4. Algoritmul de transfer al cheilor publice RSA necesită un tip de schimb. Se utilizează pentru criptarea și decriptarea cheilor de sesiune.

Specifică numele furnizorului CryptoAPI. Pentru certificatele SQL Server, acesta poate fi furnizorul de criptare Microsoft RSA SChannel.

Indică tipul furnizorului CryptoAPI. Dacă furnizorul este Microsoft RSA SChannel Encryption Provider. această valoare este de 12.

Opțiuni suplimentare pentru linia de comandă

Valoarea de dată în formatul DD / MM / AAAA, care indică începutul perioadei de valabilitate a certificatului. În mod implicit, aceasta este data la care a fost creat certificatul.

Valoarea de dată în format DD / MM / AAAA, care indică sfârșitul perioadei de valabilitate a certificatului. Cu excepția cazului în care se specifică altfel, certificatul expiră la 31.12.2039 la 11:59:59 GMT.

Următorul exemplu arată modul de creare a unui certificat utilizând programul MakeCert cu parametri suplimentari.

Hash-ul obținut prin rularea lui CertUtil. Aveți posibilitatea să treceți programul HttpCfg.exe pentru a înregistra un certificat auto-semnat.

Înainte de a executa MakeCert pentru a crea un certificat SSL auto-semnat și pentru a-l înregistrați prin Http.sys, verificați dacă IIS este instalat pe computer. Aceste servicii conțin un expert care facilitează înregistrarea certificatelor SSL. Dacă este instalată IIS pe computer, certificatul SSL poate fi deja înregistrat în Http.sys. În caz contrar, puteți utiliza expertul IIS pentru a crea și a înregistra un certificat.

Deoarece certificatele SSL sunt valabile pe întregul computer, nu contează că IIS a fost folosit pentru a înregistra certificatul SQL Server.

Când ștergeți o instanță a serverului SQL, toate legările de certificate SSL create cu Httpcfg.exe rămân, deci trebuie să le ștergeți manual. Deoarece programul de instalare SQL Server nu creează aceste opțiuni, nu le șterge. Prin urmare, atunci când ștergeți o instanță a serverului SQL, trebuie să eliminați și legările la certificatele SLL.

Deși utilizarea SSL peste HTTP în SQL Server nu necesită IIS, după instalarea acestuia cu instanța SQL Server, serviciul HTTP SSL devine asociat cu IIS. De exemplu, atunci când IIS se oprește folosind comanda net stop iisadmin, serviciul HTTP SSL se oprește de asemenea. În plus, după ce instalați Internet Information Services (IIS) sub Windows, nu puteți porni serviciul SSL HTTP fără a porni IIS (Inetinfo.exe).







Articole similare

Trimiteți-le prietenilor: