Autentificare proxy de bază pentru o cerere REST Assured
Folosiți ProxySpecification pentru adresa și contul intermediarului, păstrând configurația de încredere la clientul HTTPS.
REST Assured are o specificație de proxy care transportă împreună adresa și acreditările intermediarului:
import static io.restassured.RestAssured.given;
import io.restassured.specification.ProxySpecification;
var proxy = ProxySpecification.host("proxy.example")
.withPort(8080)
.withScheme("http")
.withAuth(proxyUser, proxyPassword);
var request = given().proxy(proxy);Aplicația furnizează proxyUser și proxyPassword din sursa sa obișnuită de acreditări. Fragmentul construiește o specificație de cerere; apelați URL-ul API dorit prin request cu codul obișnuit de cerere și verificare al testului.
Schema http descrie punctul final al proxy-ului. URL-ul API poate rămâne HTTPS. Mecanismul withAuth al REST Assured oferă autentificare proxy de bază; nu negociază fiecare schemă de autentificare corporate doar pentru că au fost furnizate două șiruri.
Plasați acreditările API în configurația de autentificare proprie a API-ului. Evitați înlocuirea contului proxy cu un antet Authorization generic sau cu o parolă de serviciu. În HTTPS, autentificarea la intermediar poate fi necesară la stabilirea CONNECT, înainte să existe schimbul HTTP cu destinația.
Când defecțiunea rămasă este încrederea în certificat
Un challenge CONNECT respins și o eroare de validare a certificatului TLS sunt rezultate diferite. Dacă autoritatea de certificare necesară, gestionată de organizație, lipsește din aranjamentul de încredere al clientului, obțineți-o prin canalul administrativ aprobat și configurați truststore-ul clientului de test.
REST Assured expune trustStore în acest scop. Un truststore schimbă ce emitenți are încredere clientul HTTPS; nu alege proxy-ul și nu furnizează autentificarea acestuia. Păstrați activată validarea numelui de gazdă și a certificatului în loc să folosiți un handshake accept-all pentru a accepta orice certificat prezentat.