Cara Menangani Sertifikat SSL di Selenium

Sertifikat SSL di Selenium

SSL (Secure Sockets Layer) adalah protokol keamanan standar untuk membangun koneksi aman antara server dan klien yang merupakan browser.

Sertifikat SSL (Secure Socket Layer) memastikan transformasi data yang aman di seluruh server dan aplikasi klien menggunakan standar enkripsi atau tanda tangan digital yang kuat. Kita harus menginstal sertifikat SSL atau sertifikat penandatanganan kode.

Manfaat Sertifikat SSL

Ada sejumlah manfaat menggunakan sertifikat SSL seperti,

  • Seseorang dapat meningkatkan kepercayaan pengguna dan pelanggannya untuk meningkatkan pertumbuhan bisnis dengan cepat
  • Sertifikat ini membantu mengamankan transaksi online dan informasi sensitif pelanggan seperti data kartu kredit/kartu debit, dll.
  • Penandatanganan sertifikat cenderung mendapatkan jumlah unduhan yang maksimal dan ulasan yang baik dari pengguna.

Situs web yang diamankan SSL dimulai dengan https://dan Anda dapat melihat ikon gembok atau bilah alamat hijau jika koneksi terjalin dengan aman.

Misalnya, jika Anda ingin melakukan transaksi melalui net banking atau ingin membeli a mobil telepon melalui situs e-commerce seperti Flipkart atau Amazon.

Apa yang terjadi antara Browser Web dan Server

  1. Browser mencoba terhubung dengan situs web yang diamankan dengan SSL. Browser meminta server web untuk mengidentifikasi dirinya
  2. Server mengirimkan browser salinan sertifikat SSL-nya
  3. Browser memverifikasi apakah sertifikat SSL asli. Jika demikian, ia mengirimkan pesan ke server
  4. Server mengirimkan kembali pengakuan yang ditandatangani secara digital untuk memulai sesi terenkripsi SSL
  5. Data terenkripsi dibagikan antara server dan browser

Untuk melakukannya, Anda perlu mengirimkan informasi sensitif seperti nomor kartu kredit atau kredensial login dan informasi tersebut harus dikirimkan dengan aman sehingga tidak dapat diretas atau disadap.

Misalnya

  1. Tipe https://netbanking.hdfcbank.com/netbanking/ .
  2. Tekan Enter.
  3. Anda akan melihat bilah alamat hijau di browser seperti di bawah ini :-

Manfaat Sertifikat SSL

Bagaimana Sertifikat SSL Membuat Koneksi Aman

Sertifikat SSL Buat Koneksi Aman

  1. Browser mengirimkan permintaan HTTPS ke server.
  2. Sekarang Server harus memberikan beberapa identifikasi ke Browser untuk membuktikan bahwa itu dapat dipercaya. Hal ini dapat dilakukan dengan mengirimkan salinan sertifikat SSL-nya ke browser.
  3. Setiap Browser memiliki daftar CA Tepercayanya sendiri. Browser memeriksa akar sertifikat terhadap daftar CA tepercaya dan bahwa sertifikat tersebut belum kedaluwarsa, belum dicabut, dan bahwa nama umum valid untuk situs web yang terhubung dengannya.
  4. Jika browser mempercayai sertifikat tersebut, sesi terenkripsi dibuat antara server dan browser.
  5. Server dan Browser dapat mengirim pesan terenkripsi

Jenis Sertifikat SSL

Browser dan server menggunakan mekanisme Sertifikat SSL untuk dapat membuat sambungan aman. Koneksi ini melibatkan verifikasi tiga jenis sertifikat.

  • Akar
  • Menengah
  • Sertifikat Server

Proses mendapatkan Sertifikat SSL

Proses mendapatkan sertifikat SSL meliputi langkah-langkah di bawah ini:-

  1. Pertama, Anda harus membuat permintaan CSR (buat Permintaan Penandatanganan Sertifikat).
  2. Permintaan CSR membuat file data CSR, yang dikirim ke penerbit sertifikat SSL yang dikenal sebagai CA (Certificate Authority).
  3. CA menggunakan file data CSR untuk membuat sertifikat SSL untuk server Anda.
  4. Setelah menerima sertifikat SSL, Anda harus menginstalnya di server Anda.
  5. Sertifikat perantara juga perlu dipasang yang mengikat sertifikat SSL Anda dengan sertifikat akar CA.

Gambar di bawah mewakili ketiga sertifikat- Sertifikat Root, Menengah, dan Server.

Proses mendapatkan Sertifikat SSL

Bagaimana sertifikat SSL diverifikasi

SSL bekerja melalui kombinasi program dan rutin enkripsi/dekripsi yang ada pada komputer server web dan browser server web.

Sertifikat SSL pada dasarnya berisi informasi di bawah ini.

  1. Subject yang merupakan identitas pemilik website.
  2. Informasi validitas- kunci publik dan pribadi.

Kunci Pribadi dan kunci publik adalah dua kunci kriptografi (angka) yang terkait secara unik. Apapun yang dienkripsi dengan kunci publik hanya dapat didekripsi dengan kunci pribadi.

Sertifikat SSL Diverifikasi

Bila koneksi aman tidak terjalin antara server dan klien berkat sertifikat, kesalahan sertifikat SSL berikut akan muncul.

Jenis Kesalahan Sertifikat SSL

Misalkan Anda mengetikkan beberapa permintaan https di browser dan mendapatkan pesan seperti “Koneksi ini Tidak Tepercaya” atau “Sertifikat keamanan situs tidak dipercaya” tergantung pada browser yang Anda gunakan. Maka kesalahan tersebut tunduk pada kesalahan sertifikat SSL.

Sekarang, jika browser tidak dapat membuat koneksi aman dengan sertifikat yang diminta, maka browser akan memunculkan pengecualian “Koneksi Tidak Tepercaya” seperti di bawah ini dan meminta pengguna untuk mengambil tindakan yang sesuai.

Jenis kesalahan yang mungkin Anda lihat karena sertifikat di browser yang berbeda mungkin seperti ini

  1. KebakaranFox - Koneksi ini tidak terpercaya
  1. Google Chrome -Keamanan situs ini tidak dipercaya
  1. Internet Explorer (IE) – Sertifikat keamanan yang disajikan oleh situs web ini tidak dipercaya oleh otoritas sertifikat (CA) tepercaya

Jenis Kesalahan Sertifikat SSL

Cara menangani Kesalahan Sertifikat SSL menggunakan Selenium Driver web

Misalkan kita telah menulis beberapa skrip pengujian dan saat menjalankan skrip tersebut, kita terjebak dalam situasi "Koneksi Tidak Tepercaya" di atas, lalu bagaimana kita menangani pengecualian hanya melalui otomatisasi.

Dalam kasus seperti itu, kita harus menyesuaikan skrip kita sedemikian rupa sehingga akan menangani Pengecualian SSL dengan sendirinya.

Script perlu dimodifikasi sesuai dengan jenis browser yang kita gunakan. Ini ketika kemampuan yang diinginkan muncul dalam gambaran.

Kemampuan yang Diinginkan digunakan untuk mengkonfigurasi instance driver Selenium driver web. Melalui Kemampuan yang Diinginkan, seseorang dapat mengonfigurasi semua contoh driver seperti ChromeDriver, FirefoxPengemudi, dan Internet Explorer.

Sampai sekarang kami tidak memiliki URL khusus untuk membuat skenario di atas, tetapi saya memberikan langkah-langkah yang dapat kami tambahkan di Selenium Script untuk menangani situasi di atas “Koneksi Tidak Tepercaya.”

Penanganan Kesalahan Sertifikat SSL di Firefox

Untuk menangani kesalahan sertifikat SSL di Firefox, kita perlu menggunakan kemampuan yang diinginkan Selenium Webdriver dan ikuti langkah-langkah berikut.

Langkah 1) Pertama kita perlu membuat profil firefox baru katakanlah “Profil saya“. Anda dapat merujuk ke Google untuk mempelajari “Cara membuat” profil Firefox. Sederhana dan mudah.

Langkah 2) Sekarang akses myProfile dalam skrip seperti di bawah ini dan buat FirefoxObjek profil.

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

Langkah 3) Sekarang kita perlu mengatur “setAcceptUntrustedCertificate"Dan"setAssumeUntrustedCertificateIssuer” sifat-sifat di dalam Api Fox profil.

ffProfile.setAcceptUntrustedCertificates(true) 
ffProfile.setAssumeUntrustedCertificateIssuer(false)

Langkah 4) Sekarang gunakan ApiFox profil di ApiFox objek pengemudi.

WebDriver driver = new FirefoxDriver (ffProfile)

Note: “setAcceptUntrustedCertificate” dan “setAssumeUntrustedCertificateIssuer" adalah kemampuan untuk menangani kesalahan sertifikat di browser web.

Penanganan Kesalahan Sertifikat SSL di Chrome

Untuk menangani kesalahan SSL di Chrome, kita perlu menggunakan kemampuan yang diinginkan Selenium driver web. Kode di bawah ini akan membantu untuk menerima semua sertifikat SSL di chrome, dan pengguna tidak akan menerima kesalahan terkait sertifikat SSL menggunakan kode ini.

Kita perlu membuat instance kelas DesiredCapabilities seperti di bawah ini:-

DesiredCapabilities handlSSLErr = DesiredCapabilities.chrome ()       
handlSSLErr.setCapability (CapabilityType.ACCEPT_SSL_CERTS, true)
WebDriver driver = new ChromeDriver (handlSSLErr);

Penanganan Kesalahan Sertifikat SSL di IE

Berbeda dengan penanganan sertifikat SSL di browser Chrome dan Firefox, di IE, Anda mungkin harus menanganinya menggunakan javascript.

Untuk menangani sertifikat SSL di IE, Anda dapat menangani situasi ini dengan dua cara,

  1. Di sini, Anda akan mengklik tautan “Lanjutkan ke situs ini (tidak disarankan)". Berikut ini kita akan melihat cara menangani kesalahan SSL di IE.

Amati kesalahan sertifikat SSL di browser IE Anda akan menemukan tautan “Lanjutkan ke situs web ini (tidak disarankan)”. Tautan ini memiliki ID “tautan ganti”. Anda dapat melihat ID dalam mode HTML menggunakan F12.

Penanganan Kesalahan Sertifikat SSL Di IE

Klik tautan menggunakan metode driver.navigate() dengan JavaNaskah seperti di bawah ini :-

driver.navigate ().to ("javascript:document.getElementById('overridelink').click()");
  1. Metode kedua sangat mirip dengan kode Penanganan SSL chrome
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
System.setProperty("webdriver.ie.driver","IEDriverServer.exe");
WebDriver driver = new InternetExplorerDriver(capabilities);

Kode di atas akan membantu menangani kesalahan sertifikat SSL di IE.

Kesimpulan

  • SSL (Secure Sockets Layer) adalah protokol keamanan standar untuk membangun koneksi aman antara server dan klien
  • Browser dan server menggunakan mekanisme Sertifikat SSL untuk dapat membuat sambungan aman.
  • SSL bekerja melalui kombinasi program dan rutin enkripsi/dekripsi yang ada pada komputer server web dan browser server web.
  • Ketika koneksi aman tidak terjalin antara server dan klien karena sertifikat, kesalahan sertifikat SSL akan terjadi
  • Perlu menyesuaikan skrip kita sedemikian rupa sehingga akan menangani Pengecualian/kesalahan SSL dengan sendirinya Selenium pengemudi web.