Autenticación básica de proxy para unha solicitude REST Assured
Use ProxySpecification para o enderezo e a conta do intermediario, e manteña a configuración de confianza no cliente HTTPS.
REST Assured ten unha especificación de proxy que leva xuntos o enderezo e as credenciais do intermediario:
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);A aplicación fornece proxyUser e proxyPassword desde a súa fonte habitual de credenciais. O fragmento constrúe unha especificación de solicitude; invoque o URL da API desexada mediante request co código habitual de solicitude e aserción da proba.
O esquema http describe o punto de conexión do proxy. O URL da API pode seguir sendo HTTPS. O mecanismo withAuth de REST Assured fornece autenticación básica de proxy; non negocia todos os esquemas de autenticación corporativos só porque se fornecesen dúas cadeas.
Coloque as credenciais da API na configuración de autenticación propia da API. Evite substituír a conta do proxy por unha cabeceira Authorization xenérica ou por un contrasinal de servizo. En HTTPS, a autenticación co intermediario pode ser necesaria ao establecer CONNECT, antes de que exista o intercambio HTTP co destino.
Cando o fallo restante é a confianza no certificado
Un desafío CONNECT rexeitado e un erro de validación do certificado TLS son resultados distintos. Se o CA requirido e xestionado pola organización falta na configuración de confianza do cliente, obteña ese CA pola canle administrativa aprobada e configure o truststore do cliente de probas.
REST Assured expón trustStore para ese propósito. Un truststore cambia que emisores confía o cliente HTTPS; non escolle o proxy nin fornece o seu inicio de sesión. Manteña activa a validación do nome de host e do certificado en lugar de usar un handshake accept-all para aceptar calquera certificado que se presente.