Cum să gestionați certificatul SSL în Selenium WebDriver

Cuprins:

Anonim

Ce este certificatul SSL?

SSL (Secure Sockets Layer) este un protocol de securitate standard pentru stabilirea unei conexiuni sigure între server și client, care este un browser.

Certificatul SSL (Secure Socket Layer) asigură transformarea sigură a datelor de pe server și aplicația client utilizând standard de criptare puternic sau semnătură digitală. Trebuie să instalați un certificat SSL sau un certificat de semnare a codului.

În acest tutorial, veți învăța-

  • Ce este certificatul SSL?
  • Avantajele certificatului SSL
  • Cum creează certificatul SSL o conexiune securizată
  • Tipuri de certificate SSL
  • Cum sunt verificate certificatele SSL
  • Tipuri de erori de certificat SSL
  • Cum să gestionați eroarea certificatului SSL utilizând Selenium Webdriver
  • Gestionarea erorilor de certificat SSL în Firefox
  • Gestionarea erorilor de certificat SSL în Chrome
  • Gestionare erori certificate SSL în IE

Avantajele certificatului SSL

Există numeroase avantaje ale utilizării certificatului SSL, cum ar fi,

  • Se poate crește încrederea utilizatorilor și a clienților pentru a spori rapid creșterea afacerii
  • Aceste certificate ajută la securizarea tranzacțiilor online și a informațiilor sensibile ale clienților, cum ar fi datele cardului de credit / cardului de debit etc.
  • Certificatul de semnare tinde să obțină un număr maxim de descărcări și recenzii bune de la utilizatori.

Site-urile securizate SSL încep cu https: // și puteți vedea o pictogramă de blocare sau o bară de adrese verde dacă conexiunea este stabilită în siguranță.

De exemplu, dacă doriți să faceți o tranzacție prin net banking sau doriți să achiziționați un telefon mobil prin intermediul site-ului de comerț electronic, cum ar fi Flipkart sau Amazon.

Ce se întâmplă între browserul web și server

  1. Un browser încearcă să se conecteze cu un site securizat cu SSL. Browserul solicită serverului web să se identifice
  2. Serverul trimite browserului o copie a certificatului său SSL
  3. Browserul verifică dacă certificatul SSL este autentic. Dacă da, trimite un mesaj către server
  4. Serverul trimite înapoi o confirmare semnată digital pentru a începe o sesiune criptată SSL
  5. Datele criptate sunt partajate între server și browser

Procedând astfel, trebuie să transmiteți informații sensibile, cum ar fi numerele cardului de credit sau acreditările de conectare, care trebuie să transmită în siguranță, astfel încât să nu poată fi piratate sau interceptate.

De exemplu

  1. Tastați https://netbanking.hdfcbank.com/netbanking/ .
  2. Apăsați Enter.
  3. Veți vedea o bară de adrese verde în browser, după cum urmează: -

Cum creează certificatul SSL o conexiune securizată

  1. Browserul trimite cerere HTTPS către server.
  2. Acum, serverul trebuie să furnizeze o anumită identificare browserului pentru a dovedi că este de încredere. Acest lucru se poate face prin trimiterea unei copii a certificatului SSL către browser.
  3. Fiecare browser are propria listă de CA de încredere. Browserul verifică rădăcina certificatului în comparație cu lista sa de CA-uri de încredere și că certificatul este neexpirat, nerrevocat și că numele comun este valid pentru site-ul web la care se conectează.
  4. Dacă browserul are încredere în certificat, se creează o sesiune criptată între server și browser.
  5. Serverul și browserul pot trimite mesaje criptate

Tipuri de certificate SSL

Browserul și serverul utilizează mecanismul SSL Certificate pentru a putea stabili o conexiune sigură. Această conexiune implică verificarea a trei tipuri de certificate.

  • Rădăcină
  • Intermediar
  • Certificat de server

Procesul de obținere a certificatului SSL

Procesul de obținere a certificatului SSL include pașii de mai jos: -

  1. Mai întâi, trebuie să creați o solicitare CSR (creați o cerere de semnare a certificatului).
  2. Cererea CSR creează un fișier de date CSR, care este trimis către emitentul certificatului SSL cunoscut sub numele de CA (Autoritatea de certificare).
  3. CA utilizează fișierele de date CSR pentru a crea certificat SSL pentru serverul dvs.
  4. După primirea certificatului SSL, trebuie să îl instalați pe serverul dvs.
  5. Este necesar, de asemenea, să fie instalat un certificat intermediar care leagă certificatul dvs. SSL de certificatul rădăcină al CA.

Imaginea de mai jos reprezintă toate cele trei certificate - Root, Intermediate și Server Certificate.

Cum sunt verificate certificatele SSL

SSL funcționează printr-o combinație de programe și rutină de criptare / decriptare care există pe computerul serverului web și browserul serverului web.

Certificatul SSL conține practic informațiile de mai jos.

  1. Subiect care este identitatea proprietarului site-ului web.
  2. Informații de validitate - o cheie publică și una privată.

Cheia privată și cea publică sunt două chei criptografice (numere) legate în mod unic. Orice este criptat de o cheie publică poate fi decriptat numai de o cheie privată.

Când nu este stabilită o conexiune securizată între server și client din cauza certificatului, se va manifesta eroarea de certificat SSL.

Tipuri de erori de certificat SSL

Să presupunem că tastați o cerere https în browser și primiți un mesaj precum „Această conexiune nu este de încredere” sau „Certificatul de securitate al site-ului nu este de încredere”, în funcție de browserul pe care îl utilizați. Apoi, o astfel de eroare este supusă unei erori de certificat SSL.

Acum, dacă browserul nu este în măsură să stabilească o conexiune securizată cu certificatul solicitat, atunci browserul va lansa excepția „Conexiune de încredere” ca mai jos și va cere utilizatorului să ia măsurile corespunzătoare.

Este posibil ca tipurile de erori pe care probabil să le vedeți din cauza certificatului în diferite browsere

  1. FireFox - Această conexiune nu este de încredere
  1. Google Chrome - Securitatea acestui site nu este de încredere
  1. Internet Explorer (IE) - Acest certificat de securitate prezentat de acest site nu a fost de încredere de către o autoritate de certificare de încredere (CA)

Cum să gestionați eroarea certificatului SSL utilizând Selenium Webdriver

Să presupunem că am scris câteva scripturi de testare și, în timp ce executăm scriptul, ne-am prins în situația de mai sus „Conexiune de încredere”, cum putem gestiona excepția doar prin automatizare.

În acest caz, trebuie să ne ajustăm scriptul astfel încât să se ocupe de excepția SSL de la sine.

Scripturile trebuie modificate în funcție de tipul instanței de browser pe care o folosim. Acestea atunci când funcțiile dorite apar în imagine.

Capabilitățile dorite este utilizat pentru a configura instanța driverului Selenium Webdriver. Prin intermediul Capabilităților dorite, puteți configura toate instanțele driverului, cum ar fi ChromeDriver, FirefoxDriver și Internet Explorer.

Deocamdată nu avem nicio adresă URL specifică pentru a crea scenariul de mai sus, dar vă ofer pași pe care îi putem adăuga în Scriptul Selenium pentru a face față situației de mai sus „Conexiune de încredere”.

Gestionarea erorilor de certificat SSL în Firefox

Pentru gestionarea erorilor de certificat SSL în Firefox, trebuie să folosim capacitățile dorite ale Selenium Webdriver și să urmăm pașii următori.

Pasul 1) : Mai întâi trebuie să creăm un nou profil firefox, spuneți „profilul meu ”. Puteți consulta Google pentru a afla profilul „Cum să creați” Firefox. Este simplu și ușor.

Pasul 2) : Acum accesați myProfile în script ca mai jos și creați obiectul FirefoxProfile.

ProfilesIni prof = new ProfilesIni ()FirefoxProfile ffProfile = prof.getProfile ("MyProfile")

Pasul 3) : Acum trebuie să setăm proprietățile „ setAcceptUntrustedCertificates ” și „ setAssumeUntrustedCertificateIssuer ” în profilul Fire Fox.

ffProfile.setAcceptUntrustedCertificates (adevărat)ffProfile.setAssumeUntrustedCertificateIssuer (fals)

Pasul 4) : Acum utilizați profilul FireFox în obiectul driverului FireFox.

Driver WebDriver = nou FirefoxDriver (ffProfile) 

Notă : „setAcceptUntrustedCertificates” și „setAssumeUntrustedCertificateIssuer sunt capabilități de gestionare a erorilor de certificat din browserele web.

Gestionarea erorilor de certificat SSL în Chrome

Pentru gestionarea erorilor SSL în Chrome, trebuie să folosim capacitățile dorite ale Selenium Webdriver. Codul de mai jos vă va ajuta să acceptați toate certificatele SSL în Chrome, iar utilizatorul nu va primi nicio eroare legată de certificatul SSL folosind acest cod.

Trebuie să creăm instanța clasei DesiredCapabilities după cum urmează: -

DesiredCapabilities handlSSLErr = DesiredCapabilities.chrome ()handlSSLErr.setCapability (CapabilityType.ACCEPT_SSL_CERTS, adevărat)Driver WebDriver = nou ChromeDriver (handlSSLErr);

Gestionare erori certificate SSL în IE

Spre deosebire de gestionarea certificatelor SSL în browserul Chrome și Firefox, în IE, poate fi necesar să le gestionați folosind javascript.

Pentru a gestiona certificatul SSL în IE, puteți gestiona această situație în două moduri,

  1. În aceasta, veți face clic pe linkul „ Continuați cu acest site web (nu este recomandat)”. În cele ce urmează vom vedea cum să gestionăm eroarea SSL în IE.

Observați eroarea certificatului SSL în browserul IE, veți găsi linkul „Continuați cu acest site web (nu este recomandat)”. Acest link are ID „override link”. Puteți vizualiza ID-ul în modul HTML folosind F12

Faceți clic pe link folosind metoda driver.navigate () cu JavaScript după cum urmează: -

driver.navigate () .to ("javascript: document.getElementById ('overridelink'). click ()");
  1. A doua metodă este destul de similară cu codul SSL de manipulare cromat
Capabilități DesiredCapabilities = new DesiredCapabilities ();powers.setCapability (CapabilityType.ACCEPT_SSL_CERTS, adevărat);System.setProperty ("webdriver.ie.driver", "IEDriverServer.exe");Driver WebDriver = nou InternetExplorerDriver (capabilități);

Codul de mai sus vă va ajuta să gestionați eroarea certificatului SSL în IE.

Rezumat:

  • SSL (Secure Sockets Layer) este un protocol de securitate standard pentru stabilirea unei conexiuni sigure între server și client
  • Browserul și serverul utilizează mecanismul SSL Certificate pentru a putea stabili o conexiune sigură.
  • SSL funcționează printr-o combinație de programe și rutină de criptare / decriptare care există pe computerul serverului web și browserul serverului web.
  • Când nu este stabilită conexiunea sigură între server și client din cauza certificatului, va apărea o eroare de certificat SSL
  • Trebuie să ne reglați scriptul în așa fel încât să aibă grijă de excepția / eroarea SSL prin intermediul driverului Selenium Web.