Hogyan kell kezelni az SSL-tanúsítványt Selenium
⚡ Okos összefoglaló
SSL-tanúsítványhibák leállítják a Selenium teszteli azt a pillanatot, amikor egy böngésző elutasít egy nem megbízható vagy lejárt tanúsítványt, így minden WebDriver szkriptnek szüksége van egy böngészőspecifikus képességre, amely elfogadja a tanúsítványt, és lehetővé teszi az automatizálás folytatását.
SSL tanúsítvány be Selenium
Az SSL (Secure Sockets Layer) egy szabványos biztonsági protokoll, amely biztonságos kapcsolatot létesít a szerver és a kliens, azaz egy böngésző között.
Az SSL-tanúsítvány erős titkosítással és digitális aláírással védi a szerver és a kliensalkalmazás között mozgó adatokat. A webhely tulajdonosa vagy SSL-tanúsítványt, vagy kódaláíró tanúsítványt telepít.
Az SSL-tanúsítvány előnyei
Az SSL-tanúsítvány használatának számos előnye van, mint pl.
- Növelni lehet a felhasználók és az ügyfelek bizalmát az üzlet gyors növekedése érdekében
- Ezek a tanúsítványok segítenek az online tranzakciók és az ügyfelek érzékeny információinak, például hitelkártya-/bankkártya-adatainak védelmében.
- A tanúsítvány aláírásakor a legtöbb letöltést és jó értékelést kapnak a felhasználók.
Az SSL-védett webhelyek ezzel kezdődnek https:// és egy lakat ikon vagy zöld címsor látható, ha a kapcsolat biztonságosan létrejött.
Például, ha netbankon keresztül szeretne valamilyen tranzakciót végrehajtani, vagy vásárolni szeretne a Mobil telefonon e-kereskedelmi webhelyen keresztül, például Flipkart vagy Amazon.
Mi történik a webböngésző és a szerver között
- A böngésző megpróbál csatlakozni egy SSL-lel védett webhelyhez. A böngésző kéri a webszervert, hogy azonosítsa magát
- A szerver elküldi a böngészőnek az SSL-tanúsítvány másolatát
- A böngésző ellenőrzi, hogy az SSL-tanúsítvány eredeti-e. Ha igen, akkor üzenetet küld a szervernek
- A szerver digitálisan aláírt visszaigazolást küld az SSL-titkosított munkamenet elindításához
- A titkosított adatokat a szerver és a böngésző megosztja
A kártyaszámok és a bejelentkezési adatok továbbításra kerülnek ezen a munkameneten keresztül, így az adatcserének végig titkosítva kell maradnia, és nem lehet lehallgatni.
Például az alábbi lakat és címsor megerősíti, hogy a tanúsítványt elfogadták.
- típus https://netbanking.hdfcbank.com/netbanking/ .
- Enter leütése.
- Egy zöld címsort fog látni a böngészőben az alábbiak szerint: -
Hogyan hoz létre az SSL-tanúsítvány biztonságos kapcsolatot?
Az alábbi ábra traca kézfogást, és az azt követő számozott lépések elmagyarázzák az egyes cseréket.
- böngésző HTTPS kérést küld a szervernek.
- Most a kiszolgálónak bizonyos azonosítást kell adnia a böngészőnek, hogy igazolja, hogy megbízható. Ezt úgy teheti meg, hogy elküldi az SSL-tanúsítvány másolatát a böngészőnek.
- Minden böngészőnek saját listája van a megbízható hitelesítésszolgáltatókról. A böngésző ellenőrzi a tanúsítvány gyökerét a megbízható hitelesítésszolgáltatók listáján, és ellenőrzi, hogy a tanúsítvány lejárt-e, nincs-e visszavonva, és hogy a közös név érvényes-e arra a webhelyre, amelyhez csatlakozik.
- Ha a böngésző megbízik a tanúsítványban, titkosított munkamenet jön létre a szerver és a böngésző között.
- A szerver és a böngésző titkosított üzeneteket küldhet
Az SSL tanúsítványtípusok
A böngésző és a szerver SSL-tanúsítvány-mechanizmust használ a biztonságos kapcsolat létrehozásához. Ez a kapcsolat három típusú tanúsítvány ellenőrzését foglalja magában.
- Gyökér
- Közbülső
- Szerver tanúsítvány
Az SSL-tanúsítvány megszerzésének folyamata
Az SSL-tanúsítvány megszerzésének folyamata a következő lépéseket tartalmazza: -
- Először is létre kell hoznia a CSR-kérelmet (Certificate Signing Request).
- A CSR-kérés CSR-adatfájlt hoz létre, amelyet elküld a CA (Certificate Authority) néven ismert SSL-tanúsítvány-kibocsátónak.
- A CA a CSR-adatfájlok segítségével hozza létre az SSL-tanúsítványt a kiszolgáló számára.
- Miután megkapta az SSL-tanúsítványt, telepítenie kell azt a szerverére.
- Telepíteni kell egy köztes tanúsítványt is, amely összekapcsolja az Ön SSL-tanúsítványát a CA gyökértanúsítványával.
Az alábbi képen mindhárom tanúsítvány látható. Gyökér-, középszintű és szervertanúsítvány.
Az SSL-tanúsítványok ellenőrzésének módja
Az SSL a webszerver számítógépén és a webszerver böngészőjén található programok és titkosítási/visszafejtési rutin kombinációján keresztül működik.
Az SSL-tanúsítvány alapvetően az alábbi információkat tartalmazza.
- Tárgy, amely a webhely tulajdonosának személyazonossága.
- Érvényességi információ – nyilvános és privát kulcs.
A privát és a nyilvános kulcs két egyedileg összefüggő kriptográfiai kulcs (szám). A nyilvános kulccsal titkosított adatokat csak privát kulccsal lehet visszafejteni. A böngésző ezeket a mezőket jeleníti meg a tanúsítvány ellenőrzésekor, az alábbiak szerint.
Ha a tanúsítvány miatt nem jön létre biztonságos kapcsolat a szerver és az ügyfél között, a következő SSL-tanúsítványhiba jelenik meg.
Az SSL-tanúsítvány-hibák típusai
Tegyük fel, hogy beír egy https kérést, és a böngésző a következő válaszsal válaszol: „Ez a kapcsolat nem megbízható” vagy „A webhely biztonsági tanúsítványa nem megbízható”. A böngésző nem tudott biztonságos kapcsolatot létesíteni a bemutatott tanúsítvánnyal, ezért leáll, és a felhasználót a megfelelő művelet megtételére kéri.
A különböző böngészőkben a tanúsítványok miatt előforduló hibatípusok hasonlóak lehetnek
- természetFox - Ez a kapcsolat nem megbízható
- Google Chrome – Ennek az oldalnak a biztonsága nem megbízható
- Internet Explorer (IE) – A webhely által bemutatott biztonsági tanúsítványt egy megbízható tanúsító hatóság (CA) nem bízta meg
Az alábbi képernyőkép egy nem megbízható tanúsítvány által létrehozott közbeiktatott ablakot mutat.
Az SSL-tanúsítványhiba kezelése a használatával Selenium Webdriver
Tegyük fel, hogy a tesztszkript eléri a fenti „Nem megbízható kapcsolat” oldalt. A szkriptet úgy kell módosítani, hogy az SSL kivételt magától, pusztán a következőn keresztül kezelje automatizálás.
A változás a használt böngészőpéldánytól függ, és itt jönnek képbe a kívánt képességek. A kívánt képességek a következő illesztőprogram-példányát konfigurálják: Selenium Webdriver, beleértve a ChromeDrivert is, FirefoxIllesztőprogram és Internet Explorer.
Az alábbi lépések hozzáadhatók egy Selenium szkriptet a „Nem megbízható kapcsolat” állapot törléséhez minden böngészőben.
⚠️ Selenium 4-os megjegyzés: A DesiredCapabilities osztályt eltávolították a következőben: Selenium 4. A böngésző Beállítások osztályai mostantól ugyanazt a beállítást egyetlen W3C-képességen keresztül tartalmazzák, elfogadja az InsecureCerts-et.
| böngésző | Selenium 4 osztály | Hívás |
|---|---|---|
| króm | ChromeOptions | setAcceptInsecureCerts(true) |
| Firefox | FirefoxOpciók | setAcceptInsecureCerts(true) |
| él | EdgeOptions | setAcceptInsecureCerts(true) |
| Safari | Javascriptvégrehajtó | ideiglenes megkerülő szkript |
ChromeOptions options = new ChromeOptions(); options.setAcceptInsecureCerts(true); WebDriver driver = new ChromeDriver(options);
SSL-tanúsítvány-hibakezelés Firefox
Az SSL-tanúsítványhiba kezeléséhez Firefox, használnunk kell a kívánt képességeket Selenium Webdriver, és kövesse az alábbi lépéseket.
Step 1) Először is létre kell hoznunk egy újat Firefox profilok mondd „a profilom".
Step 2) Most nyissa meg a myProfile-t a szkriptben az alábbiak szerint, és hozza létre a FirefoxProfil objektum.
ProfilesIni prof = new ProfilesIni() FirefoxProfile ffProfile= prof.getProfile ("myProfile")
Step 3) Most be kell állítanunk a „setAcceptUntrustedCertificates” és a „setAssumeUntrustedCertificateIssuer” tulajdonságokat a Fire felületen. Fox profil.
ffProfile.setAcceptUntrustedCertificates(true) ffProfile.setAssumeUntrustedCertificateIssuer(false)
Step 4) Most használja a TüzetFox profil a TűzbenFox vezető objektum.
WebDriver driver = new FirefoxDriver (ffProfile)
Jegyzet: "setAcceptUntrustedCertificates"És"setAssumeUntrustedCertificateIssuer„olyan képességek, amelyekkel kezelni lehet a tanúsítványhibákat a webböngészőkben.”
⚠️ Verzió megjegyzés: a fenti profil alapú kód céljai Selenium 2 és Selenium 3. Tovább Selenium 4. Egy profil rögzítve van FirefoxOpciók, és Firefox alapértelmezés szerint elfogadja a nem biztonságos tanúsítványokat.
SSL-tanúsítványhiba-kezelés a Chrome-ban
A Chrome-ban az SSL-hibák kezeléséhez az alábbi DesiredCapabilities objektum minden SSL-tanúsítványt elfogad, így a felhasználó nem lát tanúsítványfigyelmeztetést a futás során.
Létre kell hoznunk a DesiredCapabilities osztály példányát az alábbiak szerint: -
DesiredCapabilities handlSSLErr = DesiredCapabilities.chrome () handlSSLErr.setCapability (CapabilityType.ACCEPT_SSL_CERTS, true) WebDriver driver = new ChromeDriver (handlSSLErr);
⚠️ Verzió megjegyzés: A CapabilityType.ACCEPT_SSL_CERTS a régi JSON Wire Protocolhoz tartozik. Futtatáskor cserélje le a korábban látható ChromeOptions kódrészletre. Selenium 4.
SSL-tanúsítvány-hibakezelés az IE-ben
Ellentétben az SSL-tanúsítványok kezelésével a Chrome böngészőben és Firefox, IE-ben előfordulhat, hogy a következővel kell kezelnie: javascript.
Az SSL tanúsítvány IE-ben történő kezeléséhez kétféleképpen kezelheti ezt a helyzetet.
1. módszer) Kattintson a „Tovább erre a weboldalra (nem ajánlott)” linkre a közbeiktatott ablakban. A link azonosítója „overridelink”, amelyet az F12 billentyűvel megnyitott HTML panelen megerősíthet, ahogy az alábbi képernyőképen is látható.
Kattintson a hivatkozásra a driver.navigate() metódussal JavaA szkript az alábbiak szerint: -
driver.navigate ().to ("javascript:document.getElementById('overridelink').click()");
2. módszer) A második módszer meglehetősen hasonló a króm SSL kezelőkódjához.
DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true); System.setProperty("webdriver.ie.driver","IEDriverServer.exe"); WebDriver driver = new InternetExplorerDriver(capabilities);
A fenti kód segít kezelni az SSL tanúsítvány hibáját az IE-ben.
⚠️ Verzió megjegyzés: Az Internet Explorer 11-et 2022 júniusában kivonták a forgalomból. Futtassa le ugyanezt a forgatókönyvet a következővel: Microsoft Edge az EdgeOptions segítségével, vagy vezesse az Edge-et IE módban, ahol egy régebbi alkalmazásnak továbbra is szüksége van rá.





