پروکسي ته ننوتل د لېږد د اعتبارنامې چمتو کوونکي پورې اړه لري. د Spring 6 او Apache HttpClient 5 لپاره، هغه حساب منځګړي ته محدود کړئ:

var proxy = new org.apache.hc.core5.http.HttpHost(
    "http", "proxy.example", 8080);
var credentials = new org.apache.hc.client5.http.impl.auth
    .BasicCredentialsProvider();
credentials.setCredentials(
    new org.apache.hc.client5.http.auth.AuthScope(proxy),
    new org.apache.hc.client5.http.auth.UsernamePasswordCredentials(
        proxyUser, proxyPassword.toCharArray()));

var http = org.apache.hc.client5.http.impl.classic.HttpClients.custom()
    .setProxy(proxy)
    .setDefaultCredentialsProvider(credentials)
    .build();
var factory = new org.springframework.http.client
    .HttpComponentsClientHttpRequestFactory(http);
var rest = new org.springframework.web.client.RestTemplate(factory);

اپلیکیشن د proxyUser او proxyPassword ارزښتونه برابروي او د HTTP کلاینټ د ژوند دوران مالک دی. د کار بار لپاره rest بیا وکاروئ، پرته له دې چې د زنګ په ځای کې بل ډیفالټ کالبوډ جوړ کړئ.

AuthScope محدودوي چې دا اعتبارنامې چېرته معتبرې دي. بېلګه عادي د کارن نوم/پټنځای اعتبارنامې برابروي؛ د BasicCredentialsProvider نوم هر ننګونې ته اړ نه کوي چې د HTTP Basic سکیم وکاروي.

د HTTPS منزل سره، لېږد کولای شي د CONNECT په جریان کې د پروکسي ننګونې ځواب ووايي، مخکې له دې چې د اپلیکیشن کوډ شوې HTTP غوښتنه شتون ولري. عمومي منزل انټرسیپټر چې Proxy-Authorization اضافه کوي له هغه خبرو اترو سره برابر نه دی.

هر د منزل حساب جدا جدا تنظیم کړئ. که پروکسي لاهم غوښتنه ردوي، د هغې اعلان شوې تصدیق سکیم او ریښتینی هوسټ او پورټ وساتئ. د بل پای ټکي لپاره محدودې اعتبارنامې به یوازې د دې لپاره چې پټنځای سم دی سمون ونه خوري.

اړوندې مقالې