REST Assured درخواست کے لیے بنیادی پراکسی توثیق
وسیط کے پتے اور اکاؤنٹ کے لیے ProxySpecification استعمال کریں، اور اعتماد کی ترتیب HTTPS کلائنٹ پر رکھیں۔
REST Assured میں ایک پراکسی تفصیل ہے جو وسیط کا پتہ اور اس کی اسناد اکٹھے لے کر چلتی ہے:
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);ایپلیکیشن proxyUser اور proxyPassword اپنے معمول کے اسناد کے ذریعے سے فراہم کرتی ہے۔ یہ ٹکڑا درخواست کی تفصیل بناتا ہے؛ مطلوبہ API URL کو request کے ذریعے ٹیسٹ کے معمول کے درخواست اور جانچ کوڈ سے کال کریں۔
http اسکیم پراکسی کے آخری نقطے کو بیان کرتی ہے۔ API URL HTTPS ہی رہ سکتا ہے۔ REST Assured کا withAuth طریقہ کار بنیادی پراکسی توثیق فراہم کرتا ہے؛ صرف دو سطریں دینے کی وجہ سے یہ ہر کارپوریٹ توثیقی اسکیم سے بات چیت نہیں کرتا۔
API اسناد کو API کی اپنی توثیق کی ترتیب میں رکھیں۔ پراکسی اکاؤنٹ کی جگہ عام Authorization ہیڈر یا سروس پاس ورڈ استعمال کرنے سے گریز کریں۔ HTTPS میں، CONNECT قائم کرتے وقت، منزل کے ساتھ HTTP تبادلہ ہونے سے پہلے ہی وسیط کے ساتھ توثیق درکار ہو سکتی ہے۔
جب باقی ناکامی سرٹیفکیٹ پر اعتماد ہو
مسترد شدہ CONNECT چیلنج اور TLS سرٹیفکیٹ کی توثیق میں خرابی مختلف نتائج ہیں۔ اگر مطلوبہ تنظیمی زیرِ انتظام CA کلائنٹ کی اعتماد ترتیب میں موجود نہ ہو، تو اسے منظور شدہ انتظامی ذریعے سے حاصل کریں اور ٹیسٹ کلائنٹ کا truststore ترتیب دیں۔
REST Assured اس مقصد کے لیے trustStore فراہم کرتا ہے۔ truststore بدلتا ہے کہ HTTPS کلائنٹ کن جاری کنندگان پر اعتماد کرتا ہے؛ یہ پراکسی منتخب نہیں کرتا اور نہ اس کا لاگ ان دیتا ہے۔ پیش کیے گئے کسی بھی سرٹیفکیٹ کو قبول کرنے کے لیے accept-all مصافحہ استعمال کرنے کے بجائے ہوسٹ نام اور سرٹیفکیٹ کی توثیق فعال رکھیں۔